打印

GUI显示BMP图像

[复制链接]
1092|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
beseeker|  楼主 | 2017-1-3 14:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
GUI, se, AC, ni, hm
LCD屏幕上显示出“File open is ok”,但是并没有显示出图片来,想知道是为什么?那个GUI_BMP_Draw到底怎么用才能在LCD上显示出BMP图像啊?

void MainTask3(void)
{
FS_FILE *fp;
GUI_ALLOC_DATATYPE hMem;
char *_acBuffer;
int size;

GUI_Init();
FS_Init();
GUI_SetBkColor(GUI_BLACK);
GUI_Clear();
GUI_SetFont(&GUI_Font24_ASCII);

/*只读方式打开流文件*/
fp = FS_FOpen("1.bmp", "w");
/*检测打开的结果*/
if (NULL == fp) {
  GUI_DispString("File open is error!");
} else {
  GUI_DispString("File open is ok!\n");
  /*移动文件指针到结束*/
  FS_FSeek( fp, 0L, FS_SEEK_END );
  /*获取偏移量即文件的大小*/
  size = FS_FTell( fp );
  /*重新设置移动位置*/
  FS_FSeek( fp, 0L, FS_SEEK_SET );
  /*申请和文件大小一样的内存*/
  hMem = GUI_ALLOC_AllocZero(size);
  /*把申请到的内存转换成指针*/
  _acBuffer = GUI_ALLOC_h2p(hMem);  
  /*把文件读取到缓存*/
  FS_FRead(_acBuffer, 1, size, fp);
  /*关闭文件*/
  FS_FClose(fp);
  /*直接显示出来*/
  GUI_BMP_Draw(_acBuffer, 0, 0);
  /*释放申请的内存*/
  GUI_ALLOC_Free(hMem);
}

   while (1) {
  GUI_Delay(1000);
}
}
沙发
song534578972| | 2017-1-3 21:29 | 只看该作者
第一、图片的大小有没有注意、图片太大可能会显示不出。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝