你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
flashåçå®ç°.rar
2015-2-12 14:54 上传
点击文件名下载附件
6.78 MB, 下载次数: 186
ç¨åº
flashåæä½è¯´æ.rar
13.94 KB, 下载次数: 80
说æ
举报
拼命三郎 发表于 2015-2-13 08:36
% c$ r% N- i$ I6 O# g% d$ j, F9 c
整个程序是在UCOS系统下运行的。% J6 W( n: h$ }. p, _
写操作的函数为0 _! d! {) a7 I& |
/******************************************************
函数:CPU_INT08U flashWrite( CPU_INT08U *dataBuf,
CPU_INT08U NumOfData, p! N8 |+ a& a |# q
CPU_INT08U SartAddr)" K0 c$ [0 } V4 h; Q3 P
功能:将一串数据写入到片内flash# F+ N! M1 c! P: b" V5 z
参数:CPU_INT08U *dataBuf //要被写入的数据指针
CPU_INT08U NumOfData//写入数据的个数
CPU_INT08U SartAddr //在flash中对应0的偏移地址5 `7 D6 w" y# W/ H: D/ O* D
******************************************************/
CPU_INT08U flashWrite( CPU_INT08U *dataBuf, // 要被写入的数据指针 CPU_INT08U NumOfData, //写入数据的个数
CPU_INT16U SartAddr) //在flash中对应0的偏移地址( q) p9 ~0 I Y( e& e
因stm32f103一个页面是2k,所以最大写入数据量为2k
在flash.c中的有
#define FLASH_START_ADR 0x0800f000 * p3 B3 b' z( H2 ^
那么0x0800f000就是0地址。函数中的SartAddr就是相对于0x0800f000的偏移地址. C" Y1 ~1 b* S3 ?( ?
可以一次写入一个字节到2k字节。) y3 h) w9 i" F
操作过程是读改写
谢谢支持