HR8P506,FLASH的IAP操作与RAM不得不说的秘密
来源:互联网 发布:半自动咖啡机 知乎 编辑:程序博客网 时间:2024/05/16 06:54
好久不更新,今天弄了个FLASH的IAP自编程操作,,,
进行这节前一定一定要熟读FLASH章节.
首先,要做IAP操作要记得将配置字设置一下.
可以看到,最快捷的方式是将FWPEB位设置成Disable就好了.
其余设置自己领悟.
然后只要在程序中调用已经写好的库函数就好了.
举个栗子:
#define START_ADDR 0x00006400#define PAGE_ADDR (START_ADDR / 1024)//一页为1Kuint32_t rbuf;uint32_t Time;int main(void){ while (1) { Time++; if(ReadKey)//按键按下,将计时数值写入FLASH { IAP_ErasePage(PAGE_ADDR); IAP_WriteWord(0, PAGE_ADDR, Time); } IAP_Read(&rbuf, START_ADDR + count, 1);//读出FLASH内容 printf("Time: %5d Flash: %5d ",Time,rbuf);//打印数据 }}
这个程序,,,只是写大概意思,请自行补全…
编译,下载.
但是发现每次要写入FLASH的时候,,,单片机都复位了….
这是嘛回事.
跟踪发现,程序每次进行到这里就复位了.
使能FLASH操作单片机就进入了二次元.这是怎么回事.
折腾了一下午,,,最后发现手册里面如是说
程序要在SRAM里面运行才正常,,,,,
SRAM:怪我咯..
那么问题来了,怎样才能让代码在SRAM里运行呢…
很简单:
选中lib_flashiap.c文件,右键,选择Options for File ‘lib_flashiap.c’这个选项.
在Code/Const这里选择成IRAM1就好了.
点击确定,重新编译,烧录.
OK,IAP功能可以正常使用了
0 0
- HR8P506,FLASH的IAP操作与RAM不得不说的秘密
- mvc与三层架构不得不说的秘密
- Mysql与cmd不得不说的秘密
- write和read的不得不说的秘密
- JavaScript操作iframe之不得不说的秘密(一)
- JavaScript操作iframe之不得不说的秘密(一)
- 魔镜告诉我芙蓉姐姐与古天乐不得不说的秘密
- 局部变量与成员变量不得不说的秘密!
- 我与户外充气帐篷不得不说的秘密
- Android开发之DrawerLayout与ToolBar之间不得不说的秘密
- 银联与微支不得不说的秘密
- IE9:九个不得不说的秘密
- AR技术不得不说的秘密
- Android NDK不得不说的秘密
- wireshark 与计算机网络额不得不说的秘密---->16位进制面板(解析器)的介绍
- 关于switch不得不说的几点小秘密
- 建行与派出所,及工行的不得不说的事儿
- Java中与String有关的且不得不说的事
- Gradle参数话构建项目
- 1080. Graduate Admission (30)
- 像元与像素
- 如何配置hive session过期时间
- 人活着系列之寻找最完美的人生
- HR8P506,FLASH的IAP操作与RAM不得不说的秘密
- 焦点透视与成角透视
- runnable
- python利用MySQLdb操作远程数据库
- 1081. Rational Sum (20)
- 基于canvas的二维码邀请函生成插件
- java集合框架介绍
- PAT-B 1014. 福尔摩斯的约会 (20)
- AtCoder 2334 枚举