#STM32# 学习日志-第4天

本文是作者经过4天STM32学习的总结,主要分享了使用野火资料和板子进行学习的经验。强调了ST库的使用流程,理解外设工作原理,库函数的选择和中断标志的处理,以及位操作在单片机编程中的应用。通过实例解释了如何配置时钟、初始化结构体,并提出在查询硬件标志位时结合软件标志位可以提高编程效率。
摘要由CSDN通过智能技术生成

学习了4天的STM32,用的是野火的板子,资料是野火的零死角玩转系列,做点学习小总结,讲讲后面学习新外设的思路:

1、ST库的使用流程:配置时钟 -> 初始化结构体赋值 -> 初始化。

      在操作一个不熟悉的外设时,需要多看官方帮助文件和参考手册,但最重要最有效的手段应该是在网络上搜索该如何使用该外设,工作原理,工作模式等,但不需要具体到源码。在配置时钟的时候看参考手册的总线架构,确定所使用的外设是挂靠在哪条总线下的,以此去调用相应的rcc库函数。初始化结构体赋值的时候,先看帮助文件,基本上可以见名识字来赋值。另外,参考例程源码也是一个非常好的方式,参考源码时候要注意抓重点,尽快找到核心函数,忽略具体实现具体端口等,提高效率。

2、库函数的使用:数据输入输出,标志位的查询和设置

      配置好库的工作参数之后,就需要使用库函数进行操作了。这个时候先不要急着去实现你想要的功能,先到库帮助文件里面去整体浏览一下库的各个函数,对整体有个了解。这里需要区分一下的是事件标志(FlagStatus)和中断标志(ITStatus),简单来说如果屏蔽了中断的话,发生了事件但不产生中断,这种情况事件标志置位但中断标志位不变。另外,在清除标志位的时候,中断内使用xxx_ClearITPendingBit(),非中断时采用xxx_ClearFlag()会更为严谨一些。 在对标志位进行置位和清除操作时,也可以考虑直接操作寄存器,有时候需要直接操作管脚的话会比较方便。

     PS:这里的事件标志和中断标志都是硬件上的标志位,在软件设计里面常用的还有软件上定义的标志位:即在程序里面定义一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值