怎样用VB控制串行通信的奇偶校验位(第九位)?例如:422总线通信方式,怎样给单片机发送地址?

Ejnstein 2002-08-21 04:02:09
这是上次巴顿大哥回复的内容:
回复人: Bardo(巴顿) ( ) 信誉:76 2002-3-7? 18:21:35 得分:0
能做到
取出
p= Var and &H200
写入:
Var Or &H200
Var Xor &H200
谁能详细的解释一下,请举个有代码的实例解释,谢谢!



...全文
177 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ejnstein 2002-08-30
  • 打赏
  • 举报
回复
用 M S 虽然没问题,但需要总开关Com,而如何判断收来的数是否为地址呢?因为单片机判断是否为地址只判断寄存器中的第九位,而我如果要判断的话是通过奇偶校验是否错误判断,可如果切换就需要先关Com,就造成一个问题;数据是否会丢,怎样解决呢?
zhangyan_qd 2002-08-22
  • 打赏
  • 举报
回复
顶楼大概用的也是51单片机吧?
应该有直接用API控制串口的方法的,但我不想花力气去研究。我是学建筑的,搞工控纯粹是给人帮忙......
hh5458 2002-08-21
  • 打赏
  • 举报
回复
我是用的M 和S 完全没问题。COMM没事干麻留5种状态给我们用啊!
xingwei168 2002-08-21
  • 打赏
  • 举报
回复
你说的是要判断接收到的数据第九位是1还是0?
xingwei168 2002-08-21
  • 打赏
  • 举报
回复
挺含糊的,你把Settings按楼上的所说的设置应该可以呀!不知你下位机用的什么CPU,把它也设成同样的工作方式就可以呀!不懂。。。不懂!~~~~~~~
zhangyan_qd 2002-08-21
  • 打赏
  • 举报
回复
巴顿的意思是取一个变量的第九位是零还是一,和你说的不是一回事。
zhangyan_qd 2002-08-21
  • 打赏
  • 举报
回复
我个人的经验,可以直接改MSCOMM控件的Setting字符串,指定M就是第九位置1发地址,指定S就是置零发数据,保险起见可以在改变之前先把MSCOMM给disable掉,设置完再Enable。不过也有搞工控的朋友说这种暴力的做法不安全。呵呵,好在下位机是我老爸自己做的,试验了一下运行48小时没发生过丢数据的情况。对要求更严格的环境就不知道了。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧