hzsbkj
我是初弄人机界面者,在触摸屏上画了一个数据显示框,读外部地址0000H的数据并显示在数值显示框中,通信采用RS232通信,触摸屏发送一组数据:01 04 00 00 00 01 31 CA (串口助手接收到的数据),在电脑上串口发送01 04 00 00 00 12 70 07 数据作用响应,这时触摸屏的数据显示框应该显示18,但触摸屏上并没有显示数值,不知道这是为什么。请大家帮忙解答一下,谢谢!本人想用单片机来控制触摸屏,通过modbus 协议来进行通信。
楼主最近还看过
青岛黄工
通信过程是对的,如果响应的值是错的话,触摸屏没有反应,1秒后继续发送命令出来,但响应数据是对的话,触摸屏在响应后马上再发送命令,单片机又响应,一直循环,把串口总线全部占掉了。
雷锋小弟
显示时要进行数据转换,看返回触摸屏的数据(01 04 00 00 00 12 70 07 )中,12就是你要显示的数据,12为十六进制表示,应将12转换为十进制,所得的数值就是18。
建议删除该帖
看看图中红圈部分,网上都有的,去找来看看
谢谢!确实是通信格式不对,我看了通信协议,但上面响应数据没有写这一点(字节娄),折腾我好长时间。