设置S7-300地址寄存器地址的两种方法

   2024-09-13 建材之家540
核心提示:OPN DB100L 0LAR1L 3500ITD RLD 3+AR1 L DBW [AR1, P#0.0] //读出DB100.DBW3500但是当地址>4095后,由于4096的值 RLD 3 后所的值已经大于等于32768造成AR1中的值错误 (很大的数值)。所以此时左移3位已经不能获得正确的地址值。请教各位有什么其它解决方法?谢谢。 答:程序可以简化为下图中的程序:L
OPN DB100
L 0
LAR1
L   3500
ITD  
RLD   3
+AR1 
L DBW [AR1, P#0.0]   //读出DB100.DBW3500
但是当地址>4095后,由于4096的值 RLD 3 后所的值已经大于等于32768
造成AR1中的值错误 (很大的数值)。
所以此时左移3位已经不能获得正确的地址值。
请教各位有什么其它解决方法?谢谢。

答:程序可以简化为下图中的程序:
L#4500是双字常数,这样就没有4095的限制了。

地址指针常数P#4500.0的字节地址为4500,字节内的位地址为0,P#4500.0相当于3500与8的乘积(以位为单位的整数)。RLD  3(左移3位)相当于乘以8。

 
举报收藏 0打赏 0评论 0
更多>相关评论
暂时没有评论,来说点什么吧
更多>同类电工资讯
推荐图文
推荐电工资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  版权声明  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  帮助中心  |  网站地图  |  违规举报
粤ICP备14017808号粤公网安备 44030402000745号