MSP430單片機應(yīng)用之定時器、PWM
1。定時器使用查詢和中斷兩種方式。大多數(shù)邏輯芯片輸出0的能力大于輸出1的能力。
(1)查詢方式:TMSEL決定看門狗的工作模式,置一,看門狗工作在定時模式。SSEL選擇看門狗定時器的時鐘源。SSEL置一。IS0IS1決定了看門狗定時器的輸出頻率。(注意:使用查詢方式時候要清除中斷標(biāo)志)
main()
{
...
while(True)
{
if(IFG1&0x01)
{
P1OUT ^= 0x01;//翻轉(zhuǎn)狀態(tài)
IFG &=0xfe;//清除中斷標(biāo)志位
}
}
}
(2)中斷方式:WDTCTL與查詢方式相同設(shè)置,另外需要置位中斷允許位(WDTIE,位于IE1.0)使得單片機能夠響應(yīng)這一中斷。
#pragma vector=WDT_VECTOR
__interrupt void WDT_ISR()
{
P1OUT ^=0x01;
}
main()
{
...
while(True);
}
2.PWM(用定時器A 實現(xiàn))
(1)可用提高頻率的方法來取得DA的效果,但是有些場合仍不能滿足要求,這要就需要一個積分電路來獲得理想的DA效果
(2)對TA的設(shè)置:比較/捕獲模塊控制寄存器:捕獲比較寄存器CCRx.
注意:輸出PWM的周期應(yīng)遠小于積分電路的積分常數(shù)。提高DA精度CCR0不宜過小。