📄 code.c
字号:
#include "msp430x14x.h"
#define uchar unsigned char
#define uint unsigned int
void Init(void);
char Data[6]="MSP430";
void main(void)
{
uchar i;
uint j;
WDTCTL=WDTPW+WDTHOLD; //关闭关门狗
_BIS_SR(OSCOFF);
BCSCTL1&=~XT2OFF; //XT2开启 //启动XT2振荡器,
BCSCTL1 |= RSEL0+RSEL1+RSEL2; // 选择最高不标称频率
DCOCTL = 0xE0; //DCOCLK频率最高,不利用MOD进行调整
do
{
IFG1 &= ~OFIFG; // Clear OSCFault flag
for(i=0xFF;i>0;i--); // Time for flag to set
}
while((IFG1 & OFIFG) == OFIFG); // OSCFault flag still set?
_NOP();
BCSCTL2 |= SELS+DIVS_2; //SMCLK SOURCE XT2/4=460.8KHz
Init();
while(1)
{
TXBUF1=0XFF;
while((UTCTL1&0X01)==0) ; //等待发送完毕
for(i=0;i<=6;i++)
{
TXBUF1=Data[i];
while((UTCTL1&0X01)==0) ; //等待发送完毕
}
for(j=5000;j>0;j--);
for(j=5000;j>0;j--);
for(j=5000;j>0;j--);
}
}
void Init(void)
{
P3SEL |= BIT6+BIT7;
U1CTL |= SWRST;
U1TCTL |= SSEL1; // UCLK = SMCLK = 460.8kHz
U1BR0 = 0X30; // 9600 波特率设置
U1BR1 = 0X00;
U1MCTL = 0x00;
U1CTL |= CHAR; //no Parity + 8bit+1 STOP
U1CTL &= ~SWRST;
U1RCTL = URXEIE; // Enable receive erroneous characters and clear the Error flag
ME2 |= URXE1+UTXE1; // Enable RX and TX
IE2 |= URXIE1+UTXIE1; // Enable RX Interrupt
IFG2 &= ~UTXIFG1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -