一種無(wú)線傳感器開(kāi)發(fā)系統(tǒng)的設(shè)計(jì)方法
USB轉(zhuǎn)換芯片實(shí)現(xiàn)上位機(jī)端的USB數(shù)據(jù)與下位機(jī)端的UART數(shù)據(jù)之間的轉(zhuǎn)換。選用芯片為FT232BM。由于編程板CPU、ATMELGAl28都要通過(guò)USB口與上位機(jī)通信,為了防止不同輸入輸出信號(hào)間的干擾,設(shè)計(jì)時(shí)用了兩個(gè)帶有使能控制的BUFFER來(lái)控制不同CPU串口通信的通斷。
為了更方便地配置傳感器節(jié)點(diǎn),在板上集成了一塊E2PROM。目標(biāo)代碼可以先存儲(chǔ)在EZPROM中。當(dāng)需要向節(jié)點(diǎn)下載時(shí),通過(guò)按鈕激發(fā)外部中斷即可將E2PROM的代碼通過(guò)SPI口寫(xiě)入節(jié)點(diǎn)CPU。操作方便簡(jiǎn)單,擺脫了上位機(jī)的限制。
節(jié)點(diǎn)連接器是17針的節(jié)點(diǎn)與開(kāi)發(fā)板和擴(kuò)展傳感器之間的接口,除了編程口和串口,還有連接傳感器的擴(kuò)展口,包括I2C口、中斷口和AD口等。
節(jié)點(diǎn)CPU SPI編程共需4根信號(hào)線,其中3根SPI通信線與開(kāi)發(fā)板CPU的SPI口相連,節(jié)點(diǎn)CPU的RESET信號(hào) 由開(kāi)發(fā)板CPU的IO口控制即可。
3 開(kāi)發(fā)板軟件設(shè)計(jì)
3.1 上位機(jī)程序設(shè)計(jì)
用C++ Builder 6.0編寫(xiě)上位機(jī)程序,制作了用戶操作界面,并將不同編譯系統(tǒng)生成的多種目標(biāo)文件格式轉(zhuǎn)換成上、下位機(jī)約定的文件格式,傳送給下位機(jī)。
為提高向ATMELGAl28L的FLASH和E2PROM寫(xiě)代碼的效率和便于從E2PROM向FLASH寫(xiě)代碼,上位機(jī)傳送給下位機(jī)的代碼采用圖4所示的格式。
評(píng)論