直接从SD卡读字库,不需要FLASH,稍微修改原子哥的程序就行

2019-07-21 07:20发布

void Get_HzMat(unsigned char *code,unsigned char *mat,u8 size) { FIL fsrc;        // 定义文件操作类           FRESULT res;  // 定义操作结果变量           UINT br;         // 定义读写数量变量  unsigned char qh,ql; unsigned char i;   unsigned long foffset;  qh=*code; ql=*(++code); if(qh<0x81||ql<0x40||ql==0xff||qh==0xff)//非 常用汉字 {          for(i=0;i<(size*2);i++)*mat++=0x00;//填充满格    return; //结束访问 }           if(ql<0x7f)ql-=0x40;//注意! else ql-=0x41; qh-=0x81;    foffset=((unsigned long)190*qh+ql)*(size*2);//得到字库中的字节偏移量     if(size==16) {            res = f_open(&fsrc, "0:/SYSTEM/FONT/GBK16.FON", FA_OPEN_EXISTING | FA_READ);   //打开字库文件              if(res != FR_OK)                 {                         }               res = f_lseek(&fsrc,foffset); //找到首地址             res = f_read(&fsrc, mat, 32, &br);            res = f_close(&fsrc); //关闭字体  }        else {            res = f_open(&fsrc, "0:/SYSTEM/FONT/GBK12.FON", FA_OPEN_EXISTING | FA_READ);   //打开字库文件              if(res != FR_OK)               {                       }             res = f_lseek(&fsrc,foffset); //找到首地址           res = f_read(&fsrc, mat, 24, &br);          res = f_close(&fsrc); //关闭字体  } }  
把这个函数改成这样就行,试着读了一下电子书,速度稍微有点慢,还算不错。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
21条回答
shmily27518
1楼-- · 2019-07-22 19:29
 精彩回答 2  元偷偷看……
冰封嗜魔
2楼-- · 2019-07-22 22:45
回复【15楼】冰封嗜魔:
---------------------------------
这个怎么没有24*24字体的,这个应该怎么改呢?
 res = f_open(&fsrc, "0:/SYSTEM/FONT/GBK24.FON", FA_OPEN_EXISTING | FA_READ);   //打开字库文件  
           if(res != FR_OK)   
           {   
       
           }   
         res = f_lseek(&fsrc,foffset); //找到首地址 
         res = f_read(&fsrc, mat, 72, &br); 
         res = f_close(&fsrc); //关闭字体 

我改成这样,读出来乱码了!
张鋆
3楼-- · 2019-07-23 00:23
回复【17楼】张鋆:
---------------------------------
72是不是不对,48试试?
张鋆
4楼-- · 2019-07-23 03:03
回复【18楼】冰封嗜魔:
---------------------------------
48也试过了,哈哈,也不对!这个什么原因呢,这两天没时间好好看程序,就问问您!等有空研究研究也行!
冰封嗜魔
5楼-- · 2019-07-23 03:21
回复【19楼】张鋆:
---------------------------------
惭愧,我也好久不看这个程序啦,你再研究研究。
张鋆
6楼-- · 2019-07-23 04:42
 精彩回答 2  元偷偷看……

一周热门 更多>