欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
MSP430單片機(jī) 定時(shí)器TA計(jì)數(shù) 程序
[打印本頁]
作者:
51hei單片
時(shí)間:
2016-3-14 18:55
標(biāo)題:
MSP430單片機(jī) 定時(shí)器TA計(jì)數(shù) 程序
本程序是《MSP430系列單片機(jī)系統(tǒng)工程設(shè)計(jì)與實(shí)踐》書里面的源碼,(包含工程文件 (例2.8.21)))完整例程下載:
http://www.raoushi.com/bbs/dpj-46245-1.html
‘
關(guān)于本程序的詳細(xì)解說大家可以下載電子書點(diǎn)擊上圖即可
#include <msp430x42x.h>
#include "LCD_Display.h"
unsigned long int Freq;
unsigned int TA_OverflowCnt; //TA溢出次數(shù)存放變量
void main( void )
{
WDTCTL = WDTPW + WDTHOLD; // 停止看門狗
FLL_CTL0 |= XCAP18PF; // 配置晶振負(fù)載電容
P1DIR &=~BIT5; // P1.5(TACLK)作為輸入引腳
P1SEL |= BIT5; // 允許第二功能,作為TACLK輸入
BTCTL = BTDIV+BT_fCLK2_DIV128; // BasicTimer 設(shè)為1秒1次中斷
IE2 |= BTIE; // 允許BasicTimer中斷
LCD_Init();
_EINT(); // 允許總中斷
while(1)
{
LPM3; //休眠,等待被BasicTimer喚醒
//-------------------------以下代碼每秒運(yùn)行一次------------------
Freq=TA_OverflowCnt*65536 + TAR; // 讀取上次TA計(jì)數(shù)值及溢出次數(shù),計(jì)算頻率。
TA_OverflowCnt=0; // 溢出次數(shù)清零
TACTL = TASSEL_0 + MC_2 + TAIE + TACLR; // TA清零并重新開始計(jì)數(shù)
LCD_DisplayLongNumber(Freq);
}
}
#pragma vector = BASICTIMER_VECTOR
__interrupt void BT_ISR(void) // 1秒一次中斷(由BasicTimer所產(chǎn)生)
{
__low_power_mode_off_on_exit(); // 喚醒CPU
}
#pragma vector=TIMERA1_VECTOR //為測量大于65536Hz頻率,計(jì)數(shù)溢出中斷
__interrupt void TA_ISR(void)
{
switch( TAIV )
{
case 2: break;
case 4: break;
case 10: TA_OverflowCnt++; //TA每次溢出,溢出次數(shù)變量+1
break;
}
}
復(fù)制代碼
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1