这两天在外没上网,没看到回复,今天才看到,谢谢
我的开发板是SMARTARM2200,外扩FLASH为SST39VF1601,我程序现改成这样,已经没有报错,但还是读不到数据,因为显示这个部分时为黑屏,程序如下:
// 声明外部图片数据
uint32 pic1_addr=0x81000000;
uint32 pic2_addr=0x81025800;
uint32 pic3_addr=0x8104B000;
uint32 pic4_addr=0x81070800;
uint32 pic5_addr=0x81096000;
uint32 pic6_addr=0x810BB800;
uint32 pic7_addr=0x810E1000;
uint32 pic8_addr=0x81106800;
//uint32 *p=&pic0_addr;
extern uint8 gImage_xp[];
extern uint8 gImage_pic1[];
extern uint8 gImage_pic2[];
extern uint8 gImage_pic3[];
extern uint8 gImage_pic4[];
extern uint8 gImage_pic5[];
extern uint8 gImage_pic6[];
extern uint8 gImage_pic7[];
extern uint8 gImage_pic8[];
// 显示图片1
void Disp_Pic1(void)
{ uint32 x, y;
uint32 no;
uint16 dat;
*gImage_pic1=pic1_addr;
TftSetWrite(0,0);
no = 0;
for(y=0; y<320; y++)
{ for(x=0; x<240; x++)
{ dat = (gImage_pic1[no+1]<<8) |gImage_pic1[no];
TftSendDat(dat);
no++;
no++;
}
}
}
// 显示图片2
void Disp_Pic2(void)
{ uint32 x, y;
uint32 no;
uint16 dat;
*gImage_pic2=pic2_addr;
TftSetWrite(0,0);
no = 0;
for(y=0; y<320; y++)
{ for(x=0; x<240; x++)
{ dat = (gImage_pic2[no+1]<<8) | gImage_pic2[no];
TftSendDat(dat);
no++;
no++;
}
}
}
请指点,谢谢
|