| 作者 | 主题 |
|---|---|
|
lingjing 游民 经验值:102 发帖数:43 精华帖:0 |
楼主
主题:求教关于PIW和IW的区别
既然有了PIW可以实时的采集输入数据,为什么还要IW呢?两者的读取数据的时间有什么不同?
|
|
伊默 至圣 经验值:19231 发帖数:4256 精华帖:118 |
楼
主题:回复:求教关于PIW和IW的区别
打个比如,你吃饭的时候要吃菜, 你一般都是将菜从锅里乘到碗里, 再从碗里夹着吃, 可是有时候饿得太急了,你顾不了那么多,直接就从锅里夹菜吃了。
这个PIW和IW其实最终装的都是一个东西,相当于这个“菜”, 只不过PIW是锅里的菜, 而IW是碗里的菜! 要注意了,上面的动作已经说明,直接从锅里夹菜的话,会“实时些”,菜也热一些。但是本质上还都是菜…… 下面的大侠接着这个思维再给大家继续吧。
I can do it
|
|
鹅卵石 奇侠 经验值:8868 发帖数:3548 精华帖:25 |
楼
主题:回复:求教关于PIW和IW的区别
使用IW主要是避免在运算过程中输入数据发生变化导致计算错误。
|
|
东方红一红 版主 经验值:16855 发帖数:6779 精华帖:50 |
楼
主题:回复:求教关于PIW和IW的区别
要点一:
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
知其道,用其妙!
|