xbs321
级别: 略有小成
精华主题: 0
发帖数量: 83 个
工控威望: 208 点
下载积分: 686 分
在线时间: 15(小时)
注册时间: 2008-08-25
最后登录: 2019-01-10
查看xbs321的 主题 / 回贴
楼主  发表于: 2008-09-02 13:57
在fx系列中假如我有三个4ad模块,放在第三个拓展模块开始往后的位置,我读他们的时候还是用from k0 k5 d0 k4行不?
还有在模块初始化部分可不可以只是开机时初始化一次,并且用一个to指令初始化三个模块?
sjm213
有小知识,无大学问。
级别: 论坛版主

精华主题: 7 篇
发帖数量: 5212 个
工控威望: 7436 点
下载积分: 159043 分
在线时间: 3173(小时)
注册时间: 2007-11-21
最后登录: 2024-12-25
查看sjm213的 主题 / 回贴
1楼  发表于: 2008-09-02 22:20
FROM K0 K5 D0 K4

这个指令里第一个K0位置上的Kn代表模块号为n;第二个K5位置上的Kn代表BFM中的第n号缓存区;D0代表要存放的地址;最后的K4位置上的Kn代表传送的点数。

这样,在第三个扩展模块之后跟着三个特殊模块的话,其模块号分别是3、4、5;所以在读取的时候分别要把第一个位置上的K0改成K3、K4、K5。

初始化程序可以只执行一次,但一个TO指令只能初始化一个模块,这样就要像读取指令一样,需要分别把模块号改过来。

===========================================================

前面的模块为非特殊模块时,模块号依次为0、1、2,则无需修改
[ 此帖被sjm213在2009-02-07 15:14重新编辑 ]