標(biāo)題: 輝芒微單片機(jī)芯片怎么設(shè)置數(shù)組緩存? [打印本頁]

作者: likejian    時間: 2023-8-24 15:21
標(biāo)題: 輝芒微單片機(jī)芯片怎么設(shè)置數(shù)組緩存?
  const unsigned char WsDat[];  //定義105個一維數(shù)組緩存

這樣定義數(shù)組會出錯,顯示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
用什么型號的單片機(jī) 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  必須在開始給確定的值, 你不能定義一個空數(shù)組, 再在后面賦值, 程序認(rèn)為你修改const的值.
作者: MCU_FANS    時間: 2023-8-25 13:38
FMD的const修飾的量是定量,也就是它的值時不變的,存在ROM區(qū)。也就是定義它的時候,必須有確定的值,所以 const unsigned char WsDat[]; 是會報錯的。
另外一個題外話:既然要一個緩存,那么它就是變量了,就不應(yīng)該用const修飾。FMD定義一個數(shù)組(在RAM區(qū))大小是不允許大于一個bank的RAM空間大小的,也就是是105字節(jié)太大了。
作者: likejian    時間: 2023-9-27 16:49
理解不了。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1