quote:以下是引用黄飞鸿在2009-09-03 23:48:19的发言:
自已做一个吧,很简单,具体思路如下:
1、建立一个变量比如Turn,用来存储下一台开启的泵编号,从0-2.
2、建立一个双字指针,比如,DID10用来存放某个泵的地址。(寄存器间接寻址)。
3、根据Turn的值,决定是把哪一台泵放在指针中。比如为0时,把1#泵的地址放入指针。
4、每次有开泵请求时,开启指针中的泵,即DIX[DID10]。
4、每次有泵停止时,即下降沿,对Turn加1,如果大于2则赋0.
使用间接寻址方法做简单,但是对于入门者理解上有点难度,且只能使用语句表编程,其实使用梯形图做也很简单就是程序做的没有简洁,先做好三个水泵工作的顺序功能图,根据功能图编程就很简单,可以使用梯形图做,简单明了。