打印
[CW32F030系列]

CW32 UART查询方式发送数据编程示例

[复制链接]
302|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
forgot|  楼主 | 2023-12-10 13:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 forgot 于 2023-12-10 13:55 编辑

步骤 1:设置 SYSCTRL_AHBEN.GPIOx 为 1,SYSCTRL_APBENx.UARTx 为 1,使能 UART 引脚对应的 GPIO 时钟和 UART 配置时钟;
步骤 2:将 UARTx_TXD 引脚配置成推挽复用输出模式,
步骤 3:设置 UARTx_CR1.SYNC 为 0,配置 UARTx 为异步全双工通信模式;
步骤 4:配置数据帧;
1. 起始位判定方式:配置 UARTx_CR1.START
2. 校验位:配置 UARTx_CR1.PARITY
3. 停止位:配置 UARTx_CR1.STOP
步骤 5:配置 UARTx_CR2.SOURCE,选择传输时钟源;
步骤 6:配置 UARTx_CR1.OVER,选择采样模式;
步骤 7:配置 UARTx_BRRI 和 UARTx_BRRF 寄存器,配置波特率;
步骤 8:设置 UARTx_CR1.TXEN 为 1 使能发送;
步骤 9:设置 UARTx_ICR.TC 为 0,清除发送完成标志位;
步骤 10:将要发送的一帧数据写入 UARTx_TDR 寄存器;
步骤 11:查询等待 UARTx_ISR.TC 标志位置 1,确认一帧数据发送完成;
步骤 12:重复步骤 9 至步骤 12,发送下一帧数据。

使用特权

评论回复
沙发
tpgf| | 2024-1-19 18:11 | 只看该作者
使用查询方式的话会不会较多的占用cpu呢

使用特权

评论回复
板凳
heimaojingzhang| | 2024-1-19 18:47 | 只看该作者
发送完成标志位需要手动进行清除吗

使用特权

评论回复
地板
guanjiaer| | 2024-1-19 21:01 | 只看该作者
这个步骤有点多啊  通过代码来实现吧

使用特权

评论回复
5
小夏天的大西瓜| | 2024-1-21 10:16 | 只看该作者
实际过程很详细,若有代码就更好了

使用特权

评论回复
6
星辰大海不退缩| | 2024-1-21 14:05 | 只看该作者
其实基本上配置还是最基础的

使用特权

评论回复
7
szt1993| | 2024-2-25 16:50 | 只看该作者
CW32 UART查询方式发送数据编程示例

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1721

主题

12982

帖子

54

粉丝