,假设这个累加结果寄存器为D5,每个周期都需要累加一次,D5需要赋初值,我程序开始给D5赋初值,我觉得第二周期D5又按初值算了是吧,根本就实现不了累加的效果,迷茫中,不知道怎么用程序实现,需要给赐教啊,谢谢
怎么会第二周期又初始值呢?很简单:DADD D5 K1 D5 加入你不将初始值mov进去的话,会一直叠加的。
如上边,s12 s22工作一次后面都在不断叠加,加入D4154是设定值,上边D4152大于D4154,可以给信号出来,或者Mov原始值进去,也可以切换其它动作。
追问需要要给D5初值,假如程序是这样的: ------ MOV K0 D5(给D5赋初值),---MOV D8030 D0(信号采集), -----add D0 D5 D5(实现累加)。 假如 这是第一次,第二次循环是不是还得返到MOV K0 D5, 这样D5又称0了啊,实现不了累加的效果了是不是,帮忙出出主意吧前辈,谢了
追答““-----add D0 D5 D5(实现累加)。 ” 有你这么累加的吗?你需要累加D0信号到D5,那么你就直接将D0改为D5呀
但D5有初值,假如程序是这样的: ------ MOV K0 D5(给D0赋初值),---MOV D8030 D0(信号采集), -----add D0 D5 D5(实现累加)。 假如 这是第一次,第二次循环是不是还得返到MOV K0 D5, 这样D5又称0了啊,实现不了累加的效果了是不是,帮忙出出主意吧前辈,谢了
追答给D5赋值用MOVP K0 D5,MOVP是脉冲执行。激活一次执行一次。那么只要激活一次就可以了。
追问若用用程序该如何实现激活一次呢
追答如果是上电激活,用M8002.
本回答被提问者采纳