📄 main.cpp
字号:
#include <msp430x14x.h>
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // 停止看门狗
UTCTL0 = SSEL0; // UCLK = ACLK,选择时钟来源
UBR00 = 0x03; // 32k/9600 - 3.41 波特率寄存器低字节
UBR10 = 0x00; // 32k/9600 波特率寄存器高字节
UMCTL0 = 0x51; // 由于波特率计算有余数,填写波特率调整寄存器
// UTCTL0 = SSEL1;
// UBR00 = 0x6D;
// UBR10 = 0x00;
// UMCTL0 = 0x10;
UCTL0 = CHAR; // 数据格式为8位数据
ME1 |= UTXE0 + URXE0; // 使能串口TXD与RXD
IE1 |= URXIE0; // 让串口接收到数据后能产生中断
P3SEL |= 0x30; // 定义 P2.4,P2.5 为串口功能引脚
P3DIR |= 0x10; // 串口发送数据端口为输出,接收数据端口为输入
_EINT();
//_BIS_SR(LPM3_bits);
for(;;) // 整个系统使能中断(开总中断)
{
//_BIS_SR(LPM3_bits); // 初始化完毕,进入睡眠状态,主程序完毕
//_BIS_SR(SCG1+SCG0+CPUOFF); // 低功耗
// _NOP();
}
}
#pragma vector=UART0RX_VECTOR
__interrupt void usart0_rx (void)
{
while ((IFG1 & UTXIFG0) == 0); // 当发送缓存为空时
TXBUF0 = RXBUF0; //发送数据到串口
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -