一、STM32是什么
STM32系列专为要求高性能、低成本、低功耗的嵌入式应用设计的ARM Cortex®-M0,M0+,M3, M4和M7内核。
- ST: 代表一个意法半导体的公司(ST公司)。
- M: 微控制器单词的一个缩写,标识微控制器。
- 32: 代表是一个32位的芯片。
二、STM32与ARM关系
- ARM: 内核设计
- STM32: IC设计(芯片设计厂商)
- 用户: 嵌入式开发
- ST公司设计后,将整个内核和外设进行封装,就会得到STM32芯片
- 用户基于芯片进行开发
- STM32的芯片,基于ARM的核,所以,可以基于STM32开发,也可以基于ARM开发
三、STM32分类
四、STM32命名规则
用STM32F103ZET6举例
- STM32: 公司的一个32位的产品
- F: 产品类型
- 103: STM32基础型的一个芯片
- Z: 代表引脚数量
- E: 代表存储容量
- T: 代表封装(封装方式)
- 6: 代表温度范围
五、STM32F103ZET6芯片
- 芯片上记录这关于芯片的详细信息
- 红色方框圈住的这个小圆点代表引脚的起始点,对应的就是第一个引脚,即蓝色方框圈住的引脚
- 芯片的引脚排列是逆时针排列的
六、STM32F103ZET6芯片资源
- 内核: 32位 高性能ARM Cortex-M3处理器。时钟:高达72M,实际还可以超频一点。单周期乘法和硬件除法。
- IO口: 144引脚 112个IO(其余一部分是电源引脚),大部分IO口都耐5V(模拟通道除外),支持调试:SWD和JTAG,SWD只要2根数据线。
- 存储器容量: 512K FLASH,64K SRAM。
- 时钟
- 复位和电源管理
- 外部高速晶振(4-16M)
- 内部高速晶振(8M)
- 内部低速晶振(40K,供看门狗使用)
- PLL倍频(能让8M达到72M)
- 32.768K的晶振,是供给RTC的时钟源
- 低功耗
- ADC
- 3个12位的ADC,有21个外部测量通道
- DAC
- 2个12位的DAC
- DMA
- 减轻CPU的压力,传输走DMA通道
- 12个DMA通道
- 定时器
- 定时计数
- PWM输出
- 输入捕获
- 有11个定时器,2个基本定时器,4个通用定时器,2个高级定时器(电机控制方面),1个系统定时器(进行延时),2个看门狗定时器
- 通信接口
- 2个硬件I2C接口
- 5个串口
- 3个SPI接口
- 1个CAN(汽车领域广泛使用)
- 1个USB的从机接口
- SDIO接口(和SD卡通信)
七、系统架构
- 紫色框起来的部分是由ARM公司进行设计
- ST公司将内核和外设进行打包封装,构成STM32的一个芯片
系统内部架构
- 按照单元划分:驱动单元和被驱动单元
- 驱动单元:Cortex-M3,总线(Dcode,System,DMA),DMA1,DMA2
- 被驱动单元:Flash,SRAM,FSMC,AHB桥
八、STM32能做什么及就业前景如何
STM32能做什么
就业前景
九、STM32学习内容
- 基本外设:GPIO输入输出,外部中断,定时器,串口
- 基本外设接口:SPI,IIC,WDG, FSMC,ADC/DAC,SDIO等
- 高级功能应用
- 在STM32上运行操作系统(FreeRTOS,RT-Thread,UCOS)
- 文件系统(FATFS)
- 做美观界面(EMWIN,LittleVGL)
- C语言能力要加强(基础内容,指针,结构体)
- 多动手编程
- 遇到问题多查资料多浏览论坛(尽量不要用百度)
- 普中科技论坛:www.prechin.net
- ST官方论坛:www.stmcu.org
- CSDN
- 外设控制基本不变,但是你真正要掌握的就是逻辑控制
文档信息
- 本文作者:magicianplus
- 本文链接:https://magicianplus.github.io/2024/10/22/%E7%AC%AC1%E7%AB%A0-STM32%E4%BB%8B%E7%BB%8D/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)