a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > PIC單片機與觸摸屏串行通信MODBUS協議

PIC單片機與觸摸屏串行通信MODBUS協議

作者: 時間:2012-02-21 來源:網絡 收藏

4 程序的開發

程序采用C語言編寫。編譯工具選擇Hitech公司的C編譯器。程序共分三大模塊,即初始化模塊、數據接收模塊以及數據處理及發送模塊。主程序流程圖如圖2所示。

16F877USART功能模塊帶有一個八位的波特率發生器BRG,BRG支持USART的同步和異步工作方式。用SPBRG寄存器控制一個獨立的八位定時器的周期。在異步方式下,發送狀態/控制寄存器TXSTA的BRGH位(即D2)被用來控制波特率。對口進行的初始化如下:
GIE=1; %全局中斷允許;
SPBRG=25; %設置波特率為9600;
TXSTA=0x04; %選擇異步高速方式;
RCSTA=0x80; %允許同步口工作;
RTISC6=1;
TRISC7=1; %將C口的RC6和RC7設置為異步模式;
PFIE=1; %外圍接口中斷允許;
RCIE=1; %USART接收中斷允許;
TXIE=1; %USART發送中斷允許;

數據接收模塊由一個中斷函數組成。該中斷函數將發來的Modbus數據幀存儲在一個自定義的數組中,當一幀數據接收完時,置接收結束標志位為 1,轉入數據處理及發送模塊。串行通信接收器的核心是接收移位寄存器RSR,當接收到停止時,如果RCREG緩沖器為空,RSR就把接收到的數據送入 RCREG。傳送完成后,接收中斷標志位RCIF被置1。實際的中斷是否被CPU響應,可以通過設置外圍接口中斷允許寄存器PIE1的中斷允許位RCIE 來控制。

38.jpg

數據處理及發送模塊執行Modbus功能碼對應的運用。eView與單片機以Modbus通信。

以Modbus功能碼03為例來說明觸摸屏及單片機的實際通信數據格式。如單片機地址編號為01H,觸摸屏需要查看單片機中地址為0031H的寄存器的值,發送命令格式如表3所示。

當波特率達到38400kb/s 時,通信仍然穩定可靠。本系統具有連接電路簡單、組態靈活、通信可靠性高等特點,并已成功應用于物料篩選控制系統項目中。由于Modbus通信的開放性的特點,國外進口控制器串行通信大者支持該協議,因此本文所實現的采用Modbus協議的串行通信具有廣泛的應用價值。

通信相關文章:通信原理



上一頁 1 2 下一頁

評論


相關推薦

技術專區

關閉