指针在接口中的用法

本文详细介绍了指针在西门子PLC中的应用,包括16位和32位指针的分类及寻址方式,地址寄存器寻址的内部地址和交叉区域寻址,以及Pointer和ANY指针的处理方法和应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

指针在接口中的用法

指针在西门子的PLC中有很重要的地位,本文就部分用法进行记录


指针的大致分类

16位指针

  • 16位的指针主要用于定时器、计数器、程序块的寻址。
    • 例如,可以将一个数字1放入MW0里面,那么T[MW0]即是表示T1,而C[MW0]即是表示C1,FB[MW0]即是表示FB1,FC[MW0]即使FC1,DB[MW0]即使DB1。
    • 此十六位的指针会根据MW0的值不同,而改变寻址的定时器、计数器、程序块的不同。

32位指针

  • 32位的指针主要用于I、Q、M、L、DB块等寄存器中的位,字节,字和双字等的寻址。
    • 一般的将其放在MD或者是LD里面。
    • 在32位指针中,第3位到第18位为需要操作的数据的字节部分的数值
    • 在32位指针中,第0位到第2位为需要操作的数据的位的部分的数值
    • 在32位指针中,第19位到31位为保留位
    • 当对某个数据以字节、字、双字等进行操作寻址时,指针的第0位到第3位必须要为0,这是语法规定
    • 例如,如果将P#1.0放入MD10中,那么对M1.0操作为M[MD10],对MB1操作为MB[MD10],对MW1操作为MW[MD10],对MD1操作为MD[MD10]。而对DB块中进行寻址,就需要用到指令
      • OPN DB1
      • L DBB[MD10]
      • T MB20
        该指令即是把DB1.DBB1中的值送入到MD20中。

地址寄存器寻址

地址寄存器寻址分为内部地址寻址和交叉地址寻址

内部地址寻址
  • 内部地址寻址部分,基本上可以将地址寄存器相当于是32位的指针寻址
    • 内部地址寄存器的寻址规则:
      • 语法定义:地址标识符[AR1,地址偏移量]
      • 例如,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值