因为要做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 阿莫电子论坛)相关推荐

  1. stm32 软件怎么设置写保护_STM32F407 读保护,写保护,解锁过程【芯片已设置读保护,无法读取更多信息】...

    硬件准备: CH340 USB转TTL串口一个 STM32F407 板子一块 设置从ISP启动 软件准备: 1,flash_loader_demo_v2.8.0.exe 或者 FlashLoader ...

  2. stm32 移植java_把Lua移植到stm32上,效果不错! (amoBBS 阿莫电子论坛)

    因为我们产品的需要满足不同行业需求,所以一直在寻找一个脚本语言,以便灵活配置. 前段时间还自己花时间去实现一个C语言解释器,看了一堆编译原理的东西,以及虚拟机等,头都搞大了,把基本功能实现了,但总是不 ...

  3. 如何设置u盘写保护防止u盘拷贝文件

    在网上搜索 u盘写保护是我们经常需要的解决办法,而今天我们为大家带来的却是 如何设置u盘写保护,设置u盘写保护主要是为了保护计算机中的文件不被窃取,那么接下来我们就进入u盘写保护怎么设置的正文中. 1 ...

  4. STM32 软件模拟IIC

    0.系列目录 STM32 软件模拟IIC STM32 使用DMP库处理MPU6050数据 STM32 MPU6050与匿名上位机通讯(V2.6版) 1.IIC通讯过程 SCL和SDA在空闲时候均为高电 ...

  5. STM32软件的烧写方式

    STM32软件的烧写方式 1 ST-LINK烧写 1.1 ST-LINK烧写的SWD模式 ST-LINK烧写的SWD模式 是ST-LINK烧写的一种方式,只需要4根接线. 分别为VCC,GND,SWC ...

  6. STM32启动地址设置及从非0x800000 开始调试程序

    首先设置程序的启动地址,STM32默认的启动地址是从0x8000000开始的,现在我要设置程序向后偏移10K地址,也就是从0x8002800启动. 需要分两步完成上面操作: 一.Keil MDK设置: ...

  7. 15. STM32——软件IIC驱动OLED屏幕显示字符、字符串、数字、汉字

    STM32--软件IIC驱动OLED屏幕显示 OLED屏幕 写命令 写内容 对OLED写入一个字节 设置光标 启动OLED 关闭OLED 全屏填充(清屏) 显示字符 显示字符串 获取次方 显示数字 显 ...

  8. 丰田pcwin是什么软件_丰田工机PCWin软件通讯设置及联机操作重点提示 - 图文 -...

    丰田工机PCWin软件通讯设置及联机操作重点提示 设备维修技术档案系列资料 这里介绍在PCWin软件环境下,如何和PLC进行接口,及最常用的维修操作方法. 一. USB电缆驱动(WIN XP环境) 1 ...

  9. YaoCCAD软件中设置坐标原点

    YaoCCAD软件中设置坐标原点 在使用YaoCCAD软件绘制图形时可能需要更改坐标原点,更改方法如下 (1)在软件左下方命令框输入命令"UCS"–>回车 (2)输入原点指令 ...

最新文章

  1. SpringBoot项目打包war部署到服务器去掉项目名所遇到的坑
  2. NO29 用户提权sudo配置文件详解实践--志行为审计
  3. 在ubuntu上使用gdb-multiarch 跨平台调试
  4. Lesson 12.4 逻辑回归建模实验
  5. SpringIOC、DI、AOP、MVC总结、时序图
  6. linux资源隔离是哪些,【转载】Linux cgroup资源隔离各个击破之
  7. python网络爬虫(三)数据抓取
  8. 超级抖音腾讯视频V3.6.0小程序源码 前端+后端 支持视频采集和上传
  9. Unity2018.3中文更新日志速览版
  10. java同步器__学习笔记
  11. java cloud面试题_spring cloud 面试题
  12. rocketdock_如何为USB闪存驱动器创建RocketDock便携式版本
  13. 计算机 26个英文字母代表数字,数字能量字母对照表-26个英文字母各代表什么数字...
  14. MQTT服务器Mosquitto的使用及配置过程中的一些问题和解决方法
  15. 使用讯飞语音识别的空指针错误
  16. 关闭iOS上京东app不停询问“京东想从MF839粘贴”,您允许这样做吗? - 允许iphone应用访问剪切板
  17. czl蒻蒟的OI之路6
  18. 用Python制作恋爱日志
  19. 浅析编程及类的本质、类的抽象
  20. Workbook对象的方法总结(二)

热门文章

  1. 航天联志Aisino系列服务器,高性价比 航天联志5241NR服务器评测
  2. Android练习之ImageAdapter
  3. C#,图像二值化(18)——全局阈值的模糊集理论算法(Huang Thresholding)与源程序
  4. masm5.0汇编+dosbox软件 搭建汇编环境
  5. ubifs性能优化分析
  6. Android 天气APP(十)继续优化、下拉刷新页面天气数据
  7. python roc计算_ROC评价指标最全攻略及Python实现
  8. HDU 1220 正方体问题
  9. win7忘记密码,启动恢复
  10. 微信公众号发送模板消息跳转指定页面(非首页)超级大坑