专找"竹竿",串口通讯,怎么搞定,求段代码? ( 积分: 100 )

  • 主题发起人 主题发起人 5411
  • 开始时间 开始时间
5

5411

Unregistered / Unconfirmed
GUEST, unregistred user!
http://www.delphibbs.com/delphibbs/dispq.asp?lid=742297

最近要写一个与地秤通讯的程序,硬件厂方提供以下资料:
1.波特率:600/1200/2400/4800/9600可选
2.数据格式:每隔100ms发送一组数据,每组数据有5帧,每帧数据有11位:1位起始位(0),
8位数据位(D0-D7),2位停止位(1),定义如下:
第一帧:D0-D7 - 0FFH(起始位)
第二帧:D0-D2 - 为小数点位置(0-5)
D3 - NC
D4 - 1 表示称重稳定 0 表示称重未稳定
D5 - 1 表示重量为正 0 表示重量为负
D6 - NC
D7 - 1 表示超载
第三帧:D0-D7 - BCD1(称重值)
第四帧:D0-D7 - BCD2(称重值)
第五帧:D0-D7 - BCD3(称重值)
注:BCD3,BCD2,BCD1为由高到低的称重值的BCD码
求各位DFW给段程序,从串口读出称重值.(与硬件没打过交道,不知该如何下手,请高手指点迷津.
)
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=742297

最近要写一个与地秤通讯的程序,硬件厂方提供以下资料:
1.波特率:600/1200/2400/4800/9600可选
2.数据格式:每隔100ms发送一组数据,每组数据有5帧,每帧数据有11位:1位起始位(0),
8位数据位(D0-D7),2位停止位(1),定义如下:
第一帧:D0-D7 - 0FFH(起始位)
第二帧:D0-D2 - 为小数点位置(0-5)
D3 - NC
D4 - 1 表示称重稳定 0 表示称重未稳定
D5 - 1 表示重量为正 0 表示重量为负
D6 - NC
D7 - 1 表示超载
第三帧:D0-D7 - BCD1(称重值)
第四帧:D0-D7 - BCD2(称重值)
第五帧:D0-D7 - BCD3(称重值)
注:BCD3,BCD2,BCD1为由高到低的称重值的BCD码
求各位DFW给段程序,从串口读出称重值.(与硬件没打过交道,不知该如何下手,请高手指点迷津.
)
 
你对数据格式没有理解清楚,所以不知道怎么做。
你可以先收到数据,然后再根据格式说明对比,就知道重量是多少了
 
看你用什么控件了。比如我用的是CPortLib,直接在OnRxBuf事件里面写代码。几帧之间要自己组包
 
资料不清楚的,请看这里:
http://bbs.2ccc.com/attachments/linuxer_200556225042.doc
 
5个8字节数据.用TurboPower APRO的串口控件接收回来处理即可,代码参考其DEMO.
 
最好能用spcomm,TurboPower APRO找不着啊.
 
apro 在51DELPHI里就有.

http://www.51delphi.com/delphi/soft?cx=apro
 
如果要用spcomm的话.就说说怎么读数吧
procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word)
begin


end;
 
敢问朋友那里 我也作地磅 已经完成了 嘿嘿
问题 遇到过 已经解决
 
兄弟是山东的.
:)那就分享分享啊!
 
//串口数据接收
procedure TForm1.COMReceiveData(Sender: TObject; Buffer: Pointer; BufferLength: Word);
var s:string;
begin
setlength(s,bufferlength);
move(buffer^,s[1],bufferlength);
但是100毫秒的间隔spcomm可能要收满2048个字节才能触发事件
 
楼上兄弟,要写就写全一点嘛,看看资料.:)然后怎么样?
 
你问的是如何从串口读数,现在数已经在s里面了,剩下的只是按协议处理把称重数据整理出来,没什么可写的了
 
怎么整理啊?
数据规格在这里啦:
http://bbs.2ccc.com/attachments/linuxer_200556225042.doc
 
5411 兄:
你真懒阿。这个都让别人做。
 
这个不是懒阿,是不会啊!
 
楼主可以到我QQ里面去看看,里面高手很多哦。
群号:2000202
 
哎呀,帮就帮到底把,说出来算了啊,兄弟。[:D]
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
632
import
I
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部