999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

TWI總線模塊化設計在智能機器人中的應用

2013-09-21 10:44:02顧星辰胡仁杰馬智勇
單片機與嵌入式系統應用 2013年1期
關鍵詞:模塊化單片機程序

顧星辰,胡仁杰,馬智勇

(東南大學 電氣工程學院,南京 210096)

引 言

模塊化設計的機器人系統由主控制模塊和擴展模塊構成,主要用于檢測機器人周圍環境信息和機器人自身運動狀態,實時獲取各種傳感器信息,并對機器人運動進行控制。由于要采集的數據信息很多,本系統應用了TWI總線構建模塊化架構,模塊均采用AVR單片機為主控芯片:1片 ATmega128(主控)、10片 ATmega16、2片 AT-mega64和3片ATmega8。主控制器要實時地匯總并分析各單片機的信息才能對機器人下一步動作作出決策,因此,各單片機之間的通信顯得尤為重要。另外,為了方便對電子羅盤進行標定,需要由主控制器向電子羅盤模塊發送相應指令。也就是說,主控制模塊與擴展模塊之間需要實現雙向多字節通信,這是一個通信難點。本系統全部模塊均采用TWI通信接口,成功建立了一個主機與多個從機之間的雙向多字節通信,有效提高了程序的運行效率,使得智能機器人整體架構靈活,調試方便,并且擴展性強。

1 TWI總線簡介

TWI總線是對I2C總線的繼承與發展,具有I2C總線的特點,即接線簡單。外部硬件只需兩個上拉電阻,使用兩根雙向傳輸線(一是時鐘線SCL,一是數據線SDA)就可以將128個不同的設備互連到一起。[1]TWI對I2C總線的發展表現在:它定義了自己的功能模塊和寄存器,寄存器各位功能的定義與I2C總線并不相同,且TWI總線引入了狀態寄存器,從而在操作和使用上比I2C總線更靈活。[2]兩線接口TWI很適合于典型的處理器應用,以及多機間實時通信的應用。[3]

TWI通信接口簡單,但是強大而靈活。支持主機和從機操作,器件可以工作于發送器模式或接收器模式。數據傳輸率高達400kHz,且支持多主機仲裁。所有連接到總線上的設備都有自己的地址,TWI協議解決了總線仲裁的問題,[4]7位地址信息允許有128個從機。基于以上優點,TWI通信接口非常適合應用于微控制器(俗稱單片機)系統。[5]

2 智能機器人系統的模塊化結構

本機器人系統以ATmega128單片機為主控制模塊,擴展模塊包括2個紅外傳感器模塊、6個超聲波模塊、2個視覺處理模塊、1個溫度傳感器模塊、2個里程計模塊、1個電子羅盤模塊,以及1個陀螺儀模塊。擴展模塊負責采集相應的數據信息,由主控制器進行處理分析。然后,及時地對機器人下一步動作進行決策與指示。本系統的模塊化結構圖如圖1所示。其中,超聲波模塊、視覺處理模塊、電子羅盤模塊和陀螺儀模塊均采用ATmega16單片機,里程計模塊采用ATmega64單片機,紅外傳感器模塊和溫度傳感器模塊采用ATmega8單片機。主控制模塊與各擴展模塊均采用TWI接口。

圖1 智能機器人系統的模塊化結構圖

3 模塊化智能機器人系統的TWI總線結構

TWI可以工作于4種不同的模式:主機發送器(MT)、主機接收器(MR)、從機發送器(ST)及從機接收器(SR)。同一應用程序可以使用幾種模式。[6]本機器人系統中,ATmega128為主機,其他單片機均為從機設備。目的是實現主機與多片從機之間的雙向通信,即主機可以發送多字節數據給從機設備,從機也可以發送多字節數據給主機。TWI的兩根線在工作時必須有上拉電阻,既可以通過相關程序使能內部的上拉電阻,也可以在硬件設計時增加上拉電阻。實際應用中,最好軟硬件的方法同時使用,雙重保障。圖2為TWI總線的硬件結構接線圖。

圖2 TWI總線的硬件結構接線圖

4 TWI通信的軟件設計

4.1 主機的軟件設計

本系統中,主機ATmega128采用輪詢TWINT位的方式。主機主程序中的系統初始化主要包括定時器初始化和TWI總線初始化。主機主程序中寫函數TWI_write()的詳細流程如圖3所示,讀函數TWI_read()的詳細流程如圖4所示。一次傳輸過程包括一個START信號、一個SLA+R/W信號、一個或多個數據包、一個STOP信號。每發送一個信號或一個數據包,均要檢驗狀態寄存器TWSR中的狀態碼,如果狀態碼正確,才發下一個信號,若不正確則轉出錯處理。通過軟件編程技巧,可以在一次TWI通信中,實現主機與從機之間的多字節數據傳輸。同時,在主機主程序流程圖中可以看到,在一個循環內,可以實現主機與從機之間的雙向數據傳輸。

圖3 主機發送函數流程圖

圖4 主機接收函數流程圖

4.2 從機的軟件設計

對于所有從機,均采用中斷方式。采用中斷方式時,當TWINT位置位(硬件置位),則程序會自動跳到中斷向量,執行中斷服務程序。在等待TWINT置位期間,從機可以執行數據采集工作或執行其他程序,從而有效地提高了程序的運行效率。中斷服務程序中,只需檢驗TWSR的狀態碼,讀取或寫入數據寄存器TWDR,這樣來完成與主機的數據通信。從機TWI中斷服務程序流程圖如圖5所示。

對于不同的從機,硬件方面需要注意的是SCL、SDA兩根線位于單片機的I/O端口不同,例如ATmega16的SCL、SDA 分別位于 PC0、PC1[7];ATmega8的SCL、SDA則分別位于PC5、PC4[8]。軟件方面,需要給不同從機的TWAR賦予各自的從機地址。

圖5 從機TWI中斷服務程序流程圖

4.3 TWI總線的部分程序

為了增強程序的可讀性,將各種模式所需的TWI總線狀態進行宏定義。對于主機,省略一些數據處理和其他功能程序,最簡化的主程序如下:

對于從機,重要的是TWI中斷服務程序,詳見以下代碼:

5 TWI通信的注意問題

由于TWI通信存在主機與從機模塊,在單獨對主機程序單步調試時,主機單步運行,而從機處于全速運行,主從機步調不一致,單步調試結果顯示TWINT位不置位或者TWSR狀態碼不正確,誤認為程序有問題。實際上,程序在全速運行時是可以實現通信的。

另外,根據功能要求,在一次TWI通信中,例如要求主機給從機發送數據的字節數是1字節或2字節,此時,在從機中斷接收中,需增加相應接收標志位flag1、flag2,通過各自的標志位分清接收的不同字節的數據,避免產生不必要的混淆與錯誤。

編程中,要嚴格按照TWI說明手冊中的內容,不同的TWSR狀態碼時,對TWDR執行相應的操作,對TWCR寫入相應的數值。否則,有一點出入,都會造成TWI通信的失敗。

結 語

本智能機器人系統采用TWI總線構建了模塊化架構,優點是系統靈活、擴展性強。TWI通信方法是主機ATmega128器件程序采用查詢方式,其他多片從機器件程序則采用中斷方式。本文介紹了在一次TWI傳輸過程中,傳送多字節數據的編程方法,并且建立了主機與多從機之間的雙向多字節數據通信,可以將機器人各傳感器模塊采集到的數據實時發送至主控制器進行處理,有效地提高了程序的運行效率。

[1] 郭祥軍.AVR單片機的TWI總線的原理及應用[J].單片機與嵌入式系統應用,2006(8):37-39.

[2] 劉千杰.AVR單片機中TWI的模塊化檢測系統設計[J].單片機與嵌入式系統應用,2011(2):39-41.

[3] 肖晶晶,李天劍,吳啟焱.基于TWI接口的AVR單片機通信系統設計[J].北京信息科技大學學報:自然科學版,2009(4).

[4] Atmel.ATmega128Datasheet,2011.

[5] 馬惠鋒,韓震宇.AVR單片機TWI通信接口在廣播機微控制器中的應用[J].中國測試技術,2005(2):98-100.

[6] 楚天鵬,鄭華耀.TWI接口多機通信的實現[J].裝備制造技術,2008(6):96-98.

[7] Atmel.ATmega16Datasheet,2010.

[8] Atmel.ATmega8Datasheet,2011.

猜你喜歡
模塊化單片機程序
模塊化自主水下機器人開發與應用
模塊化住宅
現代裝飾(2020年5期)2020-05-30 13:01:56
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
ACP100模塊化小型堆研發進展
中國核電(2017年2期)2017-08-11 08:00:56
模塊化VS大型工廠
流程工業(2017年4期)2017-06-21 06:29:50
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
主站蜘蛛池模板: 999国内精品久久免费视频| 亚洲欧美日韩另类| 无码福利视频| 草逼视频国产| 亚洲欧美日韩视频一区| 91偷拍一区| 狠狠做深爱婷婷综合一区| 国产女人18毛片水真多1| 色网站免费在线观看| 亚洲欧洲日韩久久狠狠爱 | 五月婷婷导航| 日韩av高清无码一区二区三区| 欧美成人在线免费| 国产福利在线观看精品| 永久免费无码日韩视频| 五月六月伊人狠狠丁香网| 亚洲欧美一区二区三区麻豆| 免费A级毛片无码免费视频| 日韩欧美国产三级| 国产精品亚洲va在线观看 | 中文字幕资源站| 国产毛片不卡| 在线观看免费人成视频色快速| 国产鲁鲁视频在线观看| 91精选国产大片| 狠狠色丁香婷婷| 国产福利免费视频| 丰满人妻久久中文字幕| 国产农村1级毛片| 无码专区在线观看| 伊人久久婷婷五月综合97色| 67194成是人免费无码| 欧美一级夜夜爽| 国产精品久久自在自2021| 欧美亚洲一区二区三区在线| 黄色网页在线观看| 精品视频一区二区观看| 国产欧美日韩视频怡春院| 9cao视频精品| 国产一区三区二区中文在线| 超清无码一区二区三区| 午夜在线不卡| 亚洲高清中文字幕| 国产日韩欧美成人| 亚洲AV色香蕉一区二区| 18禁色诱爆乳网站| 在线观看无码av免费不卡网站| 香蕉综合在线视频91| 最新亚洲人成无码网站欣赏网| 91小视频在线观看免费版高清| 香蕉国产精品视频| 国产性爱网站| 国产网站免费观看| 奇米精品一区二区三区在线观看| 97色婷婷成人综合在线观看| 亚洲国产清纯| 中文字幕av无码不卡免费| 久青草国产高清在线视频| 久久夜夜视频| 亚洲精品国产首次亮相| 久久特级毛片| 男人天堂亚洲天堂| 99er这里只有精品| 亚洲视频四区| 色色中文字幕| 日韩一级毛一欧美一国产| 亚洲天堂网在线播放| 亚洲欧洲自拍拍偷午夜色无码| 亚洲美女一区二区三区| www.av男人.com| 亚洲精品日产精品乱码不卡| 国产精品一线天| 99精品免费在线| 欧美成人aⅴ| 精品人妻系列无码专区久久| 亚洲男人的天堂久久精品| 四虎国产永久在线观看| 天堂成人av| 亚洲精品大秀视频| 亚洲第一天堂无码专区| 蜜芽国产尤物av尤物在线看| 午夜福利在线观看成人|