TFT_LCD显示图片总结

1.给出实现显示picture的main函数代码,包括初始化,和调用显示图片代码;
在这里插入图片描述
其中NVIC中断这一块没怎么了解,所以直接按部就班,接下来就是初始化工作,重点是LCD_Init(),里面主要设计gpio,时钟和FSMC初始化,下次可以直接调用;然后就是LCD_DisplayString等LCD显示调用函数,这些可以理解为LCD配套编写的显示函数,这里也是用的示例;

2.然后就是图片该怎么去在LCD上面进行显示,设置一个图片数据头

__packed typedef struct _COLORHEAD
{
   unsigned char  scan;  //扫描方式
   unsigned char  gray;   //像素值设置
   unsigned short w;  //长
   unsigned short h; //高
   unsigned char  is565;  //对于rgb三色的bit位安排方式
   unsigned char  rgb;  //rgb三色排列顺序  0x1B,常用
}COLORHEAD;

所有的图片数据存储在一个一维数组中,可以通过下面这个方式来给结构体赋值,但是不是很懂,但是正确,测过。

void picture_display(u16 x,u16 y,u8 * imgx)
{
	COLORHEAD *imginfo;
 	u8 ifosize=sizeof(COLORHEAD); 
	imginfo=(COLORHEAD*)imgx;
	LCD_DisplayNum(10,60,imginfo->scan,10,16,1);
	LCD_DisplayNum(10,80,imginfo->gray,10,16,1);
	LCD_DisplayNum(10,100,imginfo->w,10,16,1);
	LCD_DisplayNum(10,120,imginfo->h,10,16,1);
	LCD_DisplayNum(10,140,imginfo->is565,10,16,1);
	LCD_DisplayNum(10,160,imginfo->rgb,10,16,1);
 	picture_show(x,y,imginfo->w,imginfo->h,imginfo->scan,imgx+ifosize);	
}

imgx是传输进来的一个一维数组,前面几个数据都是数据头里面的数据,以这样方式得到图片关键数据,imgx+ifosize则是跳过数据头的那几个数据,目前对应的应该是像素值了,我这里测试给的是240X320的像素值,每个像素值是2个字节。

3.接下来做摄像头部分就是将得到的数据存储到imgx数组中,方便LCD显示。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值