在6818开发板上显示bmp图片的基本步骤

本文介绍了在6818开发板上显示bmp图片的四个基本步骤:1) 打开液晶屏和bmp文件并进行内存映射;2) 读取bmp数据到临时数组;3) 处理数据并将其转换为ARGB格式,同时进行上下颠倒,映射到液晶屏;4) 关闭文件。提示:适用于800*480像素的图片,其他尺寸需调整算法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我总结为以下四步:

1)打开液晶屏文件、打开bmp图片文件、完成液晶屏内存映射

2)读取bmp图片文件到临时数组temp,等待处理数组里面的数据。

3)处理数据、映射到液晶屏上,此处是bmp图片算法:

  • 将bmp图片每个像素点BGR数据转化为ARGB。
  • 上下180度颠倒 ,并且直接写入液晶屏显示。

4)关闭液晶屏、bmp图片文件。

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/mman.h>
#include <stdbool.h>

#define UINT  unsigned short
#define DWORD unsigned  int
#define LONG unsigned  int
#define WORD unsigned short
#define BMP_WIDTH 	800
#define BMP_HEIGHT 	480

int lcdfd;
int *lcd_p;

//前面14个字节 文件信息头
typedef struct tagBITMAPFILEHEADER{
	UINT bfType;  //2
	DWORD bfSize; //DWORD 4
	UINT bfReserved1; //2
	UINT bfReserved2; //2
	DWORD bfOffBits; //DWORD 4
}BITMAPFILEHEADER;

//40个字节 位图信息头
typedef struct tagBITMAPINFOHEADER{ /* bmih */
	DWORD biSize; //DWORD 4
	LONG biWidth; //4  图像的宽度
	LONG biHeight;//4
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值