读卡器的通讯

主程序:
 LD     SM0.1
 LPS
 MOVB   16#09, SMB30
 MOVB   2#10110100, SMB87
 AENO
 MOVB   16#44, SMB89
 LRD
 MOVW   100, SMW92
 LRD
 MOVW   0, SMW90
 LRD
 MOVB   100, SMB94
 LRD
 ATCH   INT_0:INT0, 9
 LRD
 ATCH   INT_1:INT1, 23
 LRD
 ENI
 LPP
 XMT    VB99, 0

 中断0
 LD     SM0.0

 RCV    VB199, 0

 中断1
 LDB=   SMB86, 2#1000
 MOVB   100, SMB34
 ATCH   INT_2:INT2, 10
 CRETI
 NOT
 RCV    VB199, 0
 中断2
 LD     SM0.0
 DTCH   10
 XMT    VB99, 0

 数据块://
 VB99   6

 
 VB100  16#AA
 VB101  16#FF
 VB102  16#1
 VB103  16#1
 VB104  16#A1
 VB105  16#F4

 VB199   7
 要求发送:  AA FF 01 01 A1 F4(校验),
 然后返回:BB FF 01   02     00    02    44
 可是我做了,只是VB200中有个 BB,其余的Vb201,VB202等都没值。请教了

最佳答案

可能你的读卡器不是问答式规约,是主动上传数据的,如果真不是问答式规约,那你的通讯口就有可能出问题了,呵呵。
  用串口软件连上你的读卡器,看看不给读卡器发数据,能不能收到数据。
  1  数据块里不用对VB199赋值了。
   2 中断1里不用再RCV
   3 先用串口软件对读卡器调试通讯
 如果是问答规约,那么中断1做以下修改
 LD     SM0.0
 MOVB    100,SMB34
 ATCH    INT2,10
 然后在主程序里对收到的数据检验

提问者对于答案的评价:

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc354376.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午1:53
下一篇 2021年7月5日

相关推荐

发表回复

登录后才能评论