找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
既然你对VB侧的通讯没问题,那么我只写一个PLC侧的接收程序供你参考。
假如VB向PLC发送的一帧为N个字节,你需要存储M帧数据,那么就将中断程序网络2里面的两个40改为M*N即可。
主程序:
LD SM0.1
MOVD &VB4, VD0
MOVB 0, MB0
MOVB 9, SMB30
ATCH INT_0, 8
ENI
中断0程序:
网络1:
LD SM0.0
INCB MB0
MOVB SMB2, *VD0
INCD VD0
网络2:
LDB= MB0, 40
MOVB 0, MB0
-D +40, VD0
假如一帧为10个字节,你需要存储3帧数据,那么就将40改为30.
从VB4到VB13为一帧,从VB14到VB23为下一帧,从VB24到VB33为下下帧。
然后你就可以对数据比较处理了。
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!