STM32 | 零基础 STM32 第一天

时间:2024-03-11 20:23:07

零基础 STM32 第一天

一、认知STM32

1、STM32概念

STM32:意法半导体基于ARM公司的Cortex-M内核开发的32位的高性能、低功耗单片机。

ST:意法半导体

M:基于ARM公司的Cortex-M内核的高性能、低功耗单片机

32:32位单片机

2、STM32开发的产品

STM32开发的产品:无人机、扫地机器人、3D打印机、平衡机、智能手环等

3、学习STM32对应的招聘职位

招聘职位:单片机开发工程师、单片机软件工程师、STM32开发工程师、嵌入式开发工程师、嵌入式软件工程师。

二、ARM与STM32

嵌入式系统

 以应用为中心,以计算机技术为基础,软硬件可裁减,以适应应用系统对功能、可靠性、成本、体积和功耗等有严格要求的专用计算机系统。(笔试)

嵌入式系统的特性

硬件特性

  • 体积小、集成效率高。

  • 面向特定的应用。

  • 功耗低、电磁兼容性好。

软件特性

  • 嵌入式软件的开发与硬件紧密相关。

  • 软件代码要求高效率和高可靠性。

  • 软件一般固化在Flash或Rom中。

  • 软件系统具有高实时性。

  • 一般采用C语言开发。

1、ARM与STM32

ARM--Advanced RISC Machine

ARM是英国一家电子公司的名字

ARM敢为天下先,首创了chipless的生产模式,即该公司既不生产芯片,也不设计芯片,而是设计出高效的IP(知识产权)内核,授权给半导体公司使用。

ARM提供一系列内核、体系扩展、微处理器和系统芯片方案

ARM是一种通用的32位RISC处理器

ARM是一种功耗很低的高性能处理器

ARM芯片四大内核:Cortex-X1、Cortex-A、Cortex-R、Cortex-M

ARM Cortex™-A 系列为应用型处理器

ARM在Cortex-A系列处理器大体上可以排序为:

Cortex-A78处理器、

Cortex-A77处理器、

Cortex-A76处理器、

Cortex-A57处理器、

Cortex-A53处理器、

Cortex-A15处理器、

Cortex-A9处理器、

Cortex-A8处理器、

Cortex-A7处理器、

Cortex-A5处理器、

ARM11处理器、

ARM9处理器、

ARM7处理器

产品:手机、平板、电视、智能音箱等

ARM Cortex-R为实时处理器

要求可靠性、高可用性、容错功能、可维护性和实时响应的嵌入式系统提供高性能计算解决方案。

高性能:与高时钟频率相结合的快速处理能力

实时:处理能力在所有场合都符合硬实时限制

安全:具有高容错能力的可靠且可信的系统

经济:可实现最佳性能、功耗和面积的功能。

ARM Cortex™-M处理器系列

ARM Cortex™-M处理器系列是一系列可向上兼容的高能效、易于使用的处理器,帮助开发人员满足将来的嵌入式应用的需要。用更低的成本提供更多功能、不断增加连接、改善代码重用和提高能效。

  • 功耗更低

  • 代码更小

  • 使用更方便

  • 更具产品竞争力

Cortex-M 系列针对成本和功耗敏感的MCU和终端应用(如智能测量、人机接口设备、汽车和工业控制系统、大型家用电器、消费性产品和医疗器械)的混合信号设备进行过优化。

Cortex-M系列细分为M0、M3、M4、M7和超低功耗的M0+

产品:无人机、扫地机器人、3D打印机、平衡机、智能手环等

三、开发环境安装与工程搭建

1、软、硬件准备

硬件准备:STM32F407ZET6开发板、jlink下载器、电脑。

软件准备

(1)keil v5软件,下载网址:https://www.keil.com/download/product/(软件路径:MDK5\mdk528a.exe)

(2)STM32开发的库函数,下载网址:https://www.keil.com/dd2/Pack/(路径:STM32F4器件支持包\Keil.STM32F4xx_DFP.1.0.8.pack)

(3)STM32F4官方资料:https://www.stmcu.org.cn/

STM32芯片型号识别

2、安装软件及库支持包

一切软件均用管理员权限打开。关闭杀毒软件,电脑防火墙。

(1)安装keil v5软件,参考博客(一位认为C语言是最好的编程语言的工程师):https://blog.csdn.net/wwwqqq2014/article/details/115412594

(2)双击安装STM32库支持包:Keil.STM32F4xx_DFP.1.0.8.pack

(3)参考文档:STM32工程建立步骤.docx 创建STM32工程(后面给出)

(4)参考文档:J-Link配置.docx,完成下载器配置(后面给出)