在PC机与单片机进行串口通信时,怎样来读写第9位 谢谢:artman(artman); 1》 可不可以有方法自己来设置, 2》,如果自己制定帧的格式,应如何来定? 是不是通过设置停止位,将停止位设为1或0来进行! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你这样做有意义吗?为什么不用标准的1个起始位8数据位1停止位,一个不够用两个用n个,单片机端,PC机端约定好数据格式不就节了吗?我就是这样做了N个MCS_51程序和VC程序了! 分数已经加上了,可是扣了我3分的信誉。这是为什么啊?我没有要不加分啊?TO: Swallowdeng_cq(JustTalk),你说的有道理,可是我现在PC机上作的协议是为了和其它控制主机与从机的通信协议要相同。要不从机的处理就要有两种协议了。 另:是不是只有结贴才能给大家加分啊。或一次要全给满100分。 用段位结构啊,先声明一个段位结构,然后用a.b=c; c是一个char 形的数传进去之后,再传出来。 c=a.b。就OK了。 dengting(邓庭) :你好,但是C也是8位的啊?不太明白? 是否能说的明白一些,在传送BUFFER里,数据都是8位的,是不是? 8只是传送的一个字符而已。而你可以有自己的桢格式。比如10xxxxxx16。只要检测开头结尾。就知道一桢是否结束。其他位也可以加在桢里面。自己处理就可以了 re:delphihero 要求一桢是11位,第2到9位是数据,第10位为特殊意义位,可在程序中读写。如:10000111101或10000111111。 re:mfc42d: delphihero 要求一桢是11位,第2到9位是数据,第10位为特殊意义位,可在程序中读写。如:10000111101或10000111111。 第10位为1,表示数据为作为通信的地址。 第10位为0,表示数据为普通的通信数据。 读写第9位不就是为了实现多机通讯吗,在VC中用CreateFile创建串口句柄后,可以用 GetCommState 来获得串口设置,再用 SetCommState 设置串口。发送地址时可将串口校验位设置为MARKPARITY,然后发送地址;发送数据时可将串口校验位设置为SPACEPARITY。即可实现多机通讯。 re:fbinfh,你说的对,但是如果对方发送时,采用MARKPARITY,发数据,SPACEPARITY送地址。那接收的PC机如何来接收第9位。? re:fbinfh,你说的对但是如果对方发送时,采用MARKPARITY,发地址,SPACEPARITY送数据那接收的PC机如何来接收第9位。? 有几台PC机作为主机呢?下位机之间要互相通讯吗?或下位机要主动向PC发送数据吗? re:fbinhf() 多台下位机,一台主控机。 下位机在往上位机发数据时,上位机要能识别到第九位是1或是0。 为什么我重复调用一个按钮函数 对话框窗口会出现 (没有响应) 高手进来给个思路 Windows SDK 与 DDK有什么区别?DDK有什么用? CRectTracker有问题 CSOCKET后,为什么是乱码? 如何获得内网机器的外网IP啊? UNUSED_ALWAYS 宏的用法,知道的请进 关于图形按钮的创建~~~~~~ 怎么这个问题没人回答,在线等待,一定给分 电脑奇怪的毛病 类的成员函数问题? ATL的复合控件情况下,为什么TAB控件加上RichText控件在运行状态下会出现内存错误
TO: Swallowdeng_cq(JustTalk),你说的有道理,可是我现在PC机上作的协议是为了和其它控制主机与从机的通信协议要相同。要不从机的处理就要有两种协议了。 另:是不是只有结贴才能给大家加分啊。或一次要全给满100分。
先声明一个段位结构,然后用
a.b=c; c是一个char 形的数传进去之后,
再传出来。 c=a.b。就OK了。
不太明白? 是否能说的明白一些,在传送BUFFER里,数据都是8位的,是不是?
要求一桢是11位,第2到9位是数据,第10位为特殊意义位,可在程序中读写。
如:10000111101或10000111111。
delphihero
要求一桢是11位,第2到9位是数据,第10位为特殊意义位,可在程序中读写。
如:10000111101或10000111111。
第10位为1,表示数据为作为通信的地址。
第10位为0,表示数据为普通的通信数据。
VC中用CreateFile创建串口句柄后,可以用 GetCommState 来获得串口设置,
再用 SetCommState 设置串口。
发送地址时可将串口校验位设置为MARKPARITY,然后发送地址;
发送数据时可将串口校验位设置为SPACEPARITY。
即可实现多机通讯。
但是如果对方发送时,采用MARKPARITY,发数据,SPACEPARITY送地址。
那接收的PC机如何来接收第9位。?
但是如果对方发送时,采用MARKPARITY,发地址,SPACEPARITY送数据
那接收的PC机如何来接收第9位。?
下位机之间要互相通讯吗?
或下位机要主动向PC发送数据吗?
多台下位机,一台主控机。
下位机在往上位机发数据时,上位机要能识别到第九位是1或是0。