发布于 2010-12-05 14:46:48
6楼
请看以下程序:
LD SM0.0
MOVB 16#FF, MB0 //将16进制数 FF 放入MB0中
LD SM0.1
FOR VW100, +1, +8 //设置一个8次的循环,只执行一次
LD SM0.0
SRB MB0, 1 //右移MB0中的数据,将每一位移到M0.0中
LD M0.0
=I Q0.0 //将M0.0立即输出到Q0.0
LD SM0.0
FOR VW101, +1, +1000 //空循环1000次
NEXT
LD SM0.0
=I Q0.1 //Q0.1输出1,时钟信号上升
LD SM0.0
FOR VW101, +1, +1000 //空循环1000次
NEXT
LD SM0.0
NOT
=I Q0.1 //Q0.1输出0,时钟信号下降
LD SM0.0
FOR VW101, +1, +1000 //空循环1000次
NEXT
NEXT //结束8次的循环
LD SM0.1
=I Q0.2 //Q0.2输出锁存使能信号,只执行1次
LD SM0.0
FOR VW101, +1, +1000 //空循环1000次
NEXT
LD SM0.0
END //程序结束
由几个问题需请教:
1 用右移还是左移,才能将MB0中的数据逐位移到M0.0中
2 整个过程的时序,对不对?
3 我刚接触PLC,整个思路有不符合规则或不规范的,请指出来。
谢谢!