?? asm.s43
字號:
#include "msp430x22x4.h"
;定時器A比較模式實驗,主程序初始化后,關閉CPU
;用CCR0作為比較器
;時鐘源選SMCLK
;以50000個SMCLK計數脈沖作為周期
;每次計到來翻轉P1.0
; MSP430F2274
; -----------------
; /|\| XIN|-
; | | |
; --|RST XOUT|-
; | |
; | P1.0|-->LED
NAME main
PUBLIC main
;-----------------------------------------------------------------------------
; MSP430F22x中斷向量表
;-----------------------------------------------------------------------------
ORG 0FFFEh
DC16 main
ORG 0FFF2h ; 定時器CCR0中斷向量
DC16 ta0_isr
;------------------------------------------------------------------------------
RSEG CODE ; 程序開始
;------------------------------------------------------------------------------
main MOV.W #0600H,SP ;設置堆棧指針
stopWDT MOV.W #WDTPW+WDTHOLD,&WDTCTL ;關看門狗
MOV.B &CALBC1_1MHZ,&BCSCTL1 ;設定DCO為1MHZ
MOV.B &CALDCO_1MHZ,&DCOCTL
MOV.W #TASSEL1+TACLR,&TACTL ;定時器A時鐘源為SMCLK
MOV.W #CCIE,&CCTL0 ;CCR0中斷使能
MOV.W #50000,&CCR0 ;計數值
BIS.B #BIT0,&P1DIR ;P1.0輸出方向
BIS.W #MC1,&TACTL ;啟動定時器A為連續計數模式
EINT ;開總中斷
mainloop
BIS.W #CPUOFF,SR ;關CPU
NOP ;用于調試
;------------------------------------------------------------------------------
ta0_isr;
;------------------------------------------------------------------------------
XOR.B #BIT0,&P1OUT ;翻轉P1.0
ADD.W #50000,&CCR0 ;重設比較值
RETI ;中斷返回
END main
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -