資源描述:
《關(guān)于藍(lán)牙 NXT LEGO 藍(lán)牙協(xié)議總攬.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、飛NXT硬件規(guī)格LEGOMINDSTORMSNXT利用各種先進(jìn)的電了設(shè)備以實(shí)現(xiàn)廣泛的功能。想了解齊種細(xì)節(jié)的話,請(qǐng)參看LEGOMINDSTORMSNXT?件開發(fā)丁具包文檔。下面是一個(gè)NXT硬件規(guī)格的摘要列表:主處理器Atmel32位ARM處理器:AT91SAM7S256-256KB閃存-64KB內(nèi)存-48MHz協(xié)處理器Atmel8位AVR處理器:ATmega48-4KB閃存-512Byte內(nèi)存-8MHz藍(lán)牙無線通信CSRBlueCoreTM4v2.0+EDRSystem?支持串口(SPP)■內(nèi)部47KByte內(nèi)存■
2、外部8MBit閃存-26MHzUSB2.0通信全速端口(12Mbit/s)4個(gè)輸入端口6線接口,同時(shí)支持?jǐn)?shù)字和模擬接口個(gè)高速端口,IEC61158型4/EN50170標(biāo)準(zhǔn)3個(gè)輸出端口6線接口,支持編碼器輸入顯示100x64像素的黑白液晶圖形顯示■查看面積26x40.6mm揚(yáng)聲器聲道音頻輸出8位分辨率?支持采樣率2?16千赫4按鈕用戶界面橡膠按鍵電源6節(jié)AA電池■推薦堿性電池?可充電鋰電池1400亳安接口6線工業(yè)標(biāo)準(zhǔn)接口,RJ12右側(cè)調(diào)整二、NXT藍(lán)牙功能NXT通過CSRBlueCoreTM4v2.0芯片實(shí)現(xiàn)無線藍(lán)
3、牙通信。NXT可同時(shí)與3臺(tái)設(shè)備建立連接,但只能一次與一臺(tái)交流。此功能已使用SPP(串行端口傳輸協(xié)議),可被認(rèn)為是無線串行端口。NXT可以與支持NXT通訊協(xié)議指令編程并支持SPP的藍(lán)牙設(shè)備通信。這使得NXT間可以發(fā)送稈序和聲音文件,而且在稈序執(zhí)行過稈屮也可利用無線通信在NXT和NXTZ間發(fā)送和接收信息。為了減小藍(lán)牙功耗,這里用的是藍(lán)牙2類設(shè)備,也就意味著有效距離最大10米。NXTBRICK藍(lán)牙功能NXTBRICK藍(lán)牙功能被設(shè)置為主/從通信通道。也就是說網(wǎng)絡(luò)屮需要有一臺(tái)NXT作為主機(jī),在需要時(shí),其他NXT再通過它通信
4、。下血的圖表表明在網(wǎng)絡(luò)小哪些NXT設(shè)備可以直接通信。如上所示,主機(jī)可以同時(shí)與其他3臺(tái)藍(lán)牙設(shè)備連接。在一個(gè)特定的時(shí)刻,主機(jī)只能與一臺(tái)從機(jī)通信,也就是說,如果主機(jī)正與1號(hào)從機(jī)通信時(shí),3號(hào)從機(jī)開始向主機(jī)發(fā)送數(shù)據(jù),主機(jī)在轉(zhuǎn)換到3號(hào)前不會(huì)處理接收到的數(shù)據(jù)。一臺(tái)NXT不能同時(shí)作為主機(jī)和從機(jī),因?yàn)檫@樣會(huì)導(dǎo)致NXT設(shè)備間的數(shù)據(jù)丟失。這一功能已在NXT標(biāo)準(zhǔn)間件屮被禁用。通過不同通道與其他藍(lán)牙設(shè)備連接。NXT有4個(gè)連接通道來跡行藍(lán)牙通信。0通道通常用來讓從機(jī)與主機(jī)通信(向主機(jī)方向)而1,2,3通道用來讓主機(jī)與從機(jī)通信。在Z前的圖屮,
5、當(dāng)主機(jī)分別與從機(jī)1,2,3通信時(shí)就會(huì)用到通道1,2,3。當(dāng)某個(gè)從機(jī)要與主機(jī)通信時(shí)就會(huì)用到通道0。三、BLUECORE芯片接口NXT屮的藍(lán)牙功能是由獨(dú)立芯片實(shí)現(xiàn)的,帶有8M閃存的CSRBlueCore4芯片亠CSR的藍(lán)牙芯片屮包含了處理集成藍(lán)牙節(jié)點(diǎn)的所有必需的駛件。被稱為Bluelab的能處理由CSR實(shí)現(xiàn)的藍(lán)牙堆棧的16位處理器。NXT用的是Bluelab3.2版本。BlueCore芯片的固件中整合了可用戶編程的虛擬機(jī)任務(wù),使我們可以控制和運(yùn)行一些代碼少的應(yīng)用稈序。虛擬機(jī)屮整合了命令翻譯,可以對(duì)通過ARM7處理器U
6、ART接口接收的命令講行解譯并做出反應(yīng)。虛擬機(jī)對(duì)藍(lán)牙SPP-A和SPP-B配置都有一個(gè)全面實(shí)施。當(dāng)木地BlueCore是連接發(fā)起者時(shí)用SPP?A配置,而當(dāng)其他藍(lán)牙設(shè)備發(fā)起連接時(shí)則用SPP-B配置。在連接建立后,BlueCore用被稱為“流模式”的方式以不大于220K波特的速率交換數(shù)據(jù)。當(dāng)BlueCore不在“流模式啲時(shí)候他就在“命令模式”,這是川來控制BlueCore屮的應(yīng)用和擴(kuò)展的。其屮UART的通信類熨由兩個(gè)接口信號(hào)控制(ARM7_CMD&BC4_CMD)。需要ARM7處理器與BlueCore芯片間使用的通信
7、協(xié)議細(xì)節(jié)描述的請(qǐng)參看附錄3。CS下圖顯示了ARM7處理器與BlueCore芯片間的接口。(圖后有功能說明)欲知引腳布局的細(xì)節(jié),請(qǐng)參看NXT主機(jī)硬件設(shè)計(jì)圖。BC4BT-STACKSPPLL嚴(yán)…1[wn]]▲*??1-i-r?k}-GND-?33V—?▼IJ丨….riSPIT~UART[1ARM7—GND—MBC4CMDSPI接口提供了BlueCore芯片更新的可能性。NXT主機(jī)正常運(yùn)作時(shí)不會(huì)使用到它。在NXT主機(jī)屮SPI接口與顯示共享。復(fù)位引腳用于在啟動(dòng)時(shí)重新正確初始化芯片和禁用藍(lán)牙。BC4.CMD:指不從Blue
8、Core到ARM7,預(yù)計(jì)以何種數(shù)據(jù)類型發(fā)送。ARM7CMD:指示從ARM7到BlueCore,預(yù)計(jì)以何種數(shù)據(jù)類型發(fā)送。UART通信川于BlueCore芯片與ARM7處理器間的數(shù)據(jù)與命令通信。ARM7和BLUECORE芯片之間的UART接口BlueCore芯片屮的UART與ARM7處理器通信,初始化用的是如下設(shè)置(流模式和命令模式都是):通信速度數(shù)據(jù)位奇偶校驗(yàn)停止位流量控制