你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
flashåçå®ç°.rar
2015-2-12 14:54 上传
点击文件名下载附件
6.78 MB, 下载次数: 186
ç¨åº
flashåæä½è¯´æ.rar
13.94 KB, 下载次数: 80
说æ
举报
拼命三郎 发表于 2015-2-13 08:36
整个程序是在UCOS系统下运行的。
写操作的函数为
/******************************************************
函数:CPU_INT08U flashWrite( CPU_INT08U *dataBuf, 4 x; f1 ?$ S- J/ d
CPU_INT08U NumOfData, ) l( {( c* `. L6 m6 k' |6 Y& P
CPU_INT08U SartAddr); L5 q7 v! C# _' y2 ~7 E( f( S
功能:将一串数据写入到片内flash
参数:CPU_INT08U *dataBuf //要被写入的数据指针 7 R5 |# _, P; r- v9 E; I. E+ {: v' W
CPU_INT08U NumOfData//写入数据的个数
CPU_INT08U SartAddr //在flash中对应0的偏移地址
******************************************************/
CPU_INT08U flashWrite( CPU_INT08U *dataBuf, // 要被写入的数据指针 CPU_INT08U NumOfData, //写入数据的个数0 s C6 m J* o" F* O% q1 i4 S
CPU_INT16U SartAddr) //在flash中对应0的偏移地址' n( n. P8 u# p" M# z, n' V
. H D9 V1 L& x% k/ p0 t% b
因stm32f103一个页面是2k,所以最大写入数据量为2k! p/ F2 h( U8 V: H9 Q
在flash.c中的有$ _, i# P' M' e: [- L8 i
#define FLASH_START_ADR 0x0800f000
那么0x0800f000就是0地址。函数中的SartAddr就是相对于0x0800f000的偏移地址' ^0 c9 ]$ T& B+ G+ {( j+ J1 f( c0 O
可以一次写入一个字节到2k字节。
操作过程是读改写
5 G- e9 e' L2 G; H
谢谢支持