Stm32.000.cubeIDE开发环境和概述

STM32CUBE IDE是STMicroelectronics官方提供的基于eclipse的免费IDE。

下载地址:https://www.st.com/en/development-tools/stm32cubeide.html#st-get-software

抽象层

不直接对寄存器进行操作,而是通过使用LL+HAL着重于应用层和中间层。LL(low-level)+HAL(Hardware Abstraction Layer)统一的API能够使得所开发的程序适用于整个stm32系列产品。

Stm32.000.cubeIDE开发环境和概述

STM32 CubeMX

CubeMX可设置和配置底层硬件和外设,并可用于生产C/C++初始化代码。

Stm32.000.cubeIDE开发环境和概述

还可以用于配置微控制器的时钟树,以决定系统、总线和外设的各种时钟速度。

Stm32.000.cubeIDE开发环境和概述

ST-Link V2 驱动

下载:https://www.st.com/en/development-tools/stsw-link009.html

Stm32.000.cubeIDE开发环境和概述

STM32F103C8T6(C6T6)开发板

Stm32.000.cubeIDE开发环境和概述

Cortex-M3 微控制器,64K闪存(flash),20K SRAM,72MHz CPU,2*12为ADC,7通道DMA控制器,支持SWD调试。

Stm32.000.cubeIDE开发环境和概述

STM32 HAL库

  • HAL一个嵌入式的STM32抽象层软件,能确保STM32微控制器的可移植性最大化,并且HAL可用于所有硬件外设。
  • LL API提供了一个快速、轻量级、面向专家级别的抽象层,LL比HAL更接近硬件。但LL API仅对特定外设可用。
  • HAL提供高级和面向特性的api,具有高可移植性。并对终端用户隐藏了MCU和外围设备的复杂性。
Stm32.000.cubeIDE开发环境和概述

  • LL提供了寄存器级别的低级api,能更好的优化和操作寄存器,但可移植性较差。需要对MCU和外围设备有深入的了解。
  • 可以使用LL驱动程序,并在寄存器级别进行更多优化,以提高内存利用率或执行速度,但会降低最终程序的可移植性。
  • HAL和LL的源代码采用严格的ANSI-C语言开发,使其独立于开发工具。
发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章