stm32学习攻略
单片机介绍:
stm32属于嵌入式微处理器,需要同时懂硬件和软件,能根据硬件数据手册编程,懂基本的通信协议,包括IIC, SPI, SDIO, CAN等,硬件外设DMA, 同时理解arm核心编程,C语言必须掌握,学C的时候注意细节,什么是变量?函数调用发生了什么?为什么局部变量出了函数就会被释放?C的内存机制是是什么?这些都是是进行STM32开发*基础的知识,要能够熟练应用,要不然对于从事stm32开发的难度是非常大的。同时需要掌握外挂其他硬件外设的软件配置,包括各种传感器芯片,flash芯片等。
软件方面进一步需要掌握嵌入式文件系统编程,嵌入式操作系统编程,尤其是嵌入式实时操作系统,如UCOS, FreeRTOS等。
通常在芯片选型的初期,首先要看 数据手册 以评估该产品是否能够满足设计上的功能需求。基本选定所需产品后,需要察看技术参考手册以确定各功能模块的工作模式是否符合要求,再确定选型进入编程,设计阶段时,需要详细阅读技术参考手册获知各项功能的具体实现方式和寄存器的配置使用.
这里列出stm32学习的基本路线,整个过程都要熟悉相关的开发手册:《STM32参考手册》《STM固件库使用手册》.
单片机工程师、嵌入式物联网工程师学习攻略
*阶段:C语言学习
第二阶段:stm32开发环境的使用
stm32标准库函数学习和应用
stm32 HAL库函数学习和应用
stm32各种系统资源及外设的学习。包括以下内容:
stm32启动文件,知道启动文件都做了什么,比如每次stm32上电后*个执行的程序,它对系统时钟进行了初始化等等。。。
时钟树,知道系统时钟SYSCLK选择一个时钟源的过程。
GPIO输入输出
NVIC中断
USART串口通信
DMA外设的应用
IIC外设应用
SPI外设应用
ADC电压采集
TIM定时器
第三阶段:掌握嵌入式开发的高级系统应用:
操作系统:UCOS, FreeRTOS等,
网络通信:UDP、TCP等网络协议
摘要:作为一名stm32单片机工程师应具备以下条件:
1、根据项目分配的任务完成单片机程序方案的设计;
2、熟悉STM32FXX系列任意一款单片机架构
3、熟悉MCU的外设,如I2C,SPI,UART,FSMC,CAN等。
4、熟练使用C编程语言,熟悉数据结构,熟练使用Keil编程和调试。
5、熟悉UDP、TCP等网络协议。
6、能看懂基本的硬件原理图芯片手册。
腾迎现场授课 |