你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

通过库函数使用STM32f103串口中断的心得

[复制链接]
STMCU小助手 发布时间:2023-1-4 21:27
STM32使用USART中断主要有一下几步:

1,定义中断结构体,和串口结构体

2,使能时钟

3,编写中断函数

4,使能中断

关于发送中断,笔者当时有个疑惑:

20180403234919889.png

上图是关于状态寄存器(USART_SR)中的两位。

20180403235039557.png

上图是控制寄存器1(USART_CR1)中的两位。

笔者当时的疑惑是,这两位都可以控制中断啊,DR数据被移走触发中断,DR数据被移走也会使TC为置一,也会产生中断,这尼玛不冲突了?笔者当时陷入了死循环。

后来笔者想通了,要进入发送中断,用库函数:USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);

这个函数时用来打开CR1中的响应位的,比如上一句,是用来打开发送完成中断的,也就是置TXEIE位为1(并且发送缓冲区最初就是空),接下来就会进入中断服务函数。这里并没有打开TCIE位(即并没有使能发送完成中断,所以不会产生冲突)。

当是以查询方式来发送数据时,并没有使能中断也没有使能中断通道,故怎么着也不会产生中断,只用查询SR寄存器就行了。
————————————————
版权声明:家安

收藏 评论0 发布时间:2023-1-4 21:27

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版