登录
首页 单片机论坛
回帖 发帖
正文

主题:请教一个非常简单的起保停程序问题

点击:1714 回复:16

初学单片机想写一个起保停电路,开始觉得很简单(因为以前写过PLC的),后来自己写了发现单片机的扫描和PLC的不一样不能像PLC的去写,就是我写了一个按键去置位一个位M0,while(M0)然后像让下面的程序在这个WHILE里面一直循环,,然后我在用另一个按键去复位M0就可以这样,但是现实中单片机去了执行WHILE里面的程序就不会跳出来执行扫描我另外一个按键了,,所以停不了这样
20-03-01 18:06
单片机的扫描和PLC的不一样

按PLC的扫描写单片机是很好的。因为PLC是一群单片机高手搞出来,让大家更易用。
用 if...else 语句.
最后修改:2020/3/1 20:09:24
20-03-01 19:26
请问这个语句语法是怎样的,我只会FOR IF WHILE 这几个简单的语句
20-03-01 21:41
请问这个语句语法是怎样的,我只会FOR IF WHILE 这几个简单的语句
认真看你手上的书,他们比我水平应该高很多。表情
20-03-02 09:19

引用 51477工控迷 在 2020/3/1 21:41:01 发言【内容省略】

不考虑按钮抖动的情况下:
void main()
{
while(1){
if (!startButton && motor && stopButton)
motor=0;
if (!stopButton && !motor)
motor=1;
}
}
Good Luck~
20-03-02 10:17
停止写到while里面
20-03-02 10:20
我觉得,应该把逻辑程序先写完,然后再把这整个的程序包进去,写上循环执行就行了,PLC就应该是这样搞的吧!单片机还需要写watchdog的程序,还需要写错误后执行的程序,要不然,就死循环了!
20-03-02 12:16
我看的是哪本红色的郭天祥写的表情
20-03-02 13:24
这个我也试过,,写在里面的话要执行完上面的程序才能去执行停止,所以这样也是不行
20-03-02 13:25
多谢了,我回去试试这个
20-03-02 13:26

上一页下一页

工控新闻

更多新闻资讯