這個題目的要求是用msp430f149模擬乙個訊號發生器,訊號發生器的頻率在100-1000hz,通過按鍵可以實現每次加減100hz,另外加入串列埠通訊,還可以通過pc機傳送來的數值,將頻率調整為相應的頻率值。
訊號的產生用到的是timera 來產生pwm波,通過控制週期從而達到控制頻率的目的。
以下是**:
#include "msp430x14x.h"
#include "config.h"
#include #include int flag=0;
uchar key;
unsigned int a=5;
//unsigned int b=5;
uchar string[3], j = 0;
void timera_init(void) //連續計數模式,計數到0xffff產生中斷
void set()
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 10:
break;
case 9 :
break;
case 8:
break;
case 7:
break;
case 6:
break;
case 5:
break;
/*default:break; */
}}void uart_init()
#pragma vector=uart0rx_vector
__interrupt void uart0_rx_isr(void)
#pragma vector = timera1_vector
__interrupt void timer_a(void)
}void keyport_init()
uchar key_scan(void)
break;
case 0x0d:
break;
}
}else
return key;
}void main(void)
delay_ms(300);
a--;
set();
}break;
case 2:
delay_ms(300);
a++;
set();
}break; }}
}}
有錯誤的話還請路過的大佬們指正。。。
MSP430微控制器的中斷
中斷是msp430微處理器的一大特色,有效地利用中斷可以簡化程式和提高執行效率。msp430的幾乎每個外圍模組都能夠產生中斷,為msp430針對事件 即外圍模組產生的中斷 進行的程式設計打下基礎。msp430在沒有事件發生時進入低功耗模式,事件發生時,通過中斷喚醒cpu,事件處理完畢後,cpu再次進...
MSP430微控制器 中斷服務
430的中斷是按照下圖1的優先順序順序定義的,有三種中斷 1.系統重置 2.不可遮蔽中斷 nmi 3.可遮蔽中斷。圖1.中斷優先順序 部分具體的中斷優先順序由高到低為 port2 vector 1 2u 0xffe2 port 2 port1 vector 4 2u 0xffe8 port 1 ti...
MSP430教程8 MSP430微控制器復位電路
msp430 微控制器系統復位電路 從上msp430 系統復位電路功能模組圖中可以看到了兩個復位訊號,乙個是上電復位訊號 por power on reset 和上電清除訊號 puc power up clear por 訊號是器件的復位訊號,此訊號只有在以下的事件發生時才會產生 器件上電時。rst...