找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2468|回复: 9
收起左侧

关于单片机上位机通讯

[复制链接]
ID:1094208 发表于 2024-12-29 15:09 | 显示全部楼层 |阅读模式
我是初学者,51单片机下位机,接近开关检测设备运行位置。目前程序是设备运行到开位置,接近开关发生跳变,232串口向上位机发送一次信号,字符a。到了关位置,发送一次信号,字符b。上位机串口控件收到信号,得出设备位置。弊端是,上位机程序重新启动,就不能知道设备运行位置。只有等设备运行一次,有通讯信号发送到上位机,上位机才能知道设备运行位置。我是不是要把下位机程序改下,改成定期检测设备运行位置,同时发送信号给上位机?这个周期多长时间为好?会不会串口通讯没传输完,下一个检测周期又到了。
回复

使用道具 举报

ID:74687 发表于 2024-12-30 10:48 | 显示全部楼层
你先得把通信协议写好,上位机可能发送指令,查询状态。
回复

使用道具 举报

ID:277550 发表于 2024-12-30 10:53 | 显示全部楼层
这两者之间,就要做个查询指令,上位机启动,就查询、得到当前状态。
回复

使用道具 举报

ID:1109793 发表于 2024-12-30 13:50 | 显示全部楼层
开关变化速度有多快?就算9600波特率,发一次也没多少时间吧。要那么快的开关信号?那是编码器信号?
回复

使用道具 举报

ID:92781 发表于 2024-12-30 14:27 | 显示全部楼层
上位机重启后,可以向下位机查询一次状态,其他不变
回复

使用道具 举报

ID:123917 发表于 2024-12-30 19:28 | 显示全部楼层
应该不会,发送一次消息用时很短
回复

使用道具 举报

ID:1042953 发表于 2024-12-31 11:20 | 显示全部楼层
那你可以下位机改成从站,上位机主动查询,根据工艺设置查询周期
回复

使用道具 举报

ID:879348 发表于 2024-12-31 13:35 | 显示全部楼层
你的担心多余了,串口通讯是us级的
回复

使用道具 举报

ID:1094208 发表于 2024-12-31 22:07 | 显示全部楼层
明白了。
回复

使用道具 举报

ID:401564 发表于 2025-1-3 12:54 | 显示全部楼层
首先,上位机和下位机应该是双向通讯的,也就是有交互
下位机位置有变动,或者是重启,发送一次位置信息
上位机重启,向下位机查询一次位置信息
至于时间,在9600波特率下,发送或者接收一个字节是1.0416667毫秒,留有一定的余量,你可以当成是1.5毫秒,如果位置信息的变化小于这个时间,可以调整串口的波特率
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表