主程序
LD SM0.1
CALL 初始化:SBR0 //第一次初始化
初始化程序
网1
LD SM0.1
MOVB 16#09, SMB30 //通讯参数
MOVB 16#B0, SMB87
MOVB 16#0A, SMB89
MOVB 5, SMB90
MOVB 20, SMB94
ENI
ATCH 接收完成:INT0, 23 //中断初始化
MOVB 100, SMB34
ATCH 时间中断:INT3, 10
ATCH 发送中断:INT2, 9
RCV VB500, 0
网2
LD SM0.0 //返回PC的固定参数
MOVB 15, VB200
MOVB 16#2E, VB210
MOVB 16#36, VB211
MOVB 16#30, VB212
MOVB 16#0D, VB214
MOVB 16#0A, VB215
接收中断
网1
LDB= SMB86, 16#20 、、 接到结束符中断
MOVB VB500, AC0 接收数据个数传送到AC0
AB< AC0, 15 如果接收数据比15小 接收中断返回主程序
RCV VB500, 0
CRETI
NOT 接收数据比15大 把数据转移
BMB VB501, VB3001, 15
网2
LDB<> SMB86, 16#20 没有接收到接收符中断 再次启动接收指令
RCV VB500, 0
发送中断
LD SM0.0 发送中断 再次启动接收
MOVB 16#B0, SMB87
RCV VB500, 0
时间中断
LD SM0.0
INCB VB30
AB>= VB30, 20 当时间中断发送20次
MOVB 0, VB30 把接收到的数据发回PC
BMB VB3001, VB202, 7
MOVB 16#0, SMB87
RCV VB500, 0
XMT VB200, 0
程序目的是PLC定时2秒给PC发送数据。
现在PLC只能发送数据无法接收到数据、各位大神帮忙看看什么情况。