24位bmp图片的显示(基于A58系列开发板)

本文介绍了如何在A58系列开发板上显示24位bmp图片,详细讲解了bmp图片编码的特点,包括像素点的RGB存储方式、图像上下颠倒及头信息等。并分享了显示bmp图片的步骤和博主自封装的显示函数,为嵌入式开发中的图像显示提供参考。
摘要由CSDN通过智能技术生成

24位bmp图片的显示

之前在使用a58系列的开发板时做过bmp图片的显示,博主在这里想将其记录下来。
在图像显示中
常见的图像格式:bmp jpg png
博主在这里分享的是bmp图片的显示
首先,我们得了解他的编码特点

bmp图片编码的特点:
1.每个像素点占3个字节,分别存储的是RGB(红绿蓝三原色)的数值
2. bmp是微软公司发明的一种图片格式,在存储的时候RGB就是颠倒
3. bmp图片在存储的时候,上下也是颠倒
4.bmp图片有54字节的头信息
5.但是lcd要求每个像素点占4个字节,多出来的一个字节用于存放图片的透明度信息(A),换句话来说,lcd上要求是ARGB,而图片是RGB

显示bmp图片思路:
1.打开bmp图片
2.打开lcd
3.读取bmp图片像素点的RGB值
4.将读取的颜色值写入到lcd中
5.关闭

下面是博主自己封装的一个显示函数

```c
//x和y:你定义的显示图片的位置的横坐标和纵坐标
//w和h:你要显示图片的长和宽
//bmppath:图片的路径
int show_anybmp(int x,int y,int w,int h,char *bmppath)
{
	//定义bmp图片的文件描述符
	int fd1;
	//定义lcd驱动的文件描述符
	int fd2;
	//用int类型的数组存放ARGB
	int lcdbuf[w*h];
	//定义一个int类型的指针在显存中的首地址
	int *lcdmem;
	int i;
	int j;
	//定义数组存放像素点的RGB
	char bmpbuf[w*h
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值