主程序:
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