串口通信学习(二)

好气啊,学校给的固件库太老了,不支持F4IDISCO,只能先学用找的例程学一手理论应用了。

工程的文件列表:
在这里插入图片描述

这些配置文件先不看,关键的是main.c和usart.c

main.c只有几行:

在这里插入图片描述

这个是对usart时钟使能,这个味道,是陌生的味道。

在这里插入图片描述

这个是管脚配置(默认模式),这个味道,是熟悉的味道。

在这里插入图片描述

还是只需要写固件库函数就可以操纵串口

在这里插入图片描述

提取一下关键函数

USART_Sendata(USART1, SendData);

USART_GetFlagStatus(USART1, USART_FLAG_TXE)

USART_GetFlagStatus(USART1,USART_FLAG_RXNE)

*GetData = USART_ReceiveData(USART);

再提炼一下,是TXE和RXNE,从上一篇的链接可知,TXE是发送寄存器为空的标志位,RXNE是读取寄存器非空的标志位。由于RESET是0的意思,所以:

发送数据函数的while循环用于等待发送完毕;

接收数据函数的if语句用于判断是否接收成功。

其中的逻辑关系就不加解释啦。

暂时懒得下新的固件库了,因为cube可以用,下一篇就用stm32cube IDE来做usart的实际应用啦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值