導航:首頁 > 編程語言 > 定時器a程序

定時器a程序

發布時間:2024-03-18 00:37:24

⑴ 單片機定時器的匯編語言程序編程

1、
ORG 0000H
AJMP MAIN
ORG 0100H
MAIN: MOV R2,#00H
MOV TMOD,#20H
MOV TH1,#231
MOV TL1,#231
SETB P1.2
SETB TR1
HERE: JNB TF1,HERE
PT_1: CJNE R2,#07H,PT11
SETB P1.2
MOV R2,#00H
CLR TF1
AJMP HERE
PT11: CLR P1.2
INC R2
CLR TF1
AJMP HERE
END
2、
ORG 0000H
AJMP MAIN
ORG 000BH
AJMP IT_0
ORG 001BH
AJMP IT_1
ORG 0100H
MAIN: MOV TMOD,#51H
MOV TH1,#0FCH
MOV TL1,#18H
MOV IE,#10001010B
SETB TR1
SJMP $
IT_1: CLR TR1
MOV TH0,#0FCH
MOV TL0,#18H
SETB TR0
RETI
IT_0: CLR TR0
MOV TH1,#0FCH
MOV TL1,#18H
SETB TR1
RETI
END

⑵ msp430單片機用定時器A測量方波相位差的程序如何編寫真的很急!拜託了!

這個簡單,把兩個方波進行異或,用430單片機的定時器A測量異或後的方波的脈沖寬度,在對測量數據進行簡單的計算就可得到相位差。。。具體程序如下:
P1SEL |= BIT2; //設置P1.2埠為功能模塊使用
TACTL |=TACLR;
TACTL = TASSEL_2+TAIE+MC1; //定時器A時鍾信號選擇SMCLK 8M,清計數寄存器,使能中斷,同時設置定時器A計數模式為連續增計模式
CCTL1 =CM0+SCS+CAP+CCIE; //輸入上升沿捕獲,同步,capture模式 CCI0A為捕獲信號源,中斷使能
//TACCTL1 &=~CCIFG; //清CCR2 的標志位
//中斷允許
_EINT();
LPM0;
}
#pragma vector=TIMERA1_VECTOR //定時器A中斷處理
__interrupt void timer_a(void)
{
switch(TAIV) //向量查詢
{ case 2: //捕獲中斷
if(CCTL1&CM0) //上升沿
{
CCTL1=(CCTL1&(~CM0))|CM1; //更變設置為下降沿觸發
start=TACCR1; //記錄初始時間
overflow=0; //溢出計數變數復位
}
else if(CCTL1&CM1) //下降沿
{
CCTL1=(CCTL1&(~CM1))|CM0; //更變設置為上升沿觸發
end=TACCR1; //用start,end,overflow計算脈沖寬度
TACTL &=~TAIE; //不使能中斷
CCTL1 &=~CCIE;
P1SEL &=~BIT2;
_DINT();
LPM0_EXIT;
}
break;
case 10: //定時器溢出中斷
overflow++;
break; //溢出計數加1
default:break;
}
}

然後再對得到的start,end,overflow處理計算即可。。。

⑶ 求一個用MSP430單片機編程的到10秒單片機進入休眠狀態,到了20秒後又能喚醒的程序。

/*初始化定時器a*/
main()
{ CCR0 = 32767; //設置定時器A的中斷時間為1S
TACTL = TASSEL_1 + MC_1; //計數時鍾ACLK, 增計數模式8分頻+ID_3
CCTL0 |= CCIE; //使能CCR0比較中斷
uchar miao=20;
while(1){
if(miao==10) LPM1;

}
}
/*******************************************
函數名稱:_ISR
功 能:定時器A的中斷服務函數
參 數:無
返回值 :無
********************************************/
#pragma vector=TIMERA0_VECTOR
__interrupt void TimerA_ISR(void)
{
if(miao==0) LPM1_EXIT; //退出低功耗模式
miao--;

}

閱讀全文

與定時器a程序相關的資料

熱點內容
股票數據放哪裡 瀏覽:576
m格式庫文件 瀏覽:279
天際通數據服務怎麼開票 瀏覽:430
寫小說發哪個網站比較好 瀏覽:244
小米電視3藍牙文件路徑 瀏覽:111
shell讀取文件值 瀏覽:909
文件夾路徑欄消失 瀏覽:795
律師哪些業務不能代替大數據 瀏覽:952
lol哪些文件可以刪除 瀏覽:701
匯編程序中del是什麼意思 瀏覽:183
幼兒園免費網站模板下載 瀏覽:210
w619線刷教程 瀏覽:759
怎麼培養編程思想 瀏覽:697
手機捆綁app的軟體怎麼卸載 瀏覽:32
vb編程器有什麼用 瀏覽:999
excel如何分列數據與文字 瀏覽:884
512網路病毒 瀏覽:994
java調用google地圖api介面 瀏覽:726
文件管理圖片小窗 瀏覽:599
顯卡數據怎麼設置 瀏覽:557

友情鏈接