本课程时长七天 共计七次更新
前言
第三次更新。距离上次更新已经经过两周,时间很紧啦,本月剩下的四天需要更新五篇博博文。本月不仅是工作方面,私事琐事也占据了很多的时间。
今日课程安排
1.课程内容
今天的课程主要内容为上手思路以及STM32结构基本讲解,以及本次课程中使用的开发模式讲解,并在此次课程中演示了如何在此种开发模式下创建一个工程。
1.1 上手思路
结合实际演示,讲解了如何上手一款单片机的开发,当然本次课程中是以STM32为例,本课程配套开发板主控为STM32F103C8T6,这颗芯片现在已经涨价到106,真是苦也~。
一般而言最官方的资料为官网可以下到的数据手册和参考手册两个文档,但是一般都较长较晦涩,相比起来可以选择非公版的即其他第三方提供的开发板及其配套资料,例如选择百问网的STM32开发板来配合其课程及资料学习,能够提高学习速度,以及更快的实操,优势明显。
**
1.2 STM32结构
!
依次讲解了单片机最小系统,外设和寄存器及存储结构单个部分内容
单片机最小系统是非常经典的学习内容,本身内容少,重要性很高,但是可以引申的内容很多,从一个单片机的最小系统可以引申到大部分数字IC,一个IC运行起来需要一个时钟源,作为时基;需要供电电路,提供运行的基本能源;需要一个复位电路,在上电时来触发程序复位开始执行;启动模式选择;当然不要忘记留下烧写固件的烧录口啦。我有一次在硬件设计的时候,layout完板子都没有发现没有留烧写口,板子回来才发现,又浪费好几百块钱,苦啊。
在时基工程应用中,为了方便调试,我们一般还会留出一个调试串口,和数个LED灯,来指示固件运行状况,以及输出必要调试信息。
1.3 开发模式
本部分大致比较了一下数种单片机开发方式的优劣,说的很中肯也很切题。
我认为需要多嘴提一下的是实际上STM32的标准库和HAL也是用C语言写的,虽然经过层层封装,但是底层代码对我们来说仍然是透明的,多读库文件的代码,对于STM32的寄存器结构以及自己的代码规范都很有好处
本课程中使用的方式显然为HAL库开发。
1.4GPIO的基础应用
本方法的主要优势明显,可以省去很多底层硬件配置的时间,实现了便利的图形化配置
非常适合新手使用。
但是需要注意的是,最好在确保初始化配置基本确认无问题后,再生成代码,避免在开发过程中,反复使用CubeMX重新生成工程,这是因为实际开发过程中,如果对生成的源码进行了改动,或者增加代码的位置有问题的情况下,重新生成代码会覆盖。