MSP430 LaunchPad学习第二记——UART(2)
发布时间:2021-06-08
发布时间:2021-06-08
第一个数据位后,1位长的偏移量添加到CCR0定位在未来捕捉中间的每一位。八位连续的数据被锁存,并收到来自SCCI软件到RXTXData位的数据。发射模式任务是简单,因为MSP430在决定时,传输数据,没有启动位边缘检测的必要性。在缓冲区中存储的数据RXTXData
传输引脚P1.1使用Timer_A CCR0输出至硬件。
CCR0是预先在比较模式下位传输使用输出模式控制位在CCTL0。模式控制位被预先配置为复位模式(逻辑0),或设置模式(逻辑1)发
生在未来比较CCR0。当比较时,在一开始
位传输的数据,自动输出CCR0硬件数据配置P1.1置位并发出一个中断。随着CCR0硬件自动输出数据上P1.1置位,软件中断延迟和位定时的关注减少。这不是必要的软件准备CCR0输出锁存器在一个确切的时间内。 UART的功能软件不直接对P1.1置输出数据,而是预装
在CCR0输出数据位输出至锁存器的硬件。
每个位输出之前,软件循环查询RXTXData到进位。适当的跳转提出和CCTL0输出模式准备和1位长的偏移量添加到CCR0。
三、波特率计算
Timer_A CCR0用于波特率产生。根据所需波特率,间隔Bitime的计算方法。 Bitime是Timer_A位和PC之间的计数长度时间间隔Timer_A
闩锁在接收和发送出的数据位。 Bitime是为Timer_A计算时钟的波特率分源。
Timer_A有几个可用的时钟源和除法(参见器件表具体数据)。可用于MSP430x11x Timer_A模块的时钟源包括辅助时钟(ACLK),子系
统时钟(SMCLK)和两个外部时钟。
例如:考虑与Timer_A作为辅助时钟源选择9600波特率ACLK,它被配置为作为一个3.579545 MHz的的XTAL相同。Bittime = 3 5799600/545= 372.9 373实际波特率= 3 579三百七十三分之五百四十五= 9597由于只有一个Bitime整数值可以被添加到CCR0,值373使用。假设
9600波特和一个3.579545 MHz的时钟源,四舍五入到最接近的整数Bitime错误小于0.03%每位。
四、软件开销
固件工程师可能会关切的是使用中UART的硬件/软件系统开销,而不是一个专用的串行端口。UART的功能在本报告所述用途timer_A硬件的功能,最大限度地减少CPU的负担。 Timer_A硬件记录起始位优势和锁存和输出自动位的数据。该软件需要有一个26位的每接收或发送的最大周期包括中断服务程序。开销是CPU的时钟(MCLK)和波特率功能。使用3.58 - MHz的9600波特率例如上面的MCLK,开
销计算公式为:
上一篇:2020最新优质励志演讲稿5篇
下一篇:员工宿舍卫生管理制度