零基础 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/(软件路径:MDK5mdk528a.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,完成下载器配置(后面给出)