AT89S52单片机用RS232与电脑通信,通信已成功,怎么发送一个数据?
答案:2 悬赏:0 手机版
解决时间 2021-01-25 00:31
- 提问者网友:记得曾经
- 2021-01-24 12:23
AT89S52单片机用RS232与电脑通信,通信已成功,怎么发送一个数据?
最佳答案
- 五星知识达人网友:神的生死簿
- 2021-01-24 13:39
一般的串口助手只有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上位机中,将接收到的十六进制码利用 刚才的公式转换回来,然后再显示就对了
这个办法比较通用,我们做都是这样做的
全部回答
- 1楼网友:愁杀梦里人
- 2021-01-24 14:26
不是 “通信已成功” 吗?
怎么 发送一个数据 还是问题?
有 意思
建议楼主 搜搜!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯