PIC单片机与触摸屏串行通信的MODBUS协议实现
[09-12 17:48:19] 来源:http://www.88dzw.com 单片机学习 阅读:8337次
文章摘要:数据区 N字节错误校验 16位CRC码结束结构 ≥4字节的时间二进制模式中,信息开始至少需要3.5个字符的静止时间,依据使用的波特率,很容易计算这个静止时间。发送完最后一个字符后,也有一个至少3.5个字符的静止时间,然后才能发送一个新的信息。网络上的设备连续监测网络上的信息,包括静止时间。图13 单片机与触摸屏地址的对应关系eView触摸屏只支持Bit和Word地址类型,而实际的单片机或其它控制器还有Byte、Double Word等表示方法,因此在进行通信时,需要把单片机和触摸屏的数据进行变换。触摸屏画面元件读取地址的设备类型有LW、0x、1x、3x、4x、RWI、RW等选项。其中,LW表示
PIC单片机与触摸屏串行通信的MODBUS协议实现,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com数据区 N字节
错误校验 16位CRC码
结束结构 ≥4字节的时间
二进制模式中,信息开始至少需要3.5个字符的静止时间,依据使用的波特率,很容易计算这个静止时间。发送完最后一个字符后,也有一个至少3.5个字符的静止时间,然后才能发送一个新的信息。网络上的设备连续监测网络上的信息,包括静止时间。
图1
3 单片机与触摸屏地址的对应关系
eView触摸屏只支持Bit和Word地址类型,而实际的单片机或其它控制器还有Byte、Double Word等表示方法,因此在进行通信时,需要把单片机和触摸屏的数据进行变换。触摸屏画面元件读取地址的设备类型有LW、0x、1x、3x、4x、RWI、RW等选项。其中,LW表示该元件读取的是触摸屏内部的地址,如其它元件的地址;0x表示读取的是控制器的输出信号;1x表示读取的控制器的输入信号;3x和4x指控制器的寄存器地址类型,其中4x是可读可写的,3x是只读的;RWI、RW都是触摸屏的内部地址,起辅助作用。使用这些读取地址的设备类型,触摸屏即可显示或设定控制器寄存器或I/O口的数值。以“数值输入”元件为例,通过“小键盘”输入数据即可设置单片机寄存器或I/O口的数值。如果启动了“触发地址”,那么当被触控时,输入的数据就被存放到了指定的单片机地址中。
4 通信程序的开发
触摸屏与单片机的通信程序采用PIC单片机C语言编写。编译工具选择Hitech公司的PICC编译器。程序共分三大模块,即初始化模块、数据接收模块以及数据处理及发送模块。主程序流程图如图2所示。
PIC16F877单片机USART功能模块带有一个八位的波特率发生器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来控制。
数据处理及发送模块执行Modbus协议功能码对应的运用。eView触摸屏与单片机以Modbus协议通信,用到的Modbus功能码如表2所示。
表2 通信程序用到的功能码
功能码 | eView地址名称 | 含 义 | 作 用 |
01 | 0x | 读开关量输出 | 读取一路或多路开关量输出状态 |
03 | 4x | 读保持寄存器 | 读取一个或多个保持寄存器的数据 |
05 | 0x 1x | 写开关量输出 | 强置一路继电器的“分/合”输出 |
16 | 3x 4x | 预置多寄存器 | 把具体的数据装入一组连贯的保持寄存器 |
《PIC单片机与触摸屏串行通信的MODBUS协议实现》相关文章
- › Microchip推出闪存PIC单片机 数据传输速度达12Mbps
- › Microchip推出USB、LCD及通用8位PIC单片机系列
- › Microchip推出全新通用小型PIC单片机,适合多种应用
- › Microchip推出针对PIC单片机的mTouch解决方案
- › Microchip 推出全新通用小型PIC单片机
- › Microchip新推出两款20引脚8位PIC单片机
- 在百度中搜索相关文章:PIC单片机与触摸屏串行通信的MODBUS协议实现
- 在谷歌中搜索相关文章:PIC单片机与触摸屏串行通信的MODBUS协议实现
- 在soso中搜索相关文章:PIC单片机与触摸屏串行通信的MODBUS协议实现
- 在搜狗中搜索相关文章:PIC单片机与触摸屏串行通信的MODBUS协议实现