python 串口读取地磅仪表_地磅串口数据读取解决办法

地磅串口数据读取HT9800地磅通讯协议:串行通讯方式:连续发送称重值波特率:1200/2400/4800/9600可选数据格式:10位:1位起始位(0),8位数据位(D0-D7),1位结束位(1)。串行通讯发送重量数据为ASCII码,每次发送12个字节。其定义如下:第1字节:起始位(02H)第2字节:状态字A第3字节:状态字B第4字节:状态字C第5字节:6位重量值的高位   :第10字节:6位重量值的低位第11字节:回车(0DH)第12字节:换行(0AH)用Delphi7+Pcomm编程读取数据,过程如下:function ReceiveStr(Port: longint):string;var   rLen: longInt;   PBuf: Pchar;   Buf: string;begin   Result := '';   PBuf := Pchar(StringOfChar(' ',1024));   rLen := sio_read(Port,PBuf,1024);   if rLen = 0 then Exit;   Buf := StrPas(PBuf);   Buf := Copy(Buf,1,rLen);   Result := Buf;end;运行结果显示收到的数据为乱码字符,请各位指教。------解决方案--------------------用CPort,直接读str

------解决方案--------------------这是我用MScomm做的通讯,供参考,差别应该不大。var iInputLen, j : Integer; sValue : string; RecStr:=myMSComm.Input; sValue:=''; for j:=0 to iInputLen - 1 do sValue:=sValue+IntToHex(RecStr[j],2); //用日志记录通讯格式 WriteCommLog(sValue);  sValue:=sValue[9]+sValue[10]+sValue[7]+sValue[8]+sValue[5]+sValue[6];

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值