📄 asm.s43
字号:
#include "msp430x22x4.h"
#include "Clock_def.h"
;用显波器来观察以下管脚
;并通过修改"Clock_def.h"文件来定义各个时钟
;P1.4---->SMCLK
;p2.0---->ACLK
;P2.1---->SMCLK
;-----------------------------------------------------------------------------
; MSP430F22x中断向量表
;-----------------------------------------------------------------------------
ORG 0FFFEh
DC16 main
;------------------------------------------------------------------------------
RSEG CODE ;程序开始
;------------------------------------------------------------------------------
main MOV.W #0600H,SP ;设置堆栈指针
stopWDT MOV.W #WDTPW+WDTHOLD,&WDTCTL ;关看门狗
#if (DCO_FREQUENCY==1)
MOV.B &CALBC1_1MHZ,&BCSCTL1 ;设定DCO为1MHZ
MOV.B &CALDCO_1MHZ,&DCOCTL
#elif (DCO_FREQUENCY==8)
MOV.B &CALBC1_8MHZ,&BCSCTL1 ;设定DCO为1MHZ
MOV.B &CALDCO_8MHZ,&DCOCTL
#elif (DCO_FREQUENCY=12)
MOV.B &CALBC1_12MHZ,&BCSCTL1 ;设定DCO为1MHZ
MOV.B &CALDCO_12MHZ,&DCOCTL
#elif (DCO_FREQUENCY=16)
MOV.B &CALBC1_16MHZ,&BCSCTL1 ;设定DCO为1MHZ
MOV.B &CALDCO_16MHZ,&DCOCTL
#endif
BIS.B #BIT4,&P1SEL ;P1.4输出SMCLK
BIS.B #BIT4,&P1DIR
BIS.B #BIT0+BIT1,P2SEL ;P2.1输出SMCLK,P2.0输出ACLK
BIS.B #BIT0+BIT1,P2DIR
#ifdef ACLK_VLOCLK
BIS.B #LFXT1S1,&BCSCTL3 ;ACLK来源VLO
#endif
#ifdef SMCLK_LFC
BIS.B #SELS,&BCSCTL2 ;SMCLK来源LFC(LFXT1CLK或VLOCLK由ACLK_VLOCLK决定)
#endif
#ifdef MCLK_XT2_OR_LFC ;MCLK时钟源选择设定
BIS.B #SELM1,&BCSCTL2
#endif
mainloop
JMP mainloop
END main
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -