quote:以下是引用0不是1在2011-02-11 10:33:53的发言:
楼主的疑惑是为什么开中断只执行了一次,和中断程序怎么返回?
开中断只需执行一次就一直打开了,除非你再执行一个关中断才关闭。
中断子程序是由中断条件激活的,激活过程中CPU会保存当前程序的状态,如果没有比该中断优先级更高的中断响应,则会完整的将本中断程序执行结束返回。返回到中断发生时的断点,恢复暂存数据后继续顺序执行程序。
这个回答很不错啊。
再就是200的调用子程序和300调用功能块是不一样的。
200调用子程序就算条件不满足了也会一直调用;你用sm0.1调用子程序,实际上并不会只调用一个周期而是一直在调用;
300的就是功能块前面条件满足就调用,不满足就不调用。