串口的工作方式2要求帧结构为11位,包括起始位(为0)、8位数据位、1位可编程位和停止位(为1)。
如何在LabVIEW中如何进行配置使得串口以工作方式2进行通讯?就是说如何可以使数据位中的可编程位按照需要置1或置0呢?
比如我要发送AA05这个十六进制字符串,且要求AA这个字节第九位即可编程位为1,05第九位为0,假设起始位为0,停止位为1,则发送数据为:
00101010111 01010000001
其中,划线处为数据位,加粗处为可编程位。 数据位低位在前。
这样发送数据如何才能利用LabVIEW实现呢?LabVIEW提供的配置串口函数只能设置奇偶校验位,所以我尝试用For循环来按字节发送,比如还以上述AA05为例:我在发AA前,先将奇偶校验位用属性节点改为MARK,然后发05时将校验位改为SPACE,这样按字节发送。但是用示波器抓数据之后发现第九位并没有按预想的改变。这种做法真的行不通?是由于用按字节发这种方式本身就不可以?还是说配置串口后不能随意更改校验位?
谢谢各位