MSP430G2553寄存器资料(15)
时间:2025-07-09
时间:2025-07-09
URXIE1
USART1接收中断允许位(F14、15、16、44)
串口通信的一般步骤
1、选择串口模块(USCI_A0、USCI_B0)。 USCI_A0 : P1SEL = BIT1 + BIT2; P1SEL2 = BIT1 + BIT2; //设置IO口,P1.2为发送TXD,P1.1为接收RXD 2、在SWRST=1时,设置串口。
UCA0CTL=UCSWRST; // SWRST=1,复位USART(SWRST上电置位 时与其相关的位都在复位状态),并设置串口 3、选择波特率发生器时钟。
UCA0IRTCTL1=UCSSEL1; //UCLK=ACLK 4、使能发送、接收。
ME2=UCA0TXE1+UCA0RXE1; //使能RXD TXD 5、设置字符长度。
UCA0CTL=CHAR; //设置字符长度为8位,默认时为7位 6、设置波特率。 注:UCA0BR=UCA0BR0+UCA0BR1; 其值应大于3 UCA0BR0=8; //存放波特率分频因子的整数部分的低字节 UCA0BR1=0; //存放波特率分频因子的整数部分的高字节 UCA0MCTL = UCBRS2 + UCBRS0; //设置波特率为115200 7、SWRST=0,串口设置完毕。
UCA0CTL&=~UCSWRST; //恢复运行,初始化USCI状态机,在SWRST为1 之前设置串口 8、使能中断。
IE2=UCA0RXIE1; //使能接收中断
串口通信配置语句
UCA0CTL1 |= UCSWRST; //设置SWRST=1 UCA0CTL1 = UCSSEL_2 + UCSWRST; //使用SMCLK,保持SW复位 UCA0BR0 = 52; //波特率=8MHz/52=153.8KHz UCA0BR1 = 0;
UCA0MCTL = UCBRF_1 + UCOS16; //设置第一阶段调制器1 UCA0IRTCTL = UCIRTXPL2 + UCIRTXPL0 + UCIRTXCLK + UCIREN;
//脉冲长度= 6个时钟周期的一半 ,启 用UCA0CTL1 &= ~UCSWRST; //恢复运行,初始化USCI状态机,在 SWRST为1之前设置串口
例程1: