总体要求是先实现再深究
以项目驱动学习
单片机,指的是基础的CPU(运算单元等)与一大堆外设封装到一个芯片里。我们写程序到CPU里运行,控制的可不是简简单单的电平,而是外设,哪怕GPIO都是一种外设。外设是经过封装的一系列电路,只漏了一些软件接口出来(对内没硬件接口,都同一张芯片了)。
因此想要控制单片机硬件,唯一要做的就是通过这些接口正确地配置它们,在底层就表现为寄存器的配置,你往某些寄存器读写一下,外设就会收到对应的信号触发,完成对应的功能。日常碰到的外设基本就这些:
电源和复位——运行基础,需要了解;时钟——运行基础,必须掌握;中断——异步交互的方式,必须掌握;基础外设(FLASH/GPIO等)——没它们你基本啥也干不了;通信外设(UART/I2C/SPI等)——要用啥就学啥;其他(ADC/DAC/CMP等)——要用就学。配置完了,再看你想做什么事情,在上面搭想要的逻辑。
从我个人经历来说的话,我是建议就这样学习下去,现在有些东西不懂,没有关系,先跟着视频一步一步去做,不要去copy例程代码,一定要自己手敲!!!刚开始不懂的时候,先让自己能够独立的完成这个章节的例程,能够让自己写的代码没有bug的正确运行下去。
之后,可以找一些运用到这一章节内容的小项目,自己去做一下。比如学习iic之后,可以买一个iic驱动的oled屏幕,自己做一些屏幕显示的功能,。。。等等。之后,在你知道iic具体能够干一些什么之后,再看iic的概念,我感觉会好很多,因为上面一些时许,数据传输,这你都是在做项目时候已经接触到的。
这样每一个外设学习的多了以后,可以找一些项目,把学习过的外设综合起来运用下,这样单片机学习基本就没有什么问题了。
在学习的话,也可以参加一些比赛,比如:电赛,智能车比赛,RoboMaster等等。
STM32学习方法
最新推荐文章于 2024-08-02 12:01:51 发布