📄 msp430f149-
字号:
#include <msp430x14x.h>
#define uint unsigned int
#define uchar unsigned char
uint jj;
uchar nn;
unsigned char table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void initsys(void)
{
uchar k;
BCSCTL1 &= ~XT2OFF; //开启XT2晶振
do
{
IFG1 &= ~OFIFG; // 清除振荡器失效标志
for(k=0xee;k>0;k--) //延时
{
;
}
}
while((IFG1 & OFIFG)!=0); //判断XT2是否起振
BCSCTL2 = SELM_2 + SELS; // 选择MCLK SMCLK 为XT2
} //初始化
void main(void )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
initsys();
_EINT();
TACTL = TASSEL1 + TACLR;
CCTL0 =CCIE;
CCR0 = 8000;
TACTL |= MC1; //连续计数模式;启动
P4DIR |= 0xff;
P6DIR |= 0xfc;
while(1);
}
#pragma vector= TIMERA0_VECTOR
__interrupt void Timer_A(void)
{
CCR0 += 8000;
switch(nn)
{
case 0x00:P4OUT=~table[nn];P6OUT = BIT2; break;
case 0x01:P4OUT=~table[nn];P6OUT = BIT3; break;
case 0x02:P4OUT=~table[nn];P6OUT = BIT4; break;
case 0x03:P4OUT=~table[nn];P6OUT = BIT5; break;
case 0x04:P4OUT=~table[nn];P6OUT = BIT6; break;
case 0x05:P4OUT=~table[nn];P6OUT = BIT7; break;
}
nn++;
nn=nn%6;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -