boy123 发表于 2005-4-5 15:53:07

马老师,请问一下我用M128,其中我做了点阵的字库放在FLASH中,如果放在高64K中我怎么

马老师,请问一下我用M128,其中我做了点阵的字库放在FLASH中,如果放在高64K中我怎么样才能读出来.



我用的是WINAVR这个免费的软件.可不可用标准C读出来?

比如这样子.

unsigned char const M_code[]={

0x00,0x10,…………

}

void test_disp(void)

{unsigned char flash_code;

flash_code = M_code;



}

不知这样子能不能读出来?在低64K可以读取。在高64K时怎么办?

lurker_soo 发表于 2005-4-5 19:09:17

你確認你這樣寫程序是把它放在FLASH中嗎?

#include <avr/pgmspace.h>



const prog_uchar led_display_array[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,

                                              0x82,0xF8,0x80,0x90};



.

.

.

recedata=4;

PORTA=pgm_read_byte(led_display_array+recedata);

.

.

.

讀出來對與錯很容易從軟件仿真裡看出來的。詳細看一下WinAVR的User Manual,很容易的。

boy123 发表于 2005-4-6 09:07:23

谢谢.

makesoft 发表于 2005-7-5 15:24:08

看芯片手册128的存储器组织应该是64K*16BIT,所以你直接对FLASH访问 unsigned int 就可以读出来,不存在高64K和低64K的说法。

blackhorse21 发表于 2012-7-31 10:00:55

makesoft 发表于 2005-7-5 15:24 static/image/common/back.gif
看芯片手册128的存储器组织应该是64K*16BIT,所以你直接对FLASH访问 unsigned int 就可以读出来,不存在高6 ...

太感谢了,启发甚大!
页: [1]
查看完整版本: 马老师,请问一下我用M128,其中我做了点阵的字库放在FLASH中,如果放在高64K中我怎么