嵌入式每日500(4)231104 (Flash类型定义、Flash常量定义、Flash函数)
文章目录
- 1.Flash类型定义(两个结构体)
- 2.Flash常量定义(3种)
- 3.Flash函数(31个,FLASH分为两个区,一个是普通的存储空间,一个是选项字节OB,函数名里带OB的就是对选项字节空间的操作)
1.Flash类型定义(两个结构体)
//Flash程序结构定义
//FLASH_ProcedureTypeDef
typedef enum
{FLASH_PROC_NONE = 0,FLASH_PROC_PAGEERASE = 1,FLASH_PROC_MASSERASE = 2,FLASH_PROC_PROGRAMHALFWORD = 3,FLASH_PROC_PROC_PROGRAMWORD = 4,FLASH_PROC_PROGRAMDOUBLEWORD = 5
}FLASH_RrocedureTypeDef;//Flash处理结构定义
//FLASH_ProcessTypeDef
typedef struct
{_IO FLASH_ProcessTypeDef ProcedureOnGoing; //在IT环境下使用内部变量来表示程序是否正在进行_IO uint32_t DataRemaining;//在IT环境下使用内部变量用来保存要擦除的其余页或半字编程_TO uint32_t Address;//用来保存编程模式或擦除地址的内部变量_IO uint64_t Data;//用来保存编程数据的内部变量HAL_LockTypeDef Lock;//Flash锁存对象_IO uint32_t ErrorCode;//Flash错误代码,该参数可以是FLASH_Error_Codes的值之一
}FLASH_ProcessTypeDef;
2.Flash常量定义(3种)

3.Flash函数(31个,FLASH分为两个区,一个是普通的存储空间,一个是选项字节OB,函数名里带OB的就是对选项字节空间的操作)
| 序号 | 函数名 | 功能描述 |
|---|---|---|
| 1 | FLASH_PageErase | 删除指定的Flash存储页 |
| 2 | FLASH_Program_HalfWord | 在指定的地址编程(写入)半字 |
| 3 | FLASH_SetErrorCode | 置位指定的Flash错误标志位 |
| 4 | FLASH_WaitForLastOperation | 等待一个Flash操作结束 |
| 5 | HAL_FLASH_EndofOperationCallback | Flash操作结束中断回调函数 |
| 6 | HAL_FLASH_IRQHandler | 处理中断请求函数 |
| 7 | HAL_FALSH_OperationErrorCallback | Flash操作错误中断回调函数 |
| 8 | HAL_FLASH_Program | 在指定的地址以半字、字或双字编程 |
| 9 | HAL_FLASH_Program_IT | 在指定的地址以半字、字或双字编程,并使能中断 |
| 10 | HAL_FLASH_Lock | 锁定Flash控制寄存器访问 |
| 11 | HAL_FLASH_OB_Launch | 启动选项字节的装载 |
| 12 | HAL_FLASH_OB_Lock | 解锁Flash控制寄存器访问 |
| 13 | HAL_FLASH_OB_Unlock | 解锁Flash控制寄存器访问 |
| 14 | HAL_FLASH_Unlock | 解锁Flash控制寄存器访问 |
| 15 | HAL_FLASH_GetError | 获取特定的Flash错误标志位 |
| 16 | FLASH_MaseErase | 全部擦除Flash存储器组 |
| 17 | FLASH_OB_DisableWRP | 禁用目标页面写保护 |
| 18 | FLASH_OB_EnableWRP | 对目标页面使能写保护 |
| 19 | FLASH_OB_GetRDP | 返回Flash写保护级别 |
| 20 | FLASH_OB_GetUser | 返回Flash用户选项字节的值 |
| 21 | FLASH_OB_GetWRP | 返回Flash写保护选项字节的值 |
| 22 | FLASH_OB_ProgramData | 对指定的选项字节数据地址使用半字节编程 |
| 23 | FLASH_OB_RDP_LevelConfig | 设置读保护级别 |
| 24 | FLASH_OB_UserConfig | 编程Flash用户选项字节 |
| 25 | FLASH_PageErase | 删除指定的Flash存储器页面 |
| 26 | HAL_FLASHEx_Erase | 执行块擦除或擦除指定的Flash存储器页面 |
| 27 | HAL_FLASHEx_Erase_IT | 执行块擦除或擦除指定的Flash存储器页面并使能中断 |
| 28 | HAL_FLASHEx_OBErase | 删除Flash选项字节 |
| 29 | HAL_FLASHEx_OBGetConfig | 获取选项字节配置 |
| 30 | HAL_FLASHEx_OBGetUserData | 获取选项字节用户数据 |
| 31 | HAL_FLAHEx_OBProgram | 编程选项字节 |































相关文章:
嵌入式每日500(4)231104 (Flash类型定义、Flash常量定义、Flash函数)
文章目录 1.Flash类型定义(两个结构体)2.Flash常量定义(3种)3.Flash函数(31个,FLASH分为两个区,一个是普通的存储空间,一个是选项字节OB,函数名里带OB的就是对选项字节空…...
21款奔驰GLC300L升级23P驾驶辅助 出行更加的安全
驾驶辅助和自动驾驶的区别就是需要人为去接管,虽然车辆会根据道路自己行驶,弯道上也能居中自动修正行驶,长时间不接管方向盘,系统会提示人为接管,这就是奔驰的23P驾驶辅助系统, 很多车友升级23P驾驶辅助系…...
【小黑嵌入式系统第七课】PSoC® 5LP 开发套件(CY8CKIT-050B )——PSoC® 5LP主芯片、I/O系统、GPIO控制LED流水灯的实现
上一课: 【小黑嵌入式系统第六课】嵌入式系统软件设计基础——C语言简述、程序涉及规范、多任务程序设计、状态机建模(FSM)、模块化设计、事件触发、时间触发 文章目录 一、PSoC 5LP主芯片二、PSoC 5LP I/O系统(1) I/O系统特性(2) I/O系统怎样运作?1、I/…...
深度学习简史
一、说明 为了学习好深度学习,有必要知道深度学习的整个成长历史,可以说,深度学习的发展历程伴随整个人工智能的成长历程,本文将介绍这个历程的关键性历史节点。 二、深度学习的旅程 2.1 深度学习的当前认知 深度学习是机器学习的…...
CSRF 和 XSS 是什么
在Web开发中,安全性是至关重要的。然而,随着网络攻击技术的不断演进,跨站请求伪造(CSRF)和跨站脚本攻击(XSS)成为了最常见和具有破坏力的网络安全威胁之一。本文将介绍CSRF和XSS的概念、原理以及…...
亚信科技发布“电信级”核心交易数据库AntDB7.0,助力政企“信”创未来!
昨日,亚信科技AntDB数据库 7.0产品线上发布会成功举办,数千位关注亚信科技、关注国产数据库,致力于推动数据库行业变革的专家、客户热情参与,并对发布会及产品给予高度评价。 新增两大技术特性 作为我国最早一批独立研发的通用型…...
硬件调试-电源纹波测量
硬件调试-电源纹波测量 Fang XS.1452512966qq.com如果有错误,希望被指出,学习技术的路难免会磕磕绊绊量的积累引起质的变化感谢酸奶大佬提供的硬件技术指导; 电源纹波 百度百科定义如下: 纹波是由于直流稳定电源的电压波动而造…...
【洛谷算法题】P5710-数的性质【入门2分支结构】
👨💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5710-数的性质【入门2分支结构】🌏题目描述🌏输入格式&a…...
arcgis图上添加发光效果!
看完本文, 你可以不借助外部图片素材, 让你的图纸符号表达出你想要的光! 我们以之前的某个项目图纸为例,来介绍下让符号发光的技术! 第一步—底图整理 准备好栅格影像底图、行政边界的矢量数据,确保“数据合适、位置正确、边界吻合”。 确定好图纸的大小、出图比例、投…...
[MySQL]——SQL预编译、动态sql
键盘敲烂,年薪30万🌈 目录 一、SQL的预编译 📕一条SQL语句的执行过程 📕弊端 📕预编译SQL的优势 📕两种参数占位符 📕小结 二、动态SQL 📕概念介绍: Ǵ…...
安装ifconfig命令(两步搞定)
如果你输入ifconfig显示没有这条命令,最可能的原因就是你在安装CentOS,先择的是最小安装模式,默认不安装ifconfig等命令, 解决办法:1. yum安装ifconfig这个命令包。命令:yum search ifconfig 2.通过yum …...
【蓝桥杯 第十届省赛Java B组】真题训练(A - H)H待更新
目录 A、组队 - 看图一眼出答案 B、不同子串 - 字符串模拟 set去重 C、数列求值 - 模拟取余 D、数的分解 - 三重暴力 E、迷宫 - bfs 判断路径 F、特别数的和 - 弱智模拟 G、外卖店优先级 - map 暴力(90%通过率) H、人物相关性分析 - A、组队 -…...
【牛客题】二进制求和 <模拟>
给定两个用字符串表示的二进制数,返回他们的和。 数据范围:字符串长度满足 1 ≤ n ≤ 1 0 5 10^5 105 ,字符串中只含有 0 和 1,且保证除 0 以外的二进制数没有前导零的情况。 示例输入: "101","1&qu…...
Error:Only idle or expired IP address can be disabled.
华为数通设备,在配置DHCP排除地址时可能会出现以下情况 Error:Only idle or expired IP address can be disabled. 这是因为地址已经被分配出去,所以现在无法进行排除 解决方法 1.先进入接口关闭DHCP [CE2-GigabitEthernet0/0/1]undo dhcp select g…...
Xubuntu16.04系统中create_ap开启5G网络的踩坑记录
Xubuntu16.04系统中安装create_ap创建无线AP: https://blog.csdn.net/qq_45445740/article/details/133972642?spm1001.2014.3001.5501 目录 1.create_ap.conf 配置文件解析2.关于信号强度和延时2.1 信号强度2.2 信号延时2.3 网络延时测试工具推荐——PingPlotter …...
8. 一文快速学懂常用工具——Linux命令(上)
本章讲解知识点 引言 指令学习 本专栏适合于软件开发刚入职的学生或人士,有一定的编程基础,帮助大家快速掌握工作中必会的工具和指令。本专栏针对面试题答案进行了优化,尽量做到好记、言简意赅。如专栏内容有错漏,欢迎在评论区指…...
@RestController注解说明
在Spring框架中,RestController注解是一个非常重要的注解,它用于将一个类标记为RESTful风格的控制器。本文将详细介绍RestController注解的作用和用法,并提供示例以帮助读者更好地理解和使用它。 RestController的作用 RestController注解是…...
Excel中行列范围的转换
将 行:1,4-5,8,11 列:a,c-e,f 这种写法转换成单元格地址的方法。 public static Tuple<List<int>, List<string>> ConvertRowColumn(string rowRep, string colRep){List<int> rowIdxs new List<int>();rowRep rowRep.…...
golang的类型断言
前言:原因很简单,写的代码panic了。报错如下。为此专门看下golang的类型断言。 “[PANIC]interface conversion: interface {} is string, not float64”。 1、类型断言(assertion) 所谓“类型断言”即判断一个变量是不是某个类型的实例(简单来讲就是判…...
监听dom变化,监听dom属性变化
一、利用new MutationObserver const config {attributes: true, // 监听属性变化childList: true, // 监听子节点变subtree: true // 监听后代元素变化};jianting new MutationObserver(() > {this.changeFun()});jianting.observe(dom, config) /监听 jianting.disconne…...
AI Agent的隐私保护设计:合规前提下的用户数据使用策略
AI Agent的隐私保护设计:合规前提下的用户数据使用策略引言 各位技术同行、AI应用开发者、产品经理以及对用户数据与智能交互边界敏感的读者朋友们,大家好!我是深耕AI工程化落地与数据治理领域8年的技术博主「码海拾遗」。在过去的3年里&…...
Path of Building:流放之路玩家的终极Build规划指南
Path of Building:流放之路玩家的终极Build规划指南 【免费下载链接】PathOfBuilding Offline build planner for Path of Exile. 项目地址: https://gitcode.com/GitHub_Trending/pa/PathOfBuilding 还在为《流放之路》复杂的天赋树和装备搭配头疼吗&#x…...
PointPillars:面向自动驾驶的高效3D点云目标检测技术实现
PointPillars:面向自动驾驶的高效3D点云目标检测技术实现 【免费下载链接】PointPillars 项目地址: https://gitcode.com/gh_mirrors/po/PointPillars 1. 技术挑战与解决方案 自动驾驶系统面临的核心挑战之一是实时感知复杂的三维环境。激光雷达(LiDAR)作为…...
Jetson Orin Nano 上跑 DeepSeek 模型实测:1.5B 和 7B 哪个更香?附完整部署流程
Jetson Orin Nano 深度评测:1.5B vs 7B 模型实战指南 当边缘计算遇上大语言模型,如何在资源受限的硬件上实现最优性能?作为英伟达边缘计算产品线的明星设备,Jetson Orin Nano凭借其紧凑体积和强大算力,成为众多开发者在…...
3秒定位文件:Linux文件搜索效率提升10倍的秘密武器
3秒定位文件:Linux文件搜索效率提升10倍的秘密武器 【免费下载链接】fsearch A fast file search utility for Unix-like systems based on GTK3 项目地址: https://gitcode.com/gh_mirrors/fs/fsearch 在Linux系统中,文件搜索往往是效率瓶颈的重…...
Batocera.linux主题定制完全指南:打造个性化游戏界面终极教程
Batocera.linux主题定制完全指南:打造个性化游戏界面终极教程 【免费下载链接】batocera.linux batocera.linux 项目地址: https://gitcode.com/gh_mirrors/ba/batocera.linux Batocera.linux是一款强大的开源复古游戏系统,让用户能够在各种硬件上…...
MALSync快速入门:5分钟掌握自动剧集追踪技巧
MALSync快速入门:5分钟掌握自动剧集追踪技巧 【免费下载链接】MALSync Integrates MyAnimeList/AniList/Kitsu/Simkl into various sites, with auto episode tracking. 项目地址: https://gitcode.com/gh_mirrors/ma/MALSync MALSync是一款强大的浏览器扩展…...
终极Windows 11优化指南:如何用Win11Debloat让电脑提速70%的完整教程
终极Windows 11优化指南:如何用Win11Debloat让电脑提速70%的完整教程 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to de…...
三场正交相位场统一论2.0——宇宙底层规律与星际航行的终极答案
前言:打破百年物理枷锁,回归宇宙本质逻辑从麦克斯韦完成电磁力的初步统一,到特斯拉触摸到反重力的技术边缘,从爱因斯坦构建时空弯曲的引力假说,到张祥前提出空间螺旋统一场模型,人类为破解宇宙四大力统一的…...
金融数据接口实战指南:从基础认知到生态拓展
金融数据接口实战指南:从基础认知到生态拓展 【免费下载链接】akshare AKShare is an elegant and simple financial data interface library for Python, built for human beings! 开源财经数据接口库 项目地址: https://gitcode.com/gh_mirrors/aks/akshare …...
