
AT89S52单片机用RS232与电脑通信,通信已成功,怎么发送一个数据?
1个回答
展开全部
一般的串口助手只有ascii 和 hex 显示,也就是字符形式和十六进制显示,没有字符串形式的接收发送,所以就要处理一下。
你可以把25.5 分开发,发四次,第一次发2的ascii码,第二次发5的ascii码,第三次发。的ascii码,第四次发5的ascii码,在串口调试助手就把hex显示或十六进制显示的钩钩去掉(一般串口助手都是这样设置的)。就可以了
但一般做法是用vb自己编写上位机程序:
vb的串口上位机程序很简单单,你上网搜,有很多的
52的串口一次发送的是8位二进制码,你把0-255(0x00-0xff)与 0- N 摄氏度一一对应,也就是
十六进制0x00对应 0 摄氏度 ,十六进制0xff对应 N 摄氏度 ,当然你就要有个线性的对应公式。然后串口发送的时候直接发送0x00-0xff的十六进制码就可以了
在vb上位机中,将接收到的十六进制码利用 刚才的公式转换回来,然后再显示就对了
这个办法比较通用,我们做都是这样做的
你可以把25.5 分开发,发四次,第一次发2的ascii码,第二次发5的ascii码,第三次发。的ascii码,第四次发5的ascii码,在串口调试助手就把hex显示或十六进制显示的钩钩去掉(一般串口助手都是这样设置的)。就可以了
但一般做法是用vb自己编写上位机程序:
vb的串口上位机程序很简单单,你上网搜,有很多的
52的串口一次发送的是8位二进制码,你把0-255(0x00-0xff)与 0- N 摄氏度一一对应,也就是
十六进制0x00对应 0 摄氏度 ,十六进制0xff对应 N 摄氏度 ,当然你就要有个线性的对应公式。然后串口发送的时候直接发送0x00-0xff的十六进制码就可以了
在vb上位机中,将接收到的十六进制码利用 刚才的公式转换回来,然后再显示就对了
这个办法比较通用,我们做都是这样做的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询