硬汉嵌入式论坛

 找回密码
 立即注册
查看: 5352|回复: 1
收起左侧

[emWin] 关于汉字显示方式二(放到外部存储器)调试温馨提示X3+7英寸屏

[复制链接]

4

主题

14

回帖

26

积分

新手上路

积分
26
发表于 2014-11-24 21:33:05 | 显示全部楼层 |阅读模式
        在学习从SD卡读取汉字字库时,参考STemWin教程1-60期中的第19章,发现在屏幕及按键控件上都无法显示汉字,多次对比还是无法显示,后通过单步运行,发现在GUICharPEx.c文件中的GUI_X_GetFontData函数,打开字库文件res = f_open(&fsrc, font, FA_OPEN_EXISTING | FA_READ); res值不为零,就是读取字库失败了,后一直找关于FatFS移植是否有问题,测试没问题,通过与之前读移植BMP程序对比,发现在打开文件命令前没有执行挂载文件系统,后添加挂载文件命令后能正常显示汉字。由于使用的是X3的学习板没有例程只能通过自已移植,现附上程序中的区别,用红色字体标注为所加的内容。

void GUI_X_GetFontData(char* font, U32 oft, U8 *ptr, U16 bytes)
{
    /* 挂载文件系统 */
    res = f_mount(FS_SD, &fs);       /* Mount a logical drive */
    if (res != FR_OK)
    {
        printf("挂载文件系统失败 (%d)\r\n", res);
    }
    //
    res = f_open(&fsrc, font, FA_OPEN_EXISTING | FA_READ);   //打开字库文件   
    if(res != FR_OK)   
    {   
       return;
    }   
    res = f_lseek(&fsrc,oft); //找到首地址  
    res = f_read(&fsrc, ptr, bytes, &bw1); //读取32个字库点阵数据
    res = f_close(&fsrc); //关闭字体  

}
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107452
QQ
发表于 2014-11-24 22:09:39 | 显示全部楼层
在bsp.c文件中初始化完硬件后,要执行SD卡挂载。挂载一次即可。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-6-2 00:17 , Processed in 0.165271 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表