资 源 简 介
应用背景51和维纶触摸屏的通信。MODBUS RTU 51与维纶触摸屏通信例程。支持的功能码:位:01(读)、05(写),字:03(读)、06(写)还有与数码管显示输入的数据!注释的也比较详细。个人觉得移植性也比较好。各种的单片机上可以移植修改,关键技术51单片机与威纶通触摸屏通讯说明
本程序仅作为一个通信示例程序,实际使用需要根据需要修改。
请使用EB8000 V3.45以上软件打开触摸屏程序,程序为压缩后的触摸屏程序,请使用EB8000软件 工具——压缩/解压缩 菜单下的工具先进行解压缩;单片机使用Keil uVision3 V3.50编译
一、硬件连接
使用ATMEl 89S52单片机。
二、软件
1、通讯环境
触摸屏设置为主站,即PLC 类型 MODBUS RTU,通讯参数设为“9600,N,8,1”。
2、触摸屏程序,需要读取八个位,以及八个字,每次最少读取16个位,字可以一次读取一个也可以一次读取八个。
有0X1-0X8八个位切换开关,6X1-6X8八个字输入元件,支持的功能码:位:01(读)、05(写),字:03(读)、06(写)
当没有写操作时,屏不断的向单片机发送如下码(16进制显示):
01 01 00 00 00 10 3D C6 (位读取)
01 03 00 00 00 08 44 0C (字读取)
此时,如果不给屏发送相应返回值的话,屏就会提示“PLC no response”
3、51单片机程序思路及说明
<
文 件 列 表
单片机程序
20121227
20121227.LST
20121227.M51
20121227.OBJ
20121227.Uv2.bak
20121227.build_log.htm
20121227.c
20121227.hex
20121227.lnp
20121227.opt.bak
20121227.plg
20121227.uvgui.1
20121227.uvgui_1.bak
20121227.uvopt
20121227.uvproj
20121227_Opt.Bak
20121227_uvopt.bak
20121227_uvproj.bak
20121231.c
STARTUP.A51
STARTUP.LST
STARTUP.OBJ
触摸屏程序
Modbus_C51.cmp
Modbus_C51.mtp