发布于 2004-09-21 12:53:33
0楼
非常感谢这里的斑竹,真的太感谢你了。
请问,CPU224支持128个中断子程序,那么每个中断所允许的程序大小有限制吗?
另外,PLC的中断发生时,是否类似与微机80X86系统,先保存现场,然后从中断程序的标号中取中断服务程序的地址,再跳转到该中断程序块的代码段直到执行完后返回,再恢复现场?
(呵呵,抱歉,思维定势总受到80X86和51的架构影响。
另外,shine和yanxiao斑竹其各位前辈,今天我写了第一个STL程序,能请您指点一下吗?
三个结构,有点不太一样
之一:
//驱动步进电机运转100步,启动频率50hz(没考虑加减速运行)
//MAIN
//network1
//初始化PTO
LD SM0.1
MOVB 16#8D,SMB67 //使能PTO单段输出,时基1ms,装入脉冲数和周期
MOVW +20,SMW68 //装入周期为20ms,即50hz
MOVD +100,SMD72 //装入脉冲数100个
//network2
LD I0.0 //启动按纽按下?(为了特殊一点,假设按下后,该I0.0始终为on)
AN M0.0 //单次运行标志位,首次运行是为off,
//脉冲数输出后将跳为on
PLS 0 //输出脉冲
S M0.0,1 //当开始输出脉冲之后,此位置一。
*************************888
之二:
//驱动步进电机运转100步,启动频率50hz(没考虑加减速运行)
//MAIN
//network1
//初始化PTO
LD SM0.1
MOVB 16#8D,SMB67 //使能PTO单段输出,时基1ms,装入脉冲数和周期
MOVW +20,SMW68 //装入周期为20ms,即50hz
MOVD +100,SMD72 //装入脉冲数100个
//network2
LD I0.0 //启动按纽按下?(为了特殊一点,假设按下后,该I0.0始终为on)PLS 0 //输出脉冲
END //停止扫描
//(!请问:若停止扫描后,PTO还会输出脉冲直到100个完毕吗?
//如果能输出完,假设我关联了中断事件ATCH INT_0,19,那么输出完
//毕之后,触发中断,但因为‘end'指令已经使PLC停止了扫描,PLC将如何
//处理该中断呢?
一看头像都是小日本游戏中的人物,只好换成咱工人阶级的pp:)