21ic电子技术开发论坛

标题: 请教STM32读取内部FLASH [打印本页]

作者: key10    时间: 2009-12-17 17:05
标题: 请教STM32读取内部FLASH
大家好,对于STM32我是一个新手,要向大家请教。
有个项目要使用STM32,程序中有些数据要放在内部的FLASH中,这些数据在程序中要进行使用。
网上看了些帖子,烧FLASH的例子较多,那该如何取那些存在FLASH中的数据呢?
对这个应用,有使用STM32固件库的例子吗?

作者: 香水城    时间: 2009-12-17 17:16
该如何取那些存在FLASH中的数据呢? 就好像定义了一些常量一样,直接读出即可,:lol

作者: vigia    时间: 2009-12-17 17:17
读FLASH?

和读RAM没有任何区别。

作者: key10    时间: 2009-12-17 17:40
问题是这样的。比如在0x08000c00-0x08000fff中存储1K字节的数据,这些数据根据不同的需要是要通过串口来写入这个地址空间,也就没法定义为常量了。烧FLASH的例子很多,现在我不知道在程序里该怎么写,能取到这些数据。IDE是使用IAR EWARM。

作者: 香水城    时间: 2009-12-17 17:56
在那个位置随便定义一个常量数组,反正数组会被重新写入。

作者: lxyppc    时间: 2009-12-17 19:03
问题是这样的。比如在0x08000c00-0x08000fff中存储1K字节的数据,这些数据根据不同的需要是要通过串口来写入这个地址空间,也就没法定义为常量了。烧FLASH的例子很多,现在我不知道在程序里该怎么写,能取到这些数据 ...
key10 发表于 2009-12-17 17:40


const unsigned char*  pBuffer = (const unsigned char*)0x08000c00;
for(u32 i=0;i<1024;i++){
  // Some operation for pBuffer[ i ]
}

作者: yqylove    时间: 2010-3-27 15:24
“该如何取那些存在FLASH中的数据呢? 就好像定义了一些常量一样,直接读出即可
”是否需加什么关键字?能举个例子吗?比如将int a[100] 定义到内部flash中 的定义和读取

作者: yqylove    时间: 2010-3-27 15:32
“在那个位置随便定义一个常量数组,反正数组会被重新写入。”
我需要定义的变量是用来存大量图形字模的,不想占用ram空间,所以不想定义成常量数组,加const。能否举个将变量定义到flash中和读取该种变量的例子,谢谢

作者: mcuisp    时间: 2010-3-27 20:15
用指针取咯

作者: lxyppc    时间: 2010-3-27 22:23
“在那个位置随便定义一个常量数组,反正数组会被重新写入。”
我需要定义的变量是用来存大量图形字模的,不想占用ram空间,所以不想定义成常量数组,加const。能否举个将变量定义到flash中和读取该种变量的例子,谢 ...
yqylove 发表于 2010-3-27 15:32

const unsigned char  imageBuffer[1024] = {0,0,1,1,2,2,3,3,...};
for(u32 i=0;i<1024;i++){
    Display(imageBuffer);
}

作者: pkat    时间: 2010-3-28 20:57
想问读取FLASH和读RAM的区别,也就是3楼的疑问

作者: xjwbh    时间: 2010-4-10 10:35
定义成const就应该在flash中了,不会占用ram.





欢迎光临 21ic电子技术开发论坛 (https://bbs.21ic.com/)