51单片机2个按钮逻辑设计http://www.51hei.com/bbs/forum.php?mod=viewthreadtid=165521page=1#pid720113
生活随笔
收集整理的這篇文章主要介紹了
51单片机2个按钮逻辑设计http://www.51hei.com/bbs/forum.php?mod=viewthreadtid=165521page=1#pid720113
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
兩個開關沒有順序,先觸發誰,就執行下面的結果,例如如果1執行完后再次觸發K1,就繼續1的功能,如果是再次觸發K2,就執行K2的功能,同理2執行也是一樣的。可能我描述有點問題,就是一個電機正反轉,觸發K1,電機正轉,電機到了K2的位置,觸發一下K2,電機就停止了,這個時候觸發K1還是正轉,如果觸發K2就是反轉,到達對面觸發開關就停止。
#include <reg52.h> sbit IN1 = P3^4; sbit IN2 = P3^5; sbit Tin= P2^1; sbit Qi = P2^2; bit k=0, x=0; /*兩個開關沒有順序,先觸發誰,就執行下面的結果,例如如果1執行完后再次觸發K1,就繼續1的功能,如果是再次觸發K2,就執行K2的功能,同理2執行也是一樣的。http://www.51hei.com/bbs/forum.php?mod=viewthread&tid=165521&page=1#pid720113*/ void main() {while(1){if(!k){if(!Qi&&Tin){k=x=1;while(!Qi);}if(Qi&&!Tin){k=1;x=0;while(!Tin);}}else{if(x){IN1=1;IN2=0;}else{IN1=0;IN2=1;}if(!Qi||!Tin){k=0;IN1=IN2=0;while(!Qi||!Tin);}}} }?
我只保證我的邏輯思路代碼通過驗證是正確執行的并符合提問,做了仿真同時用2個LED指示作為驗證電的通斷,而不保證仿真中的電機轉子轉動慣性及你實際電機轉子轉動的原因是蝦米.
總結
以上是生活随笔為你收集整理的51单片机2个按钮逻辑设计http://www.51hei.com/bbs/forum.php?mod=viewthreadtid=165521page=1#pid720113的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Matlab imnoise函数的说明
- 下一篇: php表决器代码,三人表决器:VHDL源