使用MSP430G2553內部PWM控制風扇遇到問題

2019-03-24 10:06发布

Hi , 各位前輩



今天小弟想使用MSP430內部的PWM來控制風扇的轉速,但是風扇連轉都無法轉,研究了兩三天還是毫無頭緒,所以上版來請教一下前輩們。

目前線路圖如下:

Fan_html_6f5d24fe.gif

線路簡單來說就是由MSP430G2553 , P1.2拉出一根PWM控制訊號,來連接到後面的達寧頓線路第一級,接著末端負載接著一個5V的風扇,希望能夠透過改變PWM的Duty cycle控制第一級輸入端的電壓,改變IB電流,進而去控制末端風扇的轉速。



目前我去改變PWM的Duty cycle可以看到TP1的電壓量測點有明顯的改變,但是風扇卻連轉都不轉。



PWM的Code如下:

  1. #include <msp430g2553.h>
  2. void main(void)
  3. {
  4. WDTCTL = WDTPW + WDTHOLD; // Stop WDT
  5. P1DIR |= (BIT0|BIT1|BIT2); // P1.2 output
  6. P1SEL |= BIT2;
  7. P1SEL |= (BIT0|BIT1|BIT2); // P1.2 TA1 otions

  8. CCR0 = 300; // PWM Period/2
  9. CCR1 = 150; // CCR1 PWM duty cycle
  10. CCTL1 = OUTMOD_6;
  11. TACTL = MC_1; // up mode

  12. _BIS_SR(LPM3_bits); // Enter LPM3
  13. while(1);
  14. }
复制代码請問各位前輩有任何建議嗎?是不是有地方有錯誤~麻煩大力的鞭一下,謝謝。


此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
数码小叶
2019-03-24 16:42
你先试下直接5v控制先,知道下最小控制条件,不然在那盲目写程序

一周热门 更多>

相关问题

    相关文章