嵌入式开发第一讲
1.1 认识STM32
ST :意法半导体, M:微控制器, 32:计算机处理器位数 与ARM的关系:采用ARM推出的Cortex-A,R,M系列中的M系列,主要基于ARMv7—M架构
1.1.1 什么是STM32
新的基于ARM内核的32位MCU系列
- 内核为ARM公司为要求高性能、低成本、低功 耗的嵌入式应用专门设计的Cortex-M内核
- 标准的ARM架构
超前的体系结构
- 高性能
- 低电压
- 低功耗
- 创新的内核以及外设
简单易用/自由/低风险
1.1.2 Cortex内核
- Cortex-M3系列属于ARMv7架构
- ARMv7架构定义了三大分工明确的系列:
- “A”系列:面向尖端的基于虚拟内存的操作系统和用户应用
- “R”系列:针对实时系统;
- “M”系列:对微控制器。
- STM32F1属于Cortex-M系列中的Cortex-M3内核,采用ARMv7-M架构。STM32F4属于Cortex-M4系列采用ARMv7-ME架构。 Cortex-A5/A8采用ARMv7-A架构。传统的ARM7系列采用的是ARMv4T架构。
1.2 STM32概述
1.2.1 CM3芯片结构
1.2.2 STM32F1各芯片关联
1.2.3 命名规则
1.2.4 外观说明
1.3 环境搭建
MDK安装(编程环境)
USB串口驱动安装
STLINK驱动安装
1.4 项目创建
1.4.1 项目创建
project-New μVisionProject-选择文件夹-选择芯片
1.4.2 无芯片下操作办法
如果没有该芯片,需要重新导入或者重启刷新一下
1.5 新建基于固件库的 MDK5 工程模板
markdown
STM32/ <=项目根目录
├── Project
│ ├── class_2
│ ├── CORE <=核心文件
│ ├── OBJ <=编译文件
│ ├── STM32F10x_FWLib <=存放 ST 官方提供的库函数源码文件
│ ├── USER <=工程文件、主函数文件 main.c、system_stm32f10x.c 等
│ ├── SYSTEM <=每个实验都要使用到的共用代码
└── tools
DARMSTM.DLL -pSTM32F103ZE
TARMSTM.DLL -pSTM32F103ZE