stm32 软件怎么设置写保护_STM32 , 写保护问题! (amobbs.com 阿莫电子论坛)
因为要做IAP,所有测试一下读写内部FLASH。
刚刚测试了,向内部FLASH中写数据,没有问题。
可是写保护怎么也弄不对,程序是EXAMPLE里的历程改的,每次写保护某些页后,函数的返回值都是错的(FLASH_ERROR_PG)。用FLASH LOADER 查看整个FLASH的状态,没有写保护成功。………………
以下是程序:
int main(void)
{
FLASHStatus = FLASH_COMPLETE;
MemoryProgramStatus = PASSED;
Data = 0x1753;
EraseCounter = 0x0;
/* RCC Configuration */
RCC_Configuration();
/* NVIC Configuration */
NVIC_Configuration();
/* 串口初始化 */
Stm32f103b_Usart1Init();
/* Unlock the Flash Program Erase controller */
FLASH_Unlock();
/* Define the number of page to be erased */
NbrOfPage = (EndAddr - StartAddr) / FLASH_PAGE_SIZE;
FLASH_ClearFlag(FLASH_FLAG_BSY | FLASH_FLAG_EOP|FLASH_FLAG_PGERR |FLASH_FLAG_WRPRTERR);
/* Get pages write protection status */
WRPR_Value = FLASH_GetWriteProtectionOptionByte();
ProtectedPages = WRPR_Value & 0x000000C0;
if (ProtectedPages != 0x00)
{/* Pages not write protected */
/* Enable the pages write protection */
printf("flash is not protected!!!\n");
FLASHStatus = FLASH_EnableWriteProtection(FLASH_WRProt_Pages24to27 |FLASH_WRProt_Pages28to31);
if (FLASHStatus!=FLASH_COMPLETE) printf("FLASHStatus = %d\n",FLASHStatus);
/* Generate System Reset to load the new option byte values */
NVIC_GenerateSystemReset();
}
else
{
printf("flash is protected!!!\n");
}
while (1)
{
}
}
stm32 软件怎么设置写保护_STM32 , 写保护问题! (amobbs.com 阿莫电子论坛)相关推荐
- stm32 软件怎么设置写保护_STM32F407 读保护,写保护,解锁过程【芯片已设置读保护,无法读取更多信息】...
硬件准备: CH340 USB转TTL串口一个 STM32F407 板子一块 设置从ISP启动 软件准备: 1,flash_loader_demo_v2.8.0.exe 或者 FlashLoader ...
- stm32 移植java_把Lua移植到stm32上,效果不错! (amoBBS 阿莫电子论坛)
因为我们产品的需要满足不同行业需求,所以一直在寻找一个脚本语言,以便灵活配置. 前段时间还自己花时间去实现一个C语言解释器,看了一堆编译原理的东西,以及虚拟机等,头都搞大了,把基本功能实现了,但总是不 ...
- 如何设置u盘写保护防止u盘拷贝文件
在网上搜索 u盘写保护是我们经常需要的解决办法,而今天我们为大家带来的却是 如何设置u盘写保护,设置u盘写保护主要是为了保护计算机中的文件不被窃取,那么接下来我们就进入u盘写保护怎么设置的正文中. 1 ...
- STM32 软件模拟IIC
0.系列目录 STM32 软件模拟IIC STM32 使用DMP库处理MPU6050数据 STM32 MPU6050与匿名上位机通讯(V2.6版) 1.IIC通讯过程 SCL和SDA在空闲时候均为高电 ...
- STM32软件的烧写方式
STM32软件的烧写方式 1 ST-LINK烧写 1.1 ST-LINK烧写的SWD模式 ST-LINK烧写的SWD模式 是ST-LINK烧写的一种方式,只需要4根接线. 分别为VCC,GND,SWC ...
- STM32启动地址设置及从非0x800000 开始调试程序
首先设置程序的启动地址,STM32默认的启动地址是从0x8000000开始的,现在我要设置程序向后偏移10K地址,也就是从0x8002800启动. 需要分两步完成上面操作: 一.Keil MDK设置: ...
- 15. STM32——软件IIC驱动OLED屏幕显示字符、字符串、数字、汉字
STM32--软件IIC驱动OLED屏幕显示 OLED屏幕 写命令 写内容 对OLED写入一个字节 设置光标 启动OLED 关闭OLED 全屏填充(清屏) 显示字符 显示字符串 获取次方 显示数字 显 ...
- 丰田pcwin是什么软件_丰田工机PCWin软件通讯设置及联机操作重点提示 - 图文 -...
丰田工机PCWin软件通讯设置及联机操作重点提示 设备维修技术档案系列资料 这里介绍在PCWin软件环境下,如何和PLC进行接口,及最常用的维修操作方法. 一. USB电缆驱动(WIN XP环境) 1 ...
- YaoCCAD软件中设置坐标原点
YaoCCAD软件中设置坐标原点 在使用YaoCCAD软件绘制图形时可能需要更改坐标原点,更改方法如下 (1)在软件左下方命令框输入命令"UCS"–>回车 (2)输入原点指令 ...
最新文章
- SpringBoot项目打包war部署到服务器去掉项目名所遇到的坑
- NO29 用户提权sudo配置文件详解实践--志行为审计
- 在ubuntu上使用gdb-multiarch 跨平台调试
- Lesson 12.4 逻辑回归建模实验
- SpringIOC、DI、AOP、MVC总结、时序图
- linux资源隔离是哪些,【转载】Linux cgroup资源隔离各个击破之
- python网络爬虫(三)数据抓取
- 超级抖音腾讯视频V3.6.0小程序源码 前端+后端 支持视频采集和上传
- Unity2018.3中文更新日志速览版
- java同步器__学习笔记
- java cloud面试题_spring cloud 面试题
- rocketdock_如何为USB闪存驱动器创建RocketDock便携式版本
- 计算机 26个英文字母代表数字,数字能量字母对照表-26个英文字母各代表什么数字...
- MQTT服务器Mosquitto的使用及配置过程中的一些问题和解决方法
- 使用讯飞语音识别的空指针错误
- 关闭iOS上京东app不停询问“京东想从MF839粘贴”,您允许这样做吗? - 允许iphone应用访问剪切板
- czl蒻蒟的OI之路6
- 用Python制作恋爱日志
- 浅析编程及类的本质、类的抽象
- Workbook对象的方法总结(二)
热门文章
- 航天联志Aisino系列服务器,高性价比 航天联志5241NR服务器评测
- Android练习之ImageAdapter
- C#,图像二值化(18)——全局阈值的模糊集理论算法(Huang Thresholding)与源程序
- masm5.0汇编+dosbox软件 搭建汇编环境
- ubifs性能优化分析
- Android 天气APP(十)继续优化、下拉刷新页面天气数据
- python roc计算_ROC评价指标最全攻略及Python实现
- HDU 1220 正方体问题
- win7忘记密码,启动恢复
- 微信公众号发送模板消息跳转指定页面(非首页)超级大坑