1.STM32是什么

1 阅读3分钟

STM32开发

开发工具

Keil

  • 代码开发工具,会帮你打包代码

STM32CubeMX

  • 自动生成模板的工具,能在可视化界面生成项目模板

MCU是什么?

微控制单元(Microcontroller Unit;MCU) ,又称单片微型计算机(Single Chip Microcomputer )或者单片机,是把中央处理器(Central Process Unit;CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、A/D转换、UART、PLC、DMA等周边接口,甚至LCD驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。诸如手机、PC外围、遥控器,至汽车电子、工业上的步进马达、机器手臂的控制等,都可见到MCU的身影。

STM32是什么?

STM32是意法半导体公司推出的一系列32位微控制器(MCU),可以理解为一种功能强大、非常聪明的“芯片大脑”。它基于ARM Cortex-M内核设计,凭借其出色的性能、丰富的功能和极高的灵活性,成为了嵌入式系统开发领域的明星产品,广泛应用于工业控制、智能家居、消费电子等各个领域。

数据手册 vs 参考手册

官网下载MCU手册:www.stmcu.com.cn/Product/pro…

  • 数据手册帮你选芯片(帮你看硬件参数和引脚),参考手册帮你用芯片(看内部编程和寄存器)
维度数据手册(datasheet)参考手册(reference manual)
英文名DatasheetReference Manual
关注重点硬件特性(电气参数、引脚定义、封装尺寸)软件/逻辑(寄存器、外设功能、内存映射)
典型用途画电路图(PCB)、选型、确定供电写代码(固件开发)、配置外设、理解工作原理
厚度通常几页到一百多页通常上千页(例如STM32F103有1100+页)
时效性随芯片型号变化(如STM32F103C8T6)随系列变化(如整个F1系列公用一本)
总结

画电路板 --> 数据手册 写代码 --> 参考手册

HAL 库

HAL库(Hardware Abstraction Layer Library,硬件抽象层库)是嵌入式开发中常见的一种软件库,主要用于屏蔽底层硬件的复杂性,为开发者提供统一、简介、可移植的API接口来操作微控制器(MCU)的各种外设(如GPIO、UART、I2C、SPI、定时器、ADC等)

选择HAL库的原因:

  • 官方力推,大势所趋: ST公司已经停止对传统标准库(SPL)的更新,全力投入HAL库及其配套的STM32Cube生态系统。选择HAL库就是选择了未来
  • 开发效率革命: HAL库与STM32CubeMX图形化界面配合,可以在图形里点点就能完成时钟、引脚、外设的初始化,并一键生成工程代码。把工程师从繁琐的初始化里解放出来,专心业务代码
  • 跨芯片轻松移植: HAL库的一大优势就是硬件抽象,他提供了一套统一的API,可以非常方便的移植到其他系列的芯片上
  • 丰富的中间件支持: HAL库无缝集成了ST官方提供的大量高质量中间件组件,如实时操作系统(RTOS,real-time operating System)、USB协议栈、TCP/IP网络协议栈、图形界面(GUI,Graphical User Interface)库,会省力很多