今天开始硬件开发不再使用寄存器开发的思路去做了,而用st公司提供的工具包,即昨天安装的软件,这样便于更快地走进项目。
stm32 HAL库
在这种库出现之前,所有的硬件开发都是在产品手册的基础上进行,需要不停查询寄存器地址。现在有官方提供的ARM Cortex-M CMSIS,一方面屏蔽了直接操作寄存器的过程,另一方面提供了现成的工具,避免在后续的工作中接触大量的寄存器操作,产生额外的工作。
STD标准库
CMSIS支持包
注意:一开始都会掌握很好,但随着时间的积累,会逐渐忘记前面所学的内容,应当注意温习。
CubeMX:
[if !supportLists]1. [endif]抽离HAL库
[if !supportLists]2. [endif]构建初始化过程
[if !supportLists]3. [endif]filseystem:协议代RTOS
HAL库的获取:www.st.com意法半导体官网
库:在C语言编程中,编译的第三步,即链接的时候会使用库,库就是各个函数的打包,静态库:链接的时候抽取的内容来自静态库,动态库:程序在运行的时候调取的函数集合。动态库更灵活。
使用工具CubeMX
启动;
New Project;
选择芯片(此处也可以根据性能自行选择芯片);
peripherals外设;
MDK的Keil开发环境选择MDK-ARM v5
__weak 函数即弱函数,在C程序中可以定义弱函数以备为正常函数替换,先提供调用功能