作者 | 主题 |
---|---|
昔日如诗 侠圣 经验值: 3575 发帖数: 733 精华帖: 3 |
楼主 2020-12-31 13:27:18
主题:用ROR指令实现“一个键,按一下是开,再按一下是关”这样的循环 经常看到”一个键,按一下是开,再按一下是关”这样的话题,我觉得都有些麻烦。用SR指令实现这个功能时会很烧脑,用SCL语句的话更是少有人懂。我这里教大家一个最简单易懂的,直接上图: 先是给MB100赋值170,再是用ROR指令将这个值盘成一个圆。170写成二进制是10101010,0和1相间出现,因而这个圆上的数值就是0和1相间。 每按一下“启动/停止”按钮M0.0,数值10101010就转一下,这样,对MB100里每一个位而言,这一次得到1,下一次就得到0,如此循环。 我们随便取一个位,比如M100.0接Q0.7,就能实现一个键按一下是开再按一下是关的功能了。 |
Zaxife 至圣 经验值: 12573 发帖数: 2503 精华帖: 31 |
1楼 2020-12-31 14:50:35
主题:回复:用ROR指令实现“一个键,按一下是开,再按一下是关”这样的循环 感觉这样反而更浪费RAM...而且更不直观?也更不好操作!还是RS好用,开的走S、关的走R。只要R有效S就安分的不作乱。 |
weiyt 奇侠 经验值: 9605 发帖数: 1550 精华帖: 14 |
2楼 2020-12-31 14:56:24
主题:回复:用ROR指令实现“一个键,按一下是开,再按一下是关”这样的循环 实现方法很多,无非就是语句多少问题,以前论坛讨论的是指令最精简的方法,如果不追求极致,用哪种方法实现都一样。 |
昔日如诗 侠圣 经验值: 3575 发帖数: 733 精华帖: 3 |
3楼 2020-12-31 15:19:10
主题:回复:用ROR指令实现“一个键,按一下是开,再按一下是关”这样的循环 你看我另一个贴子后,就会发现ROR是多么的直观 http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1663841&b_id=50&s_id=0&num=1#anch |
Zane 至圣 经验值: 76180 发帖数: 19322 精华帖: 377 |
4楼 2021-01-01 16:40:14
主题:回复:用ROR指令实现“一个键,按一下是开,再按一下是关”这样的循环
Zane
注册自动化系统工程师
Always save before download
|
昔日如诗 侠圣 经验值: 3575 发帖数: 733 精华帖: 3 |
5楼 2021-01-04 10:00:12
主题:回复:用ROR指令实现“一个键,按一下是开,再按一下是关”这样的循环 可以清零。我们可以用M300.1(而非M300.0)做为Q输出上级指令。 程序运行到中途,我们已经不知道MB300的M300.1是在1还在0的情况下,要停止,就将此寄存器清零,要启动,就给它赋值170 |
DeepChen 侠士 经验值: 1278 发帖数: 192 精华帖: 0 |
6楼 2021-01-18 11:50:26
主题:回复:用ROR指令实现“一个键,按一下是开,再按一下是关”这样的循环
DeepCCC
|
芳季 至圣 经验值: 66564 发帖数: 14742 精华帖: 100 |
7楼 2021-01-18 12:25:27
主题:回复:用ROR指令实现“一个键,按一下是开,再按一下是关”这样的循环 你找找我那叫《花拳绣腿之alt指令》才说什么叫直观吧。 |
flylovemore 侠圣 经验值: 2170 发帖数: 465 精华帖: 0 |
8楼 2021-04-08 16:51:16
主题:回复:用ROR指令实现“一个键,按一下是开,再按一下是关”这样的循环 alt交替指令三菱、台达的才有吧,西门子没 这个功能指令
以不变应万变
|