微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 利用捕获比较功能实现MSP430与微机串行通信的研究

利用捕获比较功能实现MSP430与微机串行通信的研究

时间:11-27 来源:互联网 点击:

ADD#Tbit1,CCR0; 将1位时间间隔加入CCR0中
BIT#CCIS0,CCTL0; 判断接收、发送状态
JNZUART_RX; 是接收状态,转接收处理
UART_TXCMP#00h,Counter; 是发送状态,判断帧发送是否结束
JNETX_Next; 没有结束,转入发送
BIC#CCIE,CCTL0; 帧发送结束,关闭中断
RETI; 中断返回
TX_NextRRARTbuff; 待发送位移入进位位C
JCTX_One; 该位为1?跳转
BIS#OUTMOD2,CCTL0; 该位为0,发送0
JMPTX_nxt2; 跳转继续处理
TX_OneBIC#OUTMOD2,CCTL0; 该位为1,发送1
TX_nxt2DECCounter; 发送帧计数器减1
RETI; 中断返回
;
UART_RXBIT#CAP,CCTL0; 判断是否是捕获到起始位
JZRX_Bit; 接收的不是起始位,转入处理
RX_StartBIC#CAP,CCTL0; 捕获到起始位,将状态转为比较模式
ADD#Tbit_5,CCR0; 再增加半位时间间隔(T0+T1.5),以实现1.5 时间间隔
RETI; 中断返回
RX_BitBIT#SCCI,CCTL0; 将接收到的位存入进位位C
RRCRTbuff; 将接收到位,移入收发缓冲字
RX_TestDECCounter; 接收数据计数器减1
JNZRX_Next; 判断是否接收了所有数据位,没有跳转到后续处理
BIC#CCIE,CCTL0; 接收到所有数据位,关闭捕获比较中断
RX_NextRETI; 中断返回

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top