flash闪存使用和STM32CUBEMX安装教程【第三天】

flash闪存使用和STM32CUBEMX安装教程【第三天】flash 闪存使用和 STM32CUBEMX 安装教程 1 STM32FLASH 2 嵌入式 Flash 接口 3 嵌入式 Flash 4 FLASH 写入数据函数 5 FLASH 接收数据 6 STM32CUBEMX1 HAL 库 7 软件安装步骤 8 安装 STM32CUBEMX1 STM32CubeMX 软件简介 2 双击安装 3 打开 STM32CubeMX3 开发步骤 END 撒哟纳哟

【1】STM32 FLASH

在这里插入图片描述

`开发板STM32F407ZET6的flash大小:512KB 程序固化到FLASH,需要对BOOT0与BOOT1进行设置` 

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

【2】嵌入式 Flash 接口

【3】嵌入式 Flash

Flash 具有以下主要特性:

● 对于 STM32F40x 和 STM32F41x,容量高达 1 MB;对于 STM32F42x 和 STM32F43x, 容量高达 2 MB ● 128 位宽数据读取 ● 字节、半字(两个字节)、字(四个字节)和双字数据写入 ● 扇区擦除与全部擦除 ● 存储器组织结构 

Flash 结构如下:

— ,分为 4 个 16 KB 扇区、 1 个 64 KB 扇区和 7 个 128 KB 扇区 — 系统存主存储器块储器,器件在系统存储器自举模式下从该存储器启动 — 512 字节 OTP(一次性可编程),用于存储用户数据 OTP 区域还有 16 个额外字节,用于锁定对应的 OTP 数据块。 — 选项字节,用于配置读写保护、 BOR 级别、软件/硬件看门狗以及器件处于待机或 停止模式下的复位。 

在这里插入图片描述

【4】FLASH写入数据函数

//写双字(8个字节) FLASH_Status FLASH_ProgramDoubleWord(uint32_t Address, uint64_t Data); //写字(4个字节) FLASH_Status FLASH_ProgramWord(uint32_t Address, uint32_t Data); //写半字(2个字节) FLASH_Status FLASH_ProgramHalfWord(uint32_t Address, uint16_t Data); //写字节(1个字节) FLASH_Status FLASH_ProgramByte(uint32_t Address, uint8_t Data); 

【5】FLASH接收数据

void Flash_Read(u32 addr, u8* read_buff, u32 len) { 
    u32 FLASH_USER_START_ADDR, FLASH_USER_END_ADDR, uwAddress; //计算开始地址 FLASH_USER_START_ADDR = addr; //计算结束地址 FLASH_USER_END_ADDR = FLASH_USER_START_ADDR+len; uwAddress = FLASH_USER_START_ADDR; //0x0 while (uwAddress < FLASH_USER_END_ADDR) { 
    *read_buff = *(__IO uint8_t*)uwAddress; // 解引用从扇区读数据 一个一个字符的读 read_buff++; uwAddress = uwAddress + 1; } 

【6】STM32CUBEMX

1、HAL库

【1】HAL是Hardware Abstraction Layer的缩写,中文名:硬件抽象层。HAL库是ST为STM32最新推出的抽象层嵌入式软件,可以更好的确保跨STM32产品的最大可移植性。该库提供了一整套一致的中间件组件,如RTOS,USB,TCP/ IP和图形等。
【2】 HAL库是基于一个非限制性的BSD许可协议(Berkeley Software
Distribution)而发布的开源代码。
【3】 ST制作的中间件堆栈(USB主机和设备库,STemWin)带有允许轻松重用的许可模式, 只要是在ST公司的MCU 芯片上使用,库中的中间件(USB 主机/设备库,STemWin)协议栈即被允许随便修改,并可以反复使用。至于基于其它著名的开源解决方案商的中间件(FreeRTOS,FatFs,LwIP和PolarSSL)也都具有友好的用户许可条款。






【4】可以说HAL库就是用来取代之前的标准外设库的。相比标准外设库,STM32Cube HAL库表现出更高的抽象整合水平,HAL API集中关注各外设的公共函数功能,这样便于定义一套通用的用户的API函数接口,从而可以轻松实现从一个STM32产品移植到另一个不同的STM32系列产品。HAL库是ST未来主推的库,从前年开始ST新出的芯片已经没有STD库了,比如F7系列。目前,HAL库已经支持STM32全线产品。

ST提供库函数:标准库、LL库、HAL
图形开发方法:STM32CUBEMX+KEIL STM32CUBEIDE(STM32CUBEMX+KEIL)

【7】软件安装步骤

1、安装keil软件 2、双击安装HAL库 

STM32全部系列最新HAL库下载
链接:https://pan.baidu.com/s/127B1NmYHPLc地址cUjzjxCiG0w
提取码:abeg




【8】安装STM32CUBEMX

下载网址:https://blog.csdn.net/wwwq2014/article/details/

1、STM32CubeMX软件简介

STM32CubeMX是意法半导体推出的图形化配置工具,通过傻瓜化的操作便能实现相关配置,最终能够生成C语言代码,支持多种工具链目前提供完全免费的版本,并且,通过插件式安装,可以将STM32CubeMX集成在一个IDE,使用十分方便。接下来我们一起来安装它吧

准备阶段:
链接:https://pan.baidu.com/s/1CYGH2LevHiOj9O34L38Uzg
提取码:ujvv




软件安装步骤
1、双鸡安装(或者以管理员权限运行安装)STM32CubeMX软件所需要的java环境。
在这里插入图片描述
在这里插入图片描述






安装完成,点击关闭即可

在这里插入图片描述

2、双击安装

3、打开STM32CubeMX

在这里插入图片描述

正在下载包,并安装,等待即可。

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

上面就是STM32CubeMX安装的全过程了。安装完成后,就可以进行自己的STM32CubeMX开发之旅了。

3、开发步骤

1、从芯片建立工程
在这里插入图片描述

在这里插入图片描述

2、设置时钟
在这里插入图片描述
在这里插入图片描述




3、引脚设置

在这里插入图片描述

4、代码生成设置
在这里插入图片描述
在这里插入图片描述




4、生成代码

在这里插入图片描述

【END】撒哟纳哟

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/178631.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午4:50
下一篇 2026年3月26日 下午4:51


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号