程序参考来自正点的汉字显示例程和图像显示:
想在按钮或其他控件上显示中文,故想到了添加字库,就把利用GRAPH图像显示的移植到汉字显示的例程中,然后发现要么只能刷图像显示,要么只能挂sd卡,跑显示汉字的程序,
所以怀疑是不是内存分配出了问题,贴一部分代码,求解
exfuns_init(); //为fatfs相关变量申请内存
f_mount(fs[0],"0:",1); //挂载SD卡
f_mount(fs[1],"1:",1); //挂载FLASH.
f_mount(fs[2],"2:",1); //挂载NAND FLASH.
while(font_init()) //初始化字库
{
LCD_ShowString(30,70,200,16,16,"Font Error!");
while(SD_Init()) //检测SD卡
{
LCD_ShowString(30,90,200,16,16,"SD Card Failed!");
delay_ms(200);
LCD_Fill(30,90,200+30,70+16,WHITE);
delay_ms(200);
}
update_font(30,90,16,"0:"); //如果字库不存在就更新字库
delay_ms(2000);
LCD_Clear(WHITE); //清屏
break;
}(来自main函数)
oscilldev.dataxsize=Graph_xSize-BORDER_LEFT-BORDER_RIGHT-3;
oscilldev.dataysize=Graph_ySize-BORDER_TOP-BORDER_BOTTOM-3;
oscilldev.buffer=mymalloc(SRAMIN,oscilldev.dataxsize*4); //申请内存
(来自graphyt.c)
是不是这里出了问题,跑程序的时候发现不显示图像,但其他的按钮等控件依旧可以使用,这是不是会导致后续将采集到的数据存储到SD时再出现问题
|