标题: 辉芒微单片机芯片怎么设置数组缓存? [打印本页]

作者: likejian    时间: 2023-8-24 15:21
标题: 辉芒微单片机芯片怎么设置数组缓存?
  const unsigned char WsDat[];  //定义105个一维数组缓存

这样定义数组会出错,显示attempt to modify object qualified const
const uchar table[]={255,0,0,0,255,0,0,0,255,255,255,0,255,0,255,0,255,255};
我这样定义就没错误。

也不能像51那样直接unsigned char WsDat[];



作者: hcfat51h    时间: 2023-8-24 17:02
用什么型号的单片机 const unsigned char 是存在flash里,不能更改的,unsigned char如果有问题,是不是芯片的ram不够?我用FT61E14系列的定义unsigned char xxx[200]都没问题
作者: Hephaestus    时间: 2023-8-24 17:25
你确定51能定义105个成员的 WsDat[] ?
作者: ZSJM    时间: 2023-8-25 08:34
const  必须在开始给确定的值, 你不能定义一个空数组, 再在后面赋值, 程序认为你修改const的值.
作者: MCU_FANS    时间: 2023-8-25 13:38
FMD的const修饰的量是定量,也就是它的值时不变的,存在ROM区。也就是定义它的时候,必须有确定的值,所以 const unsigned char WsDat[]; 是会报错的。
另外一个题外话:既然要一个缓存,那么它就是变量了,就不应该用const修饰。FMD定义一个数组(在RAM区)大小是不允许大于一个bank的RAM空间大小的,也就是是105字节太大了。
作者: likejian    时间: 2023-9-27 16:49
理解不了。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1