发布于 2009-09-05 08:50:03
0楼
要点一:
I、Q是io映像区,核心要点是周期刷新。输入仅在刷新读的时刻变量与物理状态是一致的。
PI、PQ是外部设备区,核心要点是读写刷新。
两个区信息刷新的快慢并不是源于前面一些同行所说从物理地址和内存地址读取的差别,而在于两种信息区刷新的方式不同。周期刷新的信息在同一刷新周期内是一致的。读写刷新的信息前后两次刷新的内容理论上是不一样的,最近一次读写的状态是最新的。
此外,两者不同点还有:映像区可以系统支持的任何存储类型访问,外部设备区不能按位(BIT)访问,其他均可。
要点二:
CPU内存配置时映像区很小,外表过程区很大。
原理上,模拟模块的数据区也可以配置定义在映像区,只是这样没有选取最合适的内存,虽不合理但可行。
数字IO配置到外表过程区是很常见的,分布I/O就是如此。只是大家通常在固定程序块里只通过读写P区刷新一次,如果需要在程序里不同地方读写P区多次刷新,也是可以的。数字IO映射到外表过程区需要转存到DB块才能实现按位访问。
要点三:
各规格CPU的过程映象区和外部设备区的地址分配不同,产品样本手册有详解数据,比如315-2CPU的映象区是0~128,外部设备区是256以后的区域。
Peripheral (I/O) area: inputs
Peripheral input byte PIB
Peripheral input word PIW
Peripheral input double word PID
Peripheral (I/O) area: outputs
Peripheral output byte PQB
Peripheral output word PQW
Peripheral output double word PQD
知其道,用其妙!