视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
XBEE彻底理解--进阶模式
2025-09-29 17:11:42 责编:小OO
文档


什麼是Arduino? 課程文章程式語壇Download雜貨店關於我們AVR MEGA

Eagle PCB XBee 徹底理解 (進階模式

)

作者是 ken

週日, 06 六月 2010 00:59

了解基本的字串傳輸模式之後,xbee還提供一種封包傳輸方式-API模式。這種模式可以傳輸的封包內容更加豐富,

我們可以利用XBEE上面的adc輸入以及DIO輸入,達到不需Arduino也可以連接感測器的目的,首先打開datasheet

的page 32, Table 3-05,找到AP參數。

然後看到後面的Parameter Range,有 0-2的數值可以更改,0 = Disabled, 1 = API Enabled, 2 = API w/escaped

我們把AP設定1然後寫入,這時候....

你會發現你的另外一顆xbee傳過來的訊息不是正常的字串,這是因為XBee已經進入API傳輸模式

看到右邊的奇怪符號其實不用太害怕,打開

Show Hex按鈕顯示16

進制模式

View Comments

我們看到其實那些奇怪符號就是顯示不出來的ASCII碼,順序是7E 00 06 81 00 1F 31 00 61 CD

打開datasheet的page 58

這邊是說明API格式的說明,對照我們得到的是封包內容去解讀,可以知道7E 是開頭,然後接著的 00 06 代表後面會有 6個 bytes的封包內容,然後 81 是cmdID, 然後剩下 00 1F 31 00 61 CD這些我們要先去看 cmdID = 81的格式是什麼,找到page 63 下面的 RX packet 16-bit address。

然後繼續分析 00 1F 就是source Address,也就是說傳給我們那一顆Xbee的MY,MSB是高位元LSB是低位元,然後31是RSSI是傳輸信號強度,00是保留用0 = 沒作用, 1 = 廣播模式, 2 PAN廣播,最後的 61才是我們的字元 a (16bit)。那最後CD的意思是什麼呢??

也就是Checksum,Checksum的算法很簡單,就是扣除開頭的7E以及長度還有checksum全部加起來的總和取LSB 的byte去減掉0xFF看是否是等於CD,也就是說:

7E 00 06 81 00 1F 31 00 61CD取 81 00 1F 31 00 61 加起來 。

0xFF - (81+0+1F+31+0+61) = 0xFF - 0x132 = 0xFF - 0x32 = 0xCD

checksum的說明:

驗證方式:

把所有的byte加起來之後不包括7E跟長度應該LSB等於0xFF,也就是說:

7E 00 06 81 00 1F 31 00 61 CD = 81 + 1F + 31 + 61 + CD = 0x1FF

View the discussion thread.

blog comments powered by Disqus

back to top 最近更新在 週日, 06 六月 2010 01:58

ARDUINO.TW樂園HOME站長部落格所有文章索引無線BT RFID XBEE IR XBEE 徹底理解 (進階模式)

下载本文

显示全文
专题