查看: 1182|回复: 0
打印 上一主题 下一主题

MSP430_x2xx UART波特率设置方法

[复制链接]
跳转到指定楼层
沙发
发表于 2015-5-31 16:48:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在连接了JTAG的情况下测量430的相关参数是不正确的
在连接了JTAG的情况下测量430的相关信号,如电流或电压,其测量结果是不正确的。因为器件会由JTAG接口中的信号线供电。例如,在连接JATG的情况下测量430的电流消耗是没有意义的。这一点在EW430-UserGuide中也有说明。

对于给定的时钟源,波特率有分频因子决定


很多情况下N是非整数,所以使用分频器和调整器两部分来组成波特率发生器,这样是分频因子尽量接近需要值。分频器完成分频功能,调整器的数据按每一位计算,将对应为的数据(0或1)加到每次分频计数器的分频值上。
若N大于或等于16,则可以通过设置UCOS16来启动 oversampling baud rate generation mode 。
具体的寄存器设置方法:


一、           使用低速时钟
UCBRx = INT(N)
UCBRSx = round((N – INT(N))*8)
寄存器的具体设置可以查典型波特率和误差表得到。


例如,使用32768Hz的时钟源产生9600波特率。
计算分频因子:
N = 32768/9600 = 3.41
所以,UCBRx = INT(N) = 3
UCBRSx = round((N – INT(N))* 8)= 3
同样可以直接通过查表得到:
UCBRx = 3,
UCBRSx = 3;
UCBRFx  = 0.
所以,设置
UCBR0 = 3;
UCBR1 = 0;
UCA0MCTL = UCBRS1 + UCBRS0;(0×03) 即可。
二、           使用高速时钟
UCBRx = INT(N/16)
UNCBRFx = round(((N/16)-INT(n/16))*16)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入因仑

本版积分规则

快速回复 返回顶部 返回列表