《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 一種無線傳感器軟件非接觸升級的方法
一種無線傳感器軟件非接觸升級的方法
來源:電子技術應用2011年第7期
劉 梁,李東旭,許 林,李 凡
(中國航天員科研訓練中心 人因工程實驗室,北京100193)
摘要: 基于MSP430無線傳感器系統(tǒng),設計了一種無線傳感器軟件非接觸升級的方法。該方法充分利用現(xiàn)有資源,不需要傳感器而是通過程序下載線與計算機相聯(lián),穩(wěn)定可靠地完成了無線傳感器應用程序的升級更新。該方法對于Flash可系統(tǒng)編程的其他系列單片機系統(tǒng)同樣適用,具有很好的實用性和通用性。
中圖分類號: TN99
文獻標識碼: A
文章編號: 0258-7998(2011)07-0045-03
Method of download wireless sensor program without contact
Liu Liang,Li Dongxu,Xu Lin,Li Fan
Astronaut Center of China,Human Factors Engineering Lab,Beijing 100193,China
Abstract: To overcome this disadvantage, a method which is based on MSP430 wireless sensor system is proposed. With our method there is no need contacting the sersor to computer with wire and the sensor can download program stably and reliably. This method aslo can be used in the other system where the running MCU can write its Flash easily.
Key words : MSP430;WSN;program update


    無線傳感器綜合了傳感器技術、嵌入式計算機技術、分布式信息處理技術和無線通信技術,能夠實時監(jiān)測、感知和采集網(wǎng)絡分布區(qū)內的環(huán)境或監(jiān)測對象的信息。目前已經(jīng)在軍事、航空、環(huán)境、醫(yī)療、工業(yè)、商業(yè)等領域有廣泛應用。對無線傳感器的片上系統(tǒng)軟件的更新,目前多需要有線方式,如連接JTAG口、SWB接口等,而對已經(jīng)安裝好的傳感器進行軟件升級更新,就需要拆卸連接,顯得不方便。本文針對一個自行設計的基于MSP430的無線傳感器,設計了一種非接觸的軟件升級方法,實現(xiàn)了無線傳感器不拆卸的情況下應用軟件的升級。
1 無線傳感器的整體結構
    本文涉及的無線測量系統(tǒng)整體結構設計如圖1所示,主要由無線傳感器、無線收發(fā)器和計算機三部分組成。無線傳感器采集現(xiàn)場的數(shù)據(jù),通過無線的方式發(fā)送給無線收發(fā)器,無線收發(fā)器再將數(shù)據(jù)發(fā)送給計算機,計算機接收到數(shù)據(jù)后進行分析計算、顯示、存儲等工作。

2 硬件結構
2.1 無線傳感器硬件結構

    無線傳感器硬件結構如圖2所示,傳感器工作過程是單片機讀取傳感器采集的測量數(shù)據(jù),再通過無線模塊發(fā)送給上位PC機。

    本系統(tǒng)的傳感器是一個多通道的應變測量傳感器,由于本文主要討論如何更新無線傳感器軟件,所以不對傳感器設計做過多的介紹。
    無線傳感器中的單片機采用TI公司的MSP430F2274芯片,此芯片是一款性能優(yōu)異的超低功耗16位單片機,帶有32 KB Flash存儲器和1 KB的RAM存儲器,內部集成了精度較高的16 MHz的振蕩器,16位的精簡指令集架構,還有豐富的外部接口,如UART、SPI、I2C等。本系統(tǒng)利用其SPI接口與無線模塊相連。
    nRF24L01是NORDIC公司的一款無線通信芯片,采用FSK 調制,內部集成NORDIC的Enhanced Short Burst 協(xié)議,可以實現(xiàn)點對點或是1對6的無線通信。無線通信速度最高可以達到2 Mb/s。只需要單片機系統(tǒng)預留5個GPIO,1個中斷輸入引腳,就可以很容易實現(xiàn)無線通信的功能。而且具有極低的電流消耗,當工作在發(fā)射模式下發(fā)射功率為-6 dBm時電流消耗為9.0 mA,工作在接收模式時電流為12.3 mA,在掉電模式和待機模式下電流消耗更低。
2.2 無線收發(fā)器的硬件結構
    無線收發(fā)器硬件結構如圖3所示。無線收發(fā)器主要用做數(shù)據(jù)轉發(fā),功能較簡單,所以選取只有20Pin的AT89C2051為控制器件,通過MAX3232與計算機串口相連并收發(fā)數(shù)據(jù);通過模擬SPI接口與nRF24L01相連,與無線傳感器交換數(shù)據(jù)。

 

 

3 軟件設計
3.1 MSP430單片機軟件設計

    MSP430的軟件設計包括無線傳感器程序設計和軟件更新引導程序設計。軟件更新引導程序的目的就是完成無線傳感器軟件通過無線的方式升級更新。
3.1.1 軟件更新引導程序的流程
    軟件更新引導程序的流程如圖4所示。

    上電初始化過程首先是穩(wěn)定系統(tǒng)時鐘,然后通過SPI接口對nRF24L01進行初始化配置,配置的內容包括工作模式、發(fā)送地址和接收地址、收發(fā)通道的設置、傳輸?shù)乃俾屎桶l(fā)射功率、自動重發(fā)的次數(shù)等。這些參數(shù)的設置要與無線收發(fā)器相對應,才能保證無線數(shù)據(jù)收發(fā)準確。
    單片機對外圍設備的操作,例如SPI接口采用查詢式而不是中斷式,因為無線傳感器軟件和軟件更新引導程序用的是同一個中斷向量表,這樣就不會因中斷產生沖突。
    對程序更新,必須保證數(shù)據(jù)通信的可靠性,所以考慮了數(shù)據(jù)包丟失、數(shù)據(jù)包重復、數(shù)據(jù)包傳輸出錯三種錯誤。對于數(shù)據(jù)包丟失,由于nRF24L01內部集成了Enhanced Short Burst,可以讓數(shù)據(jù)發(fā)送方知道數(shù)據(jù)包是否發(fā)送成功,而重新發(fā)送數(shù)據(jù)。對于數(shù)據(jù)包重復,解決方法是在數(shù)據(jù)包中設置指令編碼。指令編碼是一個8 bit的無符號整數(shù),由數(shù)據(jù)發(fā)送方將其放在數(shù)據(jù)包中,每發(fā)送一包數(shù)據(jù),將指令編碼加1,當為255時,再從0開始。數(shù)據(jù)包傳到接收方時,如果與接收方存的指令編碼重復,則認為是重復的數(shù)據(jù)包,從而丟棄。利用指令編碼也可以檢測有無丟包。對于傳輸數(shù)據(jù)出錯,由于nRF24L01無線傳輸中,可以設置自動CRC校驗,保證數(shù)據(jù)包傳輸出錯概率很低。
    在程序更新時,要檢測寫入的Flash區(qū)必須在無線傳感器軟件代碼區(qū)或中斷向量區(qū)中,如果超出,則不能再進行寫入,并設置更新出錯,以保護其他代碼區(qū)的數(shù)據(jù)。在程序更新完畢后,將中斷向量區(qū)的0FFFEh地址的16位數(shù)據(jù)設置為0F000h,這樣傳感器再重啟后,將首先運行軟件更新引導程序,在沒有軟件更新命令時自動跳轉到無線傳感器的軟件代碼區(qū)。
3.1.2 存儲器的空間分配
    MSP430F2274存儲空間分配如圖5所示,將無線傳感器的32 KB的Flash存儲區(qū)分割為無線傳感器代碼區(qū)和程序更新引導代碼區(qū),其中08000h~0EFFFh的28 KB存儲區(qū)為無線傳感器代碼區(qū),0F000h~0EFFFh的4 KB存儲區(qū)為程序更新引導代碼區(qū)。兩個代碼區(qū)存放的是相互獨立的程序,在無線傳感器程序更新過程中,程序更新引導程序會檢測代碼寫入地址,如果是自身的代碼區(qū),則禁止寫入。在IAR編譯器中編譯程序時,需要在“.xcl”文件中對代碼地址進行設置,對軟件更新引導程序的編譯CODE區(qū)為“-P(CODE)CODE=F000-FFDF”,對無線傳感器程序的編譯CODE區(qū)“-P(CODE)CODE=8000-EFFF”。

3.2 無線收發(fā)器的軟件設計
    無線收發(fā)器起到信息傳遞中繼的作用,所以其軟件功能比較簡單,當檢測到nRF24L01接收到無線數(shù)據(jù)時,將接收到的數(shù)據(jù)打包,通過RS232協(xié)議,用串口發(fā)送給計算機;當計算機有數(shù)據(jù)通過RS232接口發(fā)送給無線收發(fā)器時,將數(shù)據(jù)打包,通過nRF24L01無線發(fā)送。
3.3 計算機的升級軟件設計
    首先要在計算機端生成無線傳感器應用程序的文件。無線傳感器應用軟件編譯是在“project->option->link->output”標簽中,將“Format”設置為“other”,“output”設置為“map430-txt”,這樣在IAR中程序編譯完,就會產生“map430-txt”格式的msp430應用程序。其內容為“@+地址”表示后面程序的起始地址,后面緊跟字節(jié)型的數(shù)據(jù),當有字母‘q’時,表示文件結束。
    計算機的升級軟件首先發(fā)送系統(tǒng)重啟命令,并發(fā)送程序更新命令,在收到無線傳感器準備好的指令后,讀取無線傳感器應用程序的msp430-txt格式的文件,將讀取的文件進行轉換,發(fā)送給無線傳感器。如果收到更新成功的回復指令,則提示程序更新成功,否則程序更新失敗。
3.4 計算機與傳感器的數(shù)據(jù)傳輸協(xié)議設計
    計算機與無線傳感器的數(shù)據(jù)傳輸協(xié)議如表1所示,傳輸?shù)臄?shù)據(jù)包長度與傳感器工作時的數(shù)據(jù)包長度相同,為16 B的數(shù)據(jù)包。在傳輸?shù)刂泛蛿?shù)據(jù)時,將第5字節(jié)數(shù)據(jù)設置為指令編碼,每發(fā)送一個傳輸?shù)刂返臄?shù)據(jù)包或傳輸數(shù)據(jù)的數(shù)據(jù)包,都將指令編碼增1,供無線傳感器檢測是否有重復數(shù)據(jù)包或丟失數(shù)據(jù)包。

    本文在基于MSP430的無線傳感器系統(tǒng)中,設計了一種無線傳感器軟件非接觸升級的方法。該方法充分利用現(xiàn)有資源,不拆卸已安裝好的無線傳感器,穩(wěn)定可靠地完成無線傳感器應用程序的升級更新。該方法在可對Flash系統(tǒng)編程的其他系列的單片機系統(tǒng)中同樣適用,具有很高的實用性和通用性。
參考文獻
[1] 秦龍.MSP430單片機應用系統(tǒng)開發(fā)典型事例[M].北京:中國電力出版社,2005.
[2] NORDIC公司.nRF24L01 Single Chip 2.4 GHz Transceiver. 2007.
[3] TI公司.MSP430x2xx Family User’s Guide.2006.
[4] TI公司.Features of the MSP430 Bootstrap Loader.2003.

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品国产亚洲5555| 一区二区三区.www| 亚洲精品国产欧美| 影音先锋亚洲电影| 国产伦精品一区| 欧美性事在线| 欧美午夜精品久久久| 欧美日韩第一区| 欧美精彩视频一区二区三区| 男人插女人欧美| 欧美va天堂| 欧美激情91| 欧美激情导航| 欧美精品 日韩| 欧美精品一区二区蜜臀亚洲| 欧美成人69av| 欧美黄色影院| 欧美精品18+| 欧美日韩国产91| 欧美日韩精品欧美日韩精品 | 91久久视频| 久久精品国产成人| 亚洲一区日韩在线| 亚洲欧美日韩中文播放| 亚洲欧美一区二区在线观看| 午夜激情久久久| 久久成人人人人精品欧| 久久精品一区二区国产| 久久久久久久激情视频| 另类酷文…触手系列精品集v1小说| 免费久久精品视频| 欧美久久婷婷综合色| 欧美视频免费看| 国产精品毛片va一区二区三区| 国产乱理伦片在线观看夜一区| 国产综合婷婷| 在线欧美电影| 亚洲免费观看在线观看| 亚洲在线视频免费观看| 香蕉av福利精品导航| 亚洲国产精品免费| 一区二区三区久久| 先锋影音网一区二区| 久久国产精品99国产| 欧美成人免费在线| 欧美午夜理伦三级在线观看| 国产乱码精品| 亚洲夫妻自拍| 中日韩高清电影网| 久久狠狠久久综合桃花| 日韩亚洲欧美成人一区| 亚洲欧美日韩一区二区三区在线观看| 欧美专区亚洲专区| 欧美国产日韩a欧美在线观看| 国产精品激情av在线播放| 亚洲国产第一页| 欧美午夜不卡在线观看免费| 亚洲人成在线免费观看| 久久九九久精品国产免费直播| 欧美色中文字幕| 另类成人小视频在线| 欧美日本国产在线| 国产日韩欧美| 亚洲日本中文字幕区| 亚洲欧美另类国产| 亚洲精品一区二区三区福利| 午夜久久福利| 欧美成人一区在线| 国产欧美亚洲一区| 亚洲精品1234| 欧美在线观看视频| 亚洲婷婷在线| 美女主播精品视频一二三四| 国产精品久久久久久av下载红粉| 黄色一区二区三区| 亚洲尤物在线视频观看| 亚洲日本va在线观看| 欧美伊人久久久久久久久影院| 欧美激情第3页| 国内综合精品午夜久久资源| 亚洲私人黄色宅男| 亚洲美女在线国产| 久久久人成影片一区二区三区| 欧美日韩中文在线| 伊人成人在线| 一区二区三区高清不卡| 亚洲精选国产| 久久一区二区三区国产精品| 国产精品无码永久免费888| 日韩视频免费看| 最新成人av在线| 久久久久久9| 国产欧美日韩亚洲精品| 一区二区av在线| 日韩亚洲欧美综合| 免费一级欧美片在线观看| 国产亚洲成av人在线观看导航| 一片黄亚洲嫩模| 99视频一区二区| 欧美高清免费| 亚洲第一网站免费视频| 亚洲电影观看| 久久久www| 欧美诱惑福利视频| 欧美午夜久久| 亚洲激情电影在线| 亚洲国产视频一区| 久色成人在线| 国产综合自拍| 欧美一区二区三区免费看| 性欧美videos另类喷潮| 国产精品久久波多野结衣| 99成人精品| 亚洲图片欧美午夜| 亚洲一区二区欧美日韩| 欧美理论大片| 亚洲日本激情| 一区二区三区 在线观看视频| 欧美国产视频日韩| **性色生活片久久毛片| 久久精品99国产精品酒店日本| 久久精品国产免费| 国产亚洲精品aa午夜观看| 欧美一级播放| 久久久久五月天| 韩国精品在线观看| 亚洲第一页中文字幕| 欧美屁股在线| 亚洲电影在线看| 亚洲蜜桃精久久久久久久| 欧美精品久久久久久| 亚洲人体一区| 亚洲视频999| 国产精品国色综合久久| 亚洲综合电影| 久久精品一本久久99精品| 国产一区二区精品久久99| 久久精品免视看| 欧美成人午夜免费视在线看片| 在线精品高清中文字幕| 亚洲精品视频中文字幕| 欧美精品麻豆| 亚洲一区二区高清| 久久激情视频久久| 在线播放中文一区| 一区二区免费看| 国产精品一区二区你懂的| 欧美一级视频精品观看| 欧美69wwwcom| 在线亚洲自拍| 久久精品人人做人人爽| 在线看国产一区| 99精品视频免费在线观看| 欧美视频中文字幕| 亚洲欧洲av一区二区| 男人插女人欧美| 99视频精品免费观看| 欧美在线免费观看视频| 亚洲国产裸拍裸体视频在线观看乱了中文 | 1769国产精品| 久久久久久久久岛国免费| 欧美影院在线| 在线观看国产日韩| 一区二区日韩免费看| 国产嫩草一区二区三区在线观看 | 欧美日韩在线免费视频| 午夜日韩电影| 欧美国产日韩a欧美在线观看| 亚洲少妇诱惑| 麻豆免费精品视频| 中文在线资源观看视频网站免费不卡| 久久国产夜色精品鲁鲁99| 亚洲第一福利视频| 亚洲综合日韩| 在线看片成人| 亚洲已满18点击进入久久| 狠狠色狠狠色综合| 亚洲天堂免费观看| 影音先锋一区| 亚洲欧美日韩在线| 亚洲国产专区校园欧美| 欧美在线一级视频| 亚洲看片网站| 久久久久久自在自线| 一本色道久久精品| 美日韩在线观看| 亚洲一区欧美激情| 欧美区二区三区| 欧美在线亚洲| 亚洲国产精品毛片| 亚洲精品国产欧美| 久久久精品国产免大香伊| av不卡在线观看| 免费一级欧美片在线观看| 亚洲免费在线电影| 欧美日本精品| 91久久极品少妇xxxxⅹ软件| 国产欧美精品日韩精品| 一区二区三区国产在线观看| 很黄很黄激情成人|