MCB1700 평가 보드와 함께 작업합니다. (320 x 240) TF LCD 디스플레이가 있습니다. IDE : Keil uvision4 4.03q. 내 작업은 PC에서 MCB1700으로 그림을 다운로드하여 LCD
에 표시하고 USB 스틱 (보드에 연결)에서 다운로드하는 것입니다. 320 * 240 * 2 = 153600 바이트의 메모리가 필요합니다. MCB1700은 64KB SRAM과 512KB의 온칩 플래시 메모리 만 있습니다. 분명히, 나는 그림을 플래시 메모리에 저장해야한다.MCB1700 평가 보드의 온칩 메모리에 이미지 저장
필자는 포인터를 메모리 주소에 직접 바인딩해야한다고 생각합니다.
/* Base addresses */
#define LPC_FLASH_BASE (0x00000000UL) //beginning address of on-chip Flash
#define LPC_IMAGE_ADDR (LPC_FLASH_BASE + 0x10000)
#define ImagePtr ((unsigned short *) LPC_IMAGE_ADDR )
//read-write operations
ImagePtr[0] = 0x0124; //First pixel
…
ImagePtr[320*240] = 0xFA37; //Last pixel
unsigned short A = ImagePtr[0];
맞습니까? Target의 옵션으로 인해 의문의 여지가 있습니다.
플래시 메모리의 영역은 읽기 전용 IROM1과 같이 정의됩니다. 플래시에서 데이터를 읽을 수 있다는 것을 의미하며 쓰기 작업을 수행하기 위해 IROM 및 IRAM 필드의 메모리 영역을 변경해야합니까? 같은 방법으로 예를 들면 :
다음을 명심하십시오 : 이미지를 플래시에 독립적으로 다운로드해야합니까, 아니면 일반 펌웨어의 일부가 될 수 있습니까? –
예, 일반 펌웨어의 일부입니다. –