富 富新 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-14 #1 就是用SPCOMM串口实现仪表的通信的,来读取仪表的数据来显示! (如果分小我还加!)
Z zywcd Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-14 #2 和仪器通讯没有规则,需要根据对象而定。 你这样的问题怎么解答阿,
富 富新 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-14 #3 就是想问一下如何发送数据出去,又如何接收到数据啊 也可以比如一个单数显表啊,我怎样读取数显表上的数据呢?
Z zywcd Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-14 #4 1、首先你需要了解仪器的通讯参数。 2、发送命令到仪器。 下面是代码, Comm1.StartComm;//打开 tstr:=#02+#03+#00+#$F6+#00+#02+#$24+#$0A; // 03 03 00 f6 00 02 25 db Comm1.WriteCommData(pchar(tstr),8); //读流量计1 ....03 //发送命令 3、使用spcomm事件,接收返回数据。 procedure Tfrmsykz.Comm2ReceiveData(Sender:TObject; Bufferointer; BufferLength:Word); var tchar; t1:string; begin t:=Buffer; t1:=t; if length(trim(t1))=0 then exit; if Copy(t1,8,1)<>'9' then exit; //如果通讯返回数据出错,则返回. cd_save.value[sys_info.Cal_Dzt_Xh[11]]:=strtofloat(Copy(t1,8,6))/10; //把读回来的大气压力存入相应的变量。 end;
1、首先你需要了解仪器的通讯参数。 2、发送命令到仪器。 下面是代码, Comm1.StartComm;//打开 tstr:=#02+#03+#00+#$F6+#00+#02+#$24+#$0A; // 03 03 00 f6 00 02 25 db Comm1.WriteCommData(pchar(tstr),8); //读流量计1 ....03 //发送命令 3、使用spcomm事件,接收返回数据。 procedure Tfrmsykz.Comm2ReceiveData(Sender:TObject; Bufferointer; BufferLength:Word); var tchar; t1:string; begin t:=Buffer; t1:=t; if length(trim(t1))=0 then exit; if Copy(t1,8,1)<>'9' then exit; //如果通讯返回数据出错,则返回. cd_save.value[sys_info.Cal_Dzt_Xh[11]]:=strtofloat(Copy(t1,8,6))/10; //把读回来的大气压力存入相应的变量。 end;
富 富新 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-14 #5 请问 tstr:=#02+#03+#00+#$F6+#00+#02+#$24+#$0A; // 03 03 00 f6 00 02 25 db 是仪表参数的地址吗?
Z zywcd Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-14 #6 我上面的代码,只是我自己的。只是给你简单的说明, 具体的通讯命令,参数,需要你自己根据实际情况来。
C cancheung Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-14 #7 其实只要你根据通信协议,放上SPCOMM控件,仿照例子编写一下,你就知道如何通信,如何实现的了...(其实挺简单的,如果要做到高效,稳定就要下点功夫了!)
Q qiuqiu133 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-14 #8 tstr是指通讯命令,下位机接收后产生相关动作 spcomm的使用比较简单,楼主摸索下应该就能搞通
B bluesweet Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-16 #11 需要知道和仪表的通讯协议才行吧 之后就是然照协议发送和接收数据之后处理即可。
富 富新 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-16 #12 对了,SPCOMM这个控件,我怎么安装出错,是不是我下载的有问题,有谁有用过的,可以发一个到我的邮箱里吗? 我的邮箱是:tangx10@163.com 在此先谢谢了
G gdy009 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-17 #13 按照仪表协议,封装解析报文就可以了 然后SPComm怎么发送接手数据就可以了吧
A ayu310 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-18 #14 如果你的项目很急的话,我们可以考虑合作.QQ:1036121
B bluesweet Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-19 #16 你可以到www.delphibox.com上下载一个。 你得知道仪表的协议才能正常通信啊。 主要就是用: WriteCommData和Comm1ReceiveData