硬汉嵌入式论坛

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

[emWin] FATFS共用缓冲模式问题

[复制链接]

34

主题

83

回帖

185

积分

初级会员

积分
185
发表于 2016-11-26 10:32:13 | 显示全部楼层 |阅读模式
    以前使用emWin创建多个image控件时就需要定义多个FIL类型的变量来保留图片句柄让wmWin自己刷新,比如:


   FIL bmp[5];
        SET_hImage[0]= IMAGE_CreateEx(0, 20,240,30,WM_HBKWIN,WM_CF_SHOW,IMAGE_CF_TILE,ID_SET_TOUCH);
    SET_hImage[1]= IMAGE_CreateEx(0, 50,240,30,WM_HBKWIN,WM_CF_SHOW,IMAGE_CF_TILE,ID_SET_TIME);
    SET_hImage[2]= IMAGE_CreateEx(0, 80,240,30,WM_HBKWIN,WM_CF_SHOW,IMAGE_CF_TILE,ID_SET_BKIMAGE);
    SET_hImage[3]= IMAGE_CreateEx(0,110,240,30,WM_HBKWIN,WM_CF_SHOW,IMAGE_CF_TILE,ID_SET_HELP);
    SET_hImage[4]= IMAGE_CreateEx(0,140,240,30,WM_HBKWIN,WM_CF_SHOW,IMAGE_CF_TILE,ID_SET_EXIT);
   
  f_open(&bmp[0],"picture/set/touch/touch.bmp",FA_READ);
  IMAGE_SetBMPEx(SET_hImage[0],_Get_BackImage,(void *)&bmp[0]);
   
  f_open(&bmp[1],"picture/set/time/time.bmp",FA_READ);
  IMAGE_SetBMPEx(SET_hImage[1],_Get_BackImage,(void *)&bmp[1]);
   
  f_open(&bmp[2],"picture/set/bkimage/bkimage.bmp",FA_READ);
  IMAGE_SetBMPEx(SET_hImage[2],_Get_BackImage,(void *)&bmp[2]);
        
  f_open(&bmp[3],"picture/set/help/help.bmp",FA_READ);
  IMAGE_SetBMPEx(SET_hImage[3],_Get_BackImage,(void *)&bmp[3]);
        
  f_open(&bmp[4],"picture/set/exit/exit.bmp",FA_READ);
  IMAGE_SetBMPEx(SET_hImage[4],_Get_BackImage,(void *)&bmp[4]);

这样的缺点就是每个FIL都会有一个自己的数据缓冲区,我的是512字节这样比较占用内存,然后我修改了fatfs配置
   #define       _FS_TINY    1   //使用共用的数据缓冲区
这样修改后在编译发现内存占用小了很多,但是image控件不能显示了不过当我在适当的位置去触摸IMAGE控件时发现控件是创建成功了不过不显示!是不是fatfs还有哪里也要相应的配置一下?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115728
QQ
发表于 2016-11-26 10:39:34 | 显示全部楼层
_FS_TINY  是设置fatfs的超小型模式,是51单片机使用。

个人建议,显示图片的话,建议还是还是加载到NOR Flash,SRAM或者SDRAM方便。 SD刷图片,效率太低,没什么实战价值。
回复

使用道具 举报

34

主题

83

回帖

185

积分

初级会员

积分
185
 楼主| 发表于 2016-11-26 11:09:16 | 显示全部楼层

回 eric2013 的帖子

eric2013:_FS_TINY  是设置fatfs的超小型模式,是51单片机使用。

个人建议,显示图片的话,建议还是还是加载到NOR Flash,SRAM或者SDRAM方便。 SD刷图片,效率太低,没什么实战价值。 (2016-11-26 10:39) 
fatfs超小型模式是不是无法实现我上面的要求呢?

我的板子上面没有SDRAM和外部RAM,图片是在NANDFLASH中,刷新速度还可以。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-14 18:28 , Processed in 0.256872 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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