我用的读卡器是非接触式的Korlta的读卡器,读卡器的型号是:KET101UE
试了一张卡,卡上标识为:0015000700 228,58492
技术人员说后八位是卡号,传速率:96000bs,无校验位,发送数据的方式是:起始符 地址字节 卡号 结束字符
是以ASCII码的形式发送的,但我读了N次,读出来的数据为:000800E4E47C74
第三方控件是:ComPort.v3.0
源程序如下:
var
Form1: TForm1;
comport1:TCustomComPort;
implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
coms:string;
begin
// EnumComPorts(ComboBox1.Items);
comport1.ReadStr(coms,20);//读取数据
memo1.Lines.add(coms);
comport1.ClearBuffer(true,false);
end;procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
comport1.Free;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
comport1.ShowSetupDialog;//设置参数,打开串口
comport1.Open;
end;procedure TForm1.FormCreate(Sender: TObject);
begin
comport1:=tcustomcomport.Create(self);
end;procedure TForm1.Button3Click(Sender: TObject);
begin
comport1.Close;
end;end.
不知道我读来的数据有没有错误,如果哪位大侠有正确的从串口读数据的例子,可以发给我吗?谢谢,,因为学校还在上课,所以有的时候会不在线的,请原谅!!先出50分,搞定了再加100,我可用分有2600多分,
试了一张卡,卡上标识为:0015000700 228,58492
技术人员说后八位是卡号,传速率:96000bs,无校验位,发送数据的方式是:起始符 地址字节 卡号 结束字符
是以ASCII码的形式发送的,但我读了N次,读出来的数据为:000800E4E47C74
第三方控件是:ComPort.v3.0
源程序如下:
var
Form1: TForm1;
comport1:TCustomComPort;
implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
coms:string;
begin
// EnumComPorts(ComboBox1.Items);
comport1.ReadStr(coms,20);//读取数据
memo1.Lines.add(coms);
comport1.ClearBuffer(true,false);
end;procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
comport1.Free;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
comport1.ShowSetupDialog;//设置参数,打开串口
comport1.Open;
end;procedure TForm1.FormCreate(Sender: TObject);
begin
comport1:=tcustomcomport.Create(self);
end;procedure TForm1.Button3Click(Sender: TObject);
begin
comport1.Close;
end;end.
不知道我读来的数据有没有错误,如果哪位大侠有正确的从串口读数据的例子,可以发给我吗?谢谢,,因为学校还在上课,所以有的时候会不在线的,请原谅!!先出50分,搞定了再加100,我可用分有2600多分,
解决方案 »
- 求一个日期时间控件,值可为空的那种。可加分!
- 有关fastreport的简单问题[悬赏50分]
- 求职:地点.深圳,职位:DELPHI程序员,有意者请回贴或QQ联系:9180364
- 各位老大:使用delphi如何实现COM组件的连接点
- 程序运行环境问题!请大家来帮忙。谢谢拉!着急在线等。。。。。。。。。。
- sql语句,超奇怪问题!
- 中秋节,祝愿大家节日快乐!希望可以看到cobi(小新)等前辈^.^
- 关于动态事件的问题!
- datatimepicker问题
- 怎样做个半透明的窗体
- 如何在删除、copy文件时显示windows的进度对话框?
- [高手求助]谁能提供一个DELPHI与asp相同加密解密源代码(
0015000700-------->16进制:E4E47C
而你读出的是 0008 00E4E47C 74,所以,应该是读出的数据不完整,没读出卡号,只把标识读出来了。
协议不传输卡号,只传输了标识。00 08 00E4E47C 7400:起始符
08:地址字节长度,标识后面有8个字节长度数据
00E4E47C:卡号,10进制就是0015000700
74: 结束字符
是写错了么?是9600bps么?
因为我是直接设置好的,