5. 编程
在OB1 中调用FC1 和FC2,FC1 和FC2 的位置如右图,具体程序如下:
参数含义:
CPLADDR:CP342-5 的地址。
SEND :发送区,对应从站的输出区。
RECV:接收区,对应从站的输入区。
DONE:发送完成一次产生一个脉冲。
NDR: 接收完成一次产生一个脉冲。
ERROR:错误位。
STATUS:调用FC1,FC2 时产生的状态字。
DPSTATUS:PROFIBUS-DP 的状态字节。
从上面我们可以看出,MB20,MB21 对应从站输出的第一个字节和第二个字节,MB22,MB23 对应从站输入的第一个字节和第二个字节。连接多个从站时,虚拟地址将向后延续和扩大,调用FC1,FC2 只考虑虚拟地址的长度,而不会考虑各个从站的站号。如果虚拟地址的开始地址不为0,那么调用FC 的长度也将会增加,假设:虚拟地址的输入区开始为4,长度为10 个字节,那么对应的接收区偏移4 个字节相应长度为14 个字节,接收区的第5 个字节对应从站输入的第一个字节,如接收区为 P#M0.0 BYTE 14 ,MB0~MB13,偏移4 个字节后,MB4~MB13 与从站虚拟输入区一一对应。编完程序下载到CPU 中,通讯区建立后,PROFIBUS 的状态灯将不会闪烁,例子程序参见光盘“ PROFIBUS ” 目录下的项目名“ CP342-5_MASTER”。
注意:
本文关键字:暂无联系方式PLC通信,plc技术 - PLC通信