资源简介
基于gec6818开发板的jpeg,bmp图片轮播显示及jpeg图片的压缩,最好在Linux虚拟机下解压,不然软连接文件会失效,无法找到jpeg库。
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
off_t get_file_size(const char *pathname)
{
struct stat file_stat;
int retval;
retval = stat(pathname &file_stat);
if(retval == -1)
{
perror(“get file size error\n“);
return -1;
}
return file_stat.st_size;
}
int display_format_bmp(unsigned int x_s unsigned int y_s const char *pathname unsigned int *lcd_ptr unsigned int mul)
{
off_t file_size;
FILE *pic_fp;
ssize_t rd_ret;
char *pic_buf;
char file_head[54];
unsigned int bmp_width bmp_height;
unsigned int x_end y_end;
unsigned int x y;
char *draw_ptr;
unsigned int color;
file_size = get_file_size(pathname);
if(file_size == -1)
return -1;
printf(“file_size=%ld\n“ file_size);
pic_buf = malloc(file_size-54);
if(pic_buf == NULL)
{
perror(“alloc pic_buf memory error\n“);
return -1;
}
pic_fp = fopen(pathname “r“);
if(pic_fp == NULL)
{
perror(“open picture error\n“);
return -1;
}
rd_ret = fread(file_head 54 1 pic_fp);
if(ferror(pic_fp))
{
perror(“read picture head error\n“);
return -1;
}
rd_ret = fread(pic_buf file_size-54 1 pic_fp);
if(ferror(pic_fp))
{
perror(“read picture color data error\n“);
return -1;
}
fclose(pic_fp);
/* 宽度 */
bmp_width =file_head[18];
bmp_width|=file_head[19]<<8;
printf(“bmp_width=%d\r\n“bmp_width);
/* 高度 */
bmp_height =file_head[22];
bmp_height|=file_head[23]<<8;
printf(“bmp_height=%d\r\n“bmp_height);
x_end = x_s + bmp_width/mul;
y_end = y_s + bmp_height/mul;
printf(“x_end=%u y_end=%u\n“ x_end y_end);
for(y=y_s; y {
draw_ptr = pic_buf+((y-y_s)*mul*bmp_width*3);
for( x=x_s; x {
if(x<800)
{
color = (*draw_ptr) | (*(draw_ptr+1)<<8) |(*(draw_ptr+2)<<16);
lcd_draw_point(x 479-y color lcd_ptr);
}
draw_ptr += 3*mul;
}
}
free(pic_buf);
return 0;
}
- 上一篇:高等数学浙江省赛试卷及答案2010-2017
- 下一篇:lammps使用手册
相关资源
- 仿bilibili网站主页源码
- 基于ARM的PC104总线实现
- 基于STM32、Onenet的室内空气质量实时及
- delphi 写的自动更新控件源码
- 基于GEC210的语音识别控制
- P级阵地项目设计模式与游戏完美开发
- 自适应简约APP页源码.rar
- 遥控小车源码
- 英语培训介绍 模板网站源码
- QPSK与BPSK的锁相环仿真源码
- 2018最新微信朋友圈微信趣味测试源码
- MSP430F5529 例程源码
- 图书管理系统源码.zip
- 三个安卓小游戏源码.rar
- FOCAS2中文说明文档、源码、 机床数据
- WOA源码+注释+微修改版本+源论文
- 2019年下半年软考中级嵌入式系统设计
- 视频火焰检测vs2017源码
- 四路驱动小车stm32f103源码
- 投票、刷票、模拟HTTP链接源码
- unity3d跑酷游戏DEMO源码
- 瓜子二手车网站源码
- CHAdeMO 3.0
- 广东工业大学操作系统实验源码
- 高校二维码报修系统源码.zip
- 大觅网源码
- otter源码包
- QT实现扫雷源码
- WEBGAME(光明世界) v0.9.8.5 简体中文开
- 可选难易的安卓拼图游戏.zip
评论
共有 条评论