请教串口(使用MSCOMM)通信的一个问题(9600,n,8,1 和9600,n,5,2的区别)(100分)

  • 主题发起人 主题发起人 hwb
  • 开始时间 开始时间
H

hwb

Unregistered / Unconfirmed
GUEST, unregistred user!
本人初学DELPHI,有个问题想请教各位大虾,在下把MSCOMM的通信参数设置为9600,n,8,1的时候,自发自收,
比如发的是字符串'DA FU WENG',收到的也是'DA FU WENG',但是把通信参数设置为9600,n,5,1.5的时候,收到
的却是乱码!怎么才能正确接收?8单位5号码(9600,n,8,1)和5单位2号码(9600,n,5,1.5)到底有什么区别和联
系?跟ASCII码(好象是7单位?号码)又有什么关系?谢谢!!!!
 
难道没人知道吗?????????????
还是各位大虾不肯施教?????????????????
 
指定的是帧格式,取5一帧就只发5位了,一个字节只收5位,你说会是什么样子?
ASCII码是7位的,但字节是8位的,兄弟,先学点基础课吧
 
那当然啦。
8 n 1表示8位数据位,无奇偶检验,1位停止位
5 n 1则是5位数据位(所以接收的数据乱码)
校验位用于在传输过程中,对数据进行检错,和纠错的。停止位用于判断数据。。。。
不过,你还是找本书看看吧
 
谢谢iie 和 zengr 的指教。
在下还有一个问题,在民航用的电报终端与转报机的编码有两种,8单位5号码(9600,n,8,1)和5单位2号码(9600,n,5,1.5),
大部分用的是5位2号码(9600,n,5,1.5),为什么能传输超过5位数据位?(包括26个大写字母和10数字和其他一些字符)。
 
我不是很了解电报,但5位协议能传输超过5位的数据是很好理解的,就象基于
8位的协议同样可以传输双字节的汉字一样,是编码问题。
另外,还可以通过转义字来实现,象C语言里面‘/’的用法
类似打字机的换档键等等
 
多人接受答案了。
 
后退
顶部