上一篇文章中给大家介绍了S7-1200 PLC的存储器地址包括输入I、输出Q、位存储器M、数据块DB,以及本地或临时存储器L。
![1d9a5a89d190ce7a475018f453a1f7b6.png](https://i-blog.csdnimg.cn/blog_migrate/41e1bdc80eccbf0a18cc6ed453aacf94.jpeg)
那么这些存储器的大小是怎么进行表示的呢?
这是这一篇文章中所要告诉大家的,其实每个存储器的大小都是以字节为单位进行表示的,存储器中的每一个存储单元都有一个唯一的地址,用户程序利用这些地址去访问存储单元的数据。
访问的寻址方式主要有按位寻址、按字节寻址、按字寻址和按双字寻址。其实这跟S7-200/200 SMART PLC中的寻址方式是一样的,只不过我们S7-1200中存储器有 DB块,对于DB块中的地址寻址格式是需要另外注意的,这也是我们学习的一个重点。
下面小编分别给大家介绍一下吧。
按位寻址
按位寻址的格式是由存储器标识符、字节地址、分隔符、字节的位号这四个部分组成的,什么是存储器标识符?
比如说上篇文章介绍的输入I、输出Q、位存储器M等,就是使用存储器的字母I/Q/M。
字节地址表示的是第几个字节,是直接用数字表示的。
分隔符是一个固定的小的黑点表示。
字节的位号表示的是要访问的字节中的哪个位。
因为一个字节是8个位,分别是0~7,所以字节的位号可以是0~7的任意一个数字。比如M3.3,这是按位寻址的,访问的是M存储器的第 3个字节中的bit3位(从第0个位/字节开始数起)。
![9051d0e224f4f1f7b569a4619f28f261.png](https://i-blog.csdnimg.cn/blog_migrate/e567c4e958f128e265b2500b274c3cd7.jpeg)
按字节、字、双字寻址
按字节、字和双字寻址的格式都是一样的,都是由存储器标识符、字节/字/双字的表示符B/W/D、字节的起始地址这三个部分组成的。
比如以输出过程映像存储器为例,如果将字节3的0~7位都描黑,描黑的色块代表访问的地址是QB3。我们还可能会看到这样的地址:MW10、QW2、ID0等。
![9a10ab9950ab0d86b26b5f16fd0ad555.png](https://i-blog.csdnimg.cn/blog_migrate/b34afd2194780446fe661228129cf882.jpeg)
在CPU中我们能够访问的最小的地址是位,8个位可以组成1个字节,2个字节组成1个字,2个字可以组成1个双字。
比如说QB0包含了Q0.0~Q0.7这8个位,QW0包含了QB0和QB1这2个字节,其中QB0是高字节、QB1是低字节,QD0包含了QW0和QW2这2个字,包含了QB0、QB1、QB2、QB3这4个字节。
DB块中地址的寻址格式
对于DB块,如果使用的优化访问的块,那么在对DB块寻址时是通过符号寻址的,如果使用的是非优化的访问块,那么DB块中建立的变量都会有一个对应的绝对地址。我们使用的时候需要注意的是,对于DB块的访问,在一个程序中可以添加多个DB块,所以在访问时候需要在访问的地址前面加上DB块的名称。
比如访问DB1中的第0个字节的第0个位,地址应该是DB1.DBX0.0;访问DB1中的第1个字节,地址为DB1.DBB1;访问DB1中的第2个字,地址为DB1.DBW2;访问DB1中的第4个字,地址为DB1.DBD4。
很显然,我们看到地址中的DB1是DB块的名称,后面用小黑点间隔开,后面的地址就是DB+X/B/W/D+数字的形式就可以了。
这就是S7-1200 PLC存储区的寻址方式,我们要重点掌握DB块中地址的寻址格式哦。可能在刚开始接触看到这样的地址会有点陌生,但是其实自己也可以随便写个地址去确定它到底是访问的那个地址,用的多了也就熟悉了哦~
(技成培训网原创,作者:蔡慧荥,未经授权不得转载,违者必究!)
往期推荐:
西门子S7 200、1200常见问题解答
西门子系列1200 200、200 SMARTPLC常见问题
初学小白,首先需了解S7-1200 PLC的程序结构
那么,这次的学习分享就到这里了,欢迎评论区留言并转发,下期精彩内容请关注!
⇩领取资料