SCI中波特率

波特率

1. 概念

波特率表示每秒钟传送的位数。
波特率是衡量数据传送速率的指标。

2. 应用

计算一帧数据需要的时间:
T = 1 K ∗ Q ∗ N T= \frac{1}{K}*Q*N T=K1QN
其中, T T T位一帧需要的时间, K K K为波特率, Q Q Q为传输一个字节的位数, N N N一帧中的字节数。
K K K常见的为9600;
Q Q Q常见的为10,1个起始位+8的数据位+1个停止位;
N N N根据定义的帧格式。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!要在 F28062 上设置 SCI(串行通信接口)的波特率,您可以按照以下步骤进行操作: 1. 首先,您需要确定所需的波特率值。例如,如果您希望设置为 9600 bps(比特/秒),请记住该值。 2. 在代码,您需要配置 SCI 控制寄存器和波特率发生器寄存器。 a. 首先,将 SCI 控制寄存器(SCICCR)设置为适当的值。您可以使用以下代码片段将其设置为 8 位数据、无奇偶校验和一个停止位: ```c SCICCR = (1 << 5); // 设置为 8 位数据 SCICCR &= ~(1 << 4); // 禁用奇偶校验 SCICCR &= ~(1 << 3); // 设置为一个停止位 ``` b. 接下来,根据所需的波特率值,计算波特率发生器计数器的值。F28062 上的波特率发生器寄存器是 SCIBAUD。 计算公式为: ``` SCIBAUD = (LSPCLK / (16 * 波特率)) - 1 ``` 其 LSPCLK 是您的系统时钟频率,波特率是所需的波特率值。 例如,如果 LSPCLK 是 100 MHz,所需的波特率是 9600 bps,那么计算如下: ``` SCIBAUD = (100,000,000 / (16 * 9600)) - 1 = 651.0416666666666 ``` 因为波特率发生器寄存器是一个整数寄存器,所以需要将计算结果四舍五入到最接近的整数。在这种情况下,设置 SCIBAUD 为 651。 c. 最后,将计算得到的波特率发生器计数器值写入 SCIBAUD 寄存器: ```c SCIBAUD = 651; // 设置波特率发生器计数器 ``` 3. 设置完成后,您可以使用相应的 SCI 寄存器进行数据接收和发送。例如,要发送一个字节,您可以使用 SCITXBUF 寄存器,要接收一个字节,可以使用 SCIRXBUF 寄存器。 请注意,上述步骤的代码片段仅供参考,您需要根据您的具体应用进行适当的修改。 希望这可以帮助到您!如果您有任何其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值