還是51驅(qū)動(dòng)L9110控制一個(gè)直流電機(jī),用兩個(gè)獨(dú)立鍵盤控制電機(jī)的開啟和停止,開啟時(shí)加了個(gè)PWM調(diào)速,程序如下:
#include <reg52.h> #define uchar unsigned char sbit INA=P2^0; sbit INB=P2^1; sbit S1=P3^4; sbit S2=P3^5; uchar A; void main() { while(1) { if(S1==0) //此處加了個(gè)PWM調(diào)速 { for(A=0;A<=255;A--) { if(A<250) { INA=1; INB=0; } else { INA=0; INB=0; } } } if(S2==0) { INA=0; INB=0; } } }
問題是:在不加這個(gè)PWM調(diào)速的程序時(shí),按S1鍵電機(jī)轉(zhuǎn)動(dòng),按S2鍵電機(jī)停止,可是加了這個(gè)PWM調(diào)速后,按S1鍵開始轉(zhuǎn)動(dòng)后,按S2鍵就沒有作用了,一直轉(zhuǎn)動(dòng),不知道為什么? 煩請(qǐng)各位幫看下程序,謝謝!
|