一種無(wú)線(xiàn)傳感器開(kāi)發(fā)系統的設計方法
圖4中,地址指該段代碼要寫(xiě)入FLASH的初始地址,包括2字節的頁(yè)地址和l字節的頁(yè)內地址;序列號表示該段代碼是全部代碼中的第幾段;長(cháng)度指該段代碼的字節數,不包括地址和序列號。每一地址段代碼都采用表2的格式。
上位機程序支持的目標文件格式有:TinyOS、AVRGCC和IAR生成的Intel hex文件。Intel hex是Intel公司提出的一種文件標準,是最常用的目標文件格式之一。上位機程序還支持TI(德州儀器)公司提出的msp430-txt格式,該格式及說(shuō)明如表2所示。
上位機程序將不同編譯系統生成的不同格式的目標文件轉換成圖4所示的格式,再發(fā)給下位機。上位機操作界面提供了各種命令按鈕,用戶(hù)點(diǎn)擊命令按鈕后,上位機即按制定的該命令模式處理協(xié)議發(fā)送命令和數據。在傳送文件時(shí),為確保數據傳送不出差錯,采用了停止-等待傳輸協(xié)議。上位機發(fā)送約定長(cháng)度的數據后停止發(fā)送,等接收到下位機發(fā)來(lái)的確認標志后再開(kāi)始發(fā)送。上位機總程序框圖如圖5所示。
3.2 下位機程序設計
下位機接收上位機的命令,完成讀寫(xiě)FLASH、E2PROM、鎮定位、熔絲位和USB口使用權的切換等功能。由于實(shí)現的功能較多,采用了模塊化、自下向上的結構化設計方法。首先按照ATMELCAl28L數據手冊提供的SPI編程算法,用C語(yǔ)言實(shí)現了讀寫(xiě)FLASH、鎖定位和熔絲位等模塊。

評論