TMS320F28069波特率19200怎么设置
时间: 2024-04-17 16:26:46 浏览: 240
在TMS320F28069微控制器上,可以通过配置SCI模块的相关寄存器来设置波特率为19200。
以下是一个示例代码,展示了如何设置SCI模块的波特率为19200:
```c
#include "F2806x_Device.h" // 包含TMS320F28069的设备头文件
#define CPU_FREQ 100e6 // MCU的时钟频率
#define BAUD_RATE 19200 // 目标波特率
void sciBaudRateConfig(Uint32 cpuFreq, Uint32 baudRate)
{
Uint16 divider;
// 计算波特率分频器的值
divider = (Uint16)(cpuFreq / (baudRate * 8) - 1);
// 配置SCI模块波特率
ScibRegs.SCILBAUD = divider & 0xFF; // 设置低位分频器值
ScibRegs.SCIHBAUD = (divider >> 8) & 0xFF; // 设置高位分频器值
}
int main(void)
{
// 初始化SCI-B模块
ScibRegs.SCICCR.bit.STOPBITS = 0; // 设置停止位为1个
ScibRegs.SCICCR.bit.PARITY = 0; // 禁用奇偶校验
ScibRegs.SCICTL1.bit.RXENA = 1; // 启用接收
ScibRegs.SCICTL1.bit.RXERRINTENA = 1; // 启用接收错误中断
// 配置波特率
sciBaudRateConfig(CPU_FREQ, BAUD_RATE);
// 其他初始化操作...
while (1) {
// 主程序循环
}
}
```
在上述示例代码中,通过调用 `sciBaudRateConfig` 函数来配置SCI模块的波特率。该函数使用了一个简单的计算公式,将CPU的时钟频率和目标波特率作为参数,计算出波特率分频器的值,并将其设置到SCI模块的相应寄存器中。
请注意,根据TMS320F28069的技术手册所述,SCI模块的波特率分频器采用16位的配置,可以支持更广泛的波特率范围。上述示例代码仅提供了一个基本的框架,具体的实现方法可能因你的应用和需求而有所不同。你需要根据具体的硬件和软件环境,以及SCI模块的配置和使用方法进行相应的调整和修改。建议参考TMS320F28069的技术手册、参考手册或相关开发工具的文档,以获取更详细的使用指南和示例代码。
阅读全文