通信功能設(shè)計(jì)通信模塊可采用串口和USB,串口速度慢一點(diǎn),但軟硬件比較簡(jiǎn)單。我們使用RS232串行通信,通訊協(xié)議采用MODBUS/RTU協(xié)議。串行接口電路設(shè)計(jì)要完成zui基本的串行通信功能,實(shí)際上只需要RXD、TXD和GND即可,但由于RS-232-C標(biāo)準(zhǔn)所定義的高、低電平信號(hào)與S3C2140X系統(tǒng)的LVT-TL電路所定義的高、低電平信號(hào)*不同,必須經(jīng)過(guò)信號(hào)電平的轉(zhuǎn)換才能通信,這里我們使用MAX3232芯片來(lái)完成,串口電路圖串行通訊程序設(shè)計(jì)WindowsCE提供了豐富的通信支持。其應(yīng)用程序和串行端口的溝通主要通過(guò)串行裝置驅(qū)動(dòng)程序完成。。。。。。。。。。 WindowsCE支持一千多個(gè)通用的MicrosoftWin32API,在基于WindowsCENET的設(shè)備上,串行通信端口讀寫(xiě)的任務(wù)由調(diào)用文件讀寫(xiě)函數(shù)完成。通信流程如所示。。。。。。。。。。。 主要函數(shù)有:CreateFile;打開(kāi)串行口;WriteFile;向串行口寫(xiě)數(shù)據(jù);ReadFile;從串行口讀數(shù)據(jù);SetCommState;配置通信設(shè)備的DCB結(jié)構(gòu)WaitCommEvent;等待通信設(shè)備事件發(fā)生SetCommTimesouts;設(shè)置超時(shí)參數(shù)主要通信參數(shù)設(shè)置如下:dcbBaudRate=9600;波特率dcbParity=NOPARITY;校驗(yàn)dcbByteSize=8;數(shù)據(jù)位dcbStopBits=ONESTOPBIT;停止位3開(kāi)發(fā)實(shí)例本實(shí)例通過(guò)S3C2140X開(kāi)發(fā)板,采用MODBUS進(jìn)行通信,用EVC40進(jìn)行開(kāi)發(fā),設(shè)計(jì)了顯示溫度曲線的圖形界面。其中,單片機(jī)采用80C51;光斷管與T1口相連,記錄光斷管被遮斷的次數(shù);使用一線數(shù)字溫度傳感器DS18B20獲得溫度值;采用8位的AD串行轉(zhuǎn)換器ADC0832實(shí)現(xiàn)模數(shù)轉(zhuǎn)換;通過(guò)MAX3232芯片完成串口電平的轉(zhuǎn)換。測(cè)控儀表電路與界面如所示:測(cè)量與設(shè)備計(jì)量技術(shù)實(shí)例的電路與界面。。。。。。。。。 |