stm32 3年后的复习
stm32最大的优势就是固件库;
固件库都是开源的;
固件库 从标准库到HAL库再到LL库,不同芯片之间的标准库移植不方便;
用哪个固件库,都必须首先包含这个固件库的头文件;
example文件夹里面的示例是实例展示如何使用对应的外设或者相应功能;
反对过度使用全局变量,内存小,紧耦合导致程序很难维护;
所有函数必须有返回值;
函数的重载:一个函数可以同时被多个任务调用而不发生错误,就叫做函数的重载;
linux一个很重要的方法就是:一个函数不要超过200行,写一些简单的函数,来组合完成一个大函数,再由大函数组合完成更大的函数,有点类似于小砖头盖大厦的原理;
拿到单片机的dtasheet第一个要看的就是芯片的系统架构;
32位机和8位机的最大区别就是DMA,DMA可以和外设之间的数据传输不必经过内核,内核只要固定的时间过来读数据或者发数据就可以了,直接内存存储技术;
32位机以DMA为核心;
晶振不必是72MHz,直接有倍频提高了9倍;
预编译都是跟编译器交互的,不参与编译过程,如ifndef endif;
stm32cubemx可以通过微雪学习;