当前位置: 首页 > news >正文

STM32G474单片机开发入门(一)STM32G474RET6单片机详解

文章目录

    • 一.概要
    • 二.单片机型号命名规则
    • 三.STM32G474系统架构
    • 四.STM32G474RET6单片机启动方式
    • 五.STM32G474RET6单片机主要外设资源
    • 六.STM32G474RET6芯片数据手册主要内容
      • 1.单片机外设资源情况
      • 2.STM32G474RET6管脚图
      • 3.STM32G474RET6每个管脚功能
      • 4.单片机功耗数据
      • 5.FLASH编程时间,擦写次数
      • 6.I/O特性表格
      • 7.外设接口最大速度
      • 8.芯片供电电压范围
    • 七.STM32G474ET6单片机应用场景
    • 八.总结

一.概要

单片机(MCU)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU内核、随机存储器SRAM、存储器FLASH、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。STM32G474RET6单片机是ST公司基于ARM Cortex-M4内核开发的32位微控制器。

STM32G474RET6单片机主要特性
内核:ARM Cortex-M4
主频:170MHz系统主频,STM32F103主频是72MHz。
RAM:128k(SRAM)
ROM:512k(Flash)
供电:1.71~3.6V(标准3.3V)

在这里插入图片描述

芯片实物如下图,芯片引脚排序是逆时针排序。
在这里插入图片描述

芯片引脚定义如下:

在这里插入图片描述

二.单片机型号命名规则

根据命名规则,STM32G474RET6就是主流型,64脚,512K闪存,LQFP贴片封装,-40~85度的工业级的单片机。

在这里插入图片描述

三.STM32G474系统架构

在这里插入图片描述

如下图所示,左上角为内核(ARM Cortex-M4 170MHz),I-BUS,S-BUS和D-BUS主要通过AHB总线连到Flash闪存,SRAM等。
在这里插入图片描述

Cortex‐M4内核:
ARM Cortex-M4内核,具有高性能、低功耗的特点。Cortex-M4内核采用了Thumb-2指令集,支持16位和32位指令,具有较高的运算能力和代码密度。此外,Cortex-M4内核还具有浮点单元(FPU)、数字信号处理(DSP指令)和内存保护等功能,能够满足各种嵌入式应用的需求。

FLASH闪存:
我们编写好的程序经过Keil5编译之后都是一条条指令,存放在FLASH中。内核(ARM Cortex-M4)通过I-BUS总线来取里边的指令,所以FLASH主要是用来存程序,但也开放一部分空间可以存数据。

SRAM存储器:存放程序运行时的变量数据。

I-BUS总线:
此总线用于将 Cortex-M4 内核的指令总线连接到总线矩阵。内核通过此总线获取指令。
此总线访问的对象是包含代码的存储器(内部 Flash/SRAM 或通过 FSMC 的外部存储器)。

D-BUS总线:
此总线用于将 Cortex-M4 数据总线和 64 KB CCM 数据 RAM 连接到总线矩阵。内核通过
此总线进行立即数加载和调试访问。此总线访问的对象是包含代码或数据的存储器(内部Flash 或通过 FSMC 的外部存储器)。

S-BUS总线:
此总线用于将 Cortex-M4 内核的系统总线连接到总线矩阵。此总线用于访问位于外设或 SRAM 中的数据。

APB2,APB1系统总线:
如下图所示,用于挂载外设(GPIO、USART、I2C、SPI、TIMER等这些外设),APB1,APB2时钟最快都能到170MHZ,这个频率比STM32F407与STM32F103单片机都要快。
在这里插入图片描述

System总线主要是用来访问外设寄存器,我们通常说的寄存器编程,即读写寄存器都是通过System总线来完成的。

DMA总线:可以用来传输数据,这个数据可以是某个外设的数据,也可以是SRAM或者FLASH中的数据。

四.STM32G474RET6单片机启动方式

通过单片机BOOT0(PB8)引脚(也可以用nBOOT0 FLASH配置位)与nBOOT1 FLASH配置位的高低组合,配置单片机启动模式。
如下图所示,除了BOOT0硬件电平确定启动方式,也可以通过对FLASH选项字节配置,选择采用FLASH启动还是SRAM启动,这是跟以前的STM32F407单片机不同的地方。
在这里插入图片描述
所以下图所示的启动选择,可以是引脚电平方式,也可以是FLASH选项字节配置方式,后面启动过程跟原先的引脚电平方式一致。
在这里插入图片描述
我们一般都用下拉电阻配置BOOT0引脚为低电平,用下载器(STLINK/JLINK)连接单片机的SWD下载口,下载完代码,程序就能直接运行,这是最常用的启动模式。

STM32G474RET6单片机从FLASH的启动流程:
当芯片上电后采样到 BOOT0 引脚为低电平时,或者读取FLASH选项字节配置为FLASH启动方式,0x00000000 和 0x00000004 地址被映射到内部 FLASH 的首地址 0x08000000 和 0x0800 0004。因此,内核离开复位状态后,读取内部 FLASH 的 0x08000000 地址空间存储的内容,赋值给栈指针 MSP,作为栈顶地址,再读取内部 FLASH 的 0x08000004 地址空间存储的内容,赋值给程序指针 PC,作为将要执行的第一条指令所在的地址。完成这两个操作后,内核就可以开始从 PC 指向的地址中读取指令执行了,0x0800 0004是中断向量表的起始地址,这就是复位程序的入口地址,接着跳转到复位程序入口处,初始向量表,然后设置时钟,设置堆栈,最后跳转到main函数,即进入用户程序。

五.STM32G474RET6单片机主要外设资源

STM32G474RET6单片机集成了丰富的外设,比如GPIO,TIMER,SPI,USART,CAN,USB,ADC等外设,这些丰富的外设能驱动各种接口的传感器,很多时候编程的工作也就是驱动这些外设与外面的传感器芯片进行通讯。

红色圈出来的就是STM32G474RET6单片机外设资源:
在这里插入图片描述

STM32G474RET6单片机跟STM32F103C8T6单片机相比,多了DAC,COMP,OPAMP,HRTIMER等外设。

六.STM32G474RET6芯片数据手册主要内容

在编程的过程中,会经常查看一些资料,比如芯片数据手册会经常用到,作用比较大,主要需要查看哪几点,下面做个简单介绍:

1.单片机外设资源情况

编程的时候会了解这款单片机是否存在这个外设,因为一份单片机芯片手册(DataSheet)是针对多款单片机的,每款单片机资源都有可能有差别,外设数量是否正确,FLASH的大小,RAM的大小,空间是否会超,需要查看确认。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2.STM32G474RET6管脚图

在硬件设计阶段,需要确认硬件是否连接正确,就需要知道单片机相应引脚的定义。
在这里插入图片描述

3.STM32G474RET6每个管脚功能

在写代码过程中,需要知道这个引脚的基本功能,是否5V容忍(可以输入5V高电平),可以复用配置成哪个外设的引脚,是否还有附加功能等。
在这里插入图片描述
单片机引脚复用功能,在软件上就需要查看下图的表格,比如PC4引脚,有AF2,AF4,AF7,AF10等配置,根据所需要的外设功能引脚,软件上选择其中的一种AF配置。
在这里插入图片描述

4.单片机功耗数据

在某些低功耗项目场景,需要知道配置成哪个低功耗模式更省电,不同主频功耗能符合功耗要求,需要查看下面表格。
在这里插入图片描述

5.FLASH编程时间,擦写次数

在FLASH的存储操作中,需要知道编程时间,保证数据能正确写入,需要知道擦写次数,保证芯片不会因为擦写过多而损坏。
在这里插入图片描述

6.I/O特性表格

在I/O读取操作时,有些电压采集到的不是高电平或者低电平,需要查这表格确认读到的电压符合单片机读到的高低电平电压要求。同时单片机的I/O都可以配置内部上拉下拉,上拉电阻,下拉电阻多大,一般都是40K,可以在这表格里查出来。
在这里插入图片描述

7.外设接口最大速度

还有一些外设的最大速度,比如SPI,IIC口的最快速度也都能在芯片手册中找到。

IIC接口:
在这里插入图片描述

SPI接口:
在这里插入图片描述

USART接口:
在这里插入图片描述

8.芯片供电电压范围

STM32单片机一般都是3.3V供电,电压是否符合要求,要看芯片手册供电范围。
在这里插入图片描述

七.STM32G474ET6单片机应用场景

1.数字电源和智能能源管理
这是STM32G4系列,尤其是G474的主打和最优应用领域。
高频开关电源:
优势:芯片内部集成了多达4个高分辨率定时器,分辨率高达184皮秒,可以实现极其精确的PWM输出,这对于实现高频LLC、移相全桥等高效拓扑结构至关重要,能显著提升电源效率和功率密度。
应用:服务器电源、通信电源、工业电源、车载充电机、直流快充桩等。
功率因数校正:
优势:高分辨率定时器可以生成非常平滑的正弦波驱动信号,配合快速的ADC,能够实现高功率因数和低总谐波失真。
无线充电:
优势:需要复杂的算法来检测异物、控制能量传输,G474的Cortex-M4内核带有FPU和CORDIC协处理器,能高效运行这些算法,同时高精度定时器确保能量传输的精确控制。
太阳能逆变器/微型逆变器:
优势:需要完成MPPT算法、DC-AC转换等任务,G474的模拟和数字控制能力非常适合。

2. 高性能电机控制和驱动
STM32G474是复杂的多电机应用的理想选择。
丰富的定时器:除了高分辨率定时器,还拥有多个高级控制定时器,能够同时驱动多个电机。
运算加速器:内置的CORDIC和FMAC单元可以硬件加速三角函数(如FOC算法中的Park/Clarke变换)、滤波器等运算,极大减轻CPU负担,实现更高带宽和更高效的电机控制。
工业机器人:多关节伺服驱动。
无人机:无刷直流电调。
高端家电:变频空调压缩机、洗衣机直驱电机。
电动工具:需要高扭矩和快速响应的应用。

STM32G474单片机应用场景及其特色功能如下图所示:
在这里插入图片描述

八.总结

在了解STM32G474RET6单片机大概的内部信息和特性之后,基于STM32G474RET6的开发板,配合ST-LINK下载调试器,在Keil 5软件的加持下就可以进行编程操作了。

http://www.dtcms.com/a/438753.html

相关文章:

  • W3C 简介
  • 菲律宾宿务Cebu(宿雾)介绍
  • Python中如何实现多级缓存
  • 深入掌握 FluentMigrator:C#.NET 数据库迁移框架详解
  • 快速做网站套餐光谷网站建设哪家好
  • 基本定时器(TIM6、TIM7)的基本介绍
  • 荆州网站建设兼职旅游网站功能简介
  • 有关做美食的网站android源码下载网站
  • Ubuntu中部署docker教程及使用指南(易用版)
  • c++之基础A(系统函数)(第一课)
  • 使用scrollview 时,自动滚动条和视图大于子view时居中显示
  • 如何最小阻力练习软件测试相关的英语口语
  • 专门做视频点评的网站iis 新建网站没有文件夹权限
  • 【完整源码+数据集+部署教程】 小麦病害分割系统: yolov8-seg-dyhead
  • Java 黑马程序员学习笔记(进阶篇16)
  • 自适应网站功能网站开发开发的前景
  • 整套网站设计网络服务费
  • python autocad comtypes+pyautocad二次开发 pywin32连不上高版本cad解决办法
  • Linux——0:安装与配置、命令、gcc
  • 健康管理实训室:创新教学场景,推动健康管理人才实战能力提升
  • 网站建设设计模板工业设计 做自己的网站 知乎
  • CAN-FIFO 确认处理(FIFO Acknowledge Handling)
  • Java--多线程知识(四)
  • 浅谈内存DDR——DDR4的RASR/Bank Group等技术
  • 网站上传模板后xml天气预报网站怎么做
  • 人工智能:从技术本质到未来图景,一场正在重塑世界的变革
  • 成都私人网站制作做读书网站的前景
  • linux学习笔记(11)fork详解
  • Streamlit:CSS——从基础到实战美化应用
  • ORB_SLAM2原理及代码解析:Tracking::MonocularInitialization() 函数