打印

TFT液晶显示16位真色彩时的数据格式求助

[复制链接]
9023|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
adqprint|  楼主 | 2011-5-26 13:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家好:
    我想在3.2寸液晶上显示图片。手中有一个例程能够显示图片。是调用void LCD_SetPoint(uint16_t Xpos,uint16_t Ypos,uint16_t point)函数以描点的方式显示的。我现在想显示其他的图片,用的是Img2Lcd软件,以水平扫描的模式,输出16位真色彩的240*320图片数据。因为示例程序的图片数据格式和Img2Lcd生成的格式不一样,因此怎么处理数据我就不清楚了,试了几次现实都是乱的。特此求助。
我理解的是因为生成的是16为真色彩,数据应该是16位的,同时根据Img2Lcd的帮助中提到数据投的定义,R G B颜色分量所占用的位数分别为5Bits,6Bits,5Bits。那么两个字节正好,因此我就吧两个字节合成一个16位字节当成LCD_SetPoint函数中的uint16_t point用于显示。但是显示的还是乱码,请问大家我这么处理数据对吗?
或者哪位用过其他软件的给我发一下,告诉我一下用法,谢谢
沙发
adqprint|  楼主 | 2011-5-26 13:25 | 只看该作者
补充一下,我的液晶控制模块是SSD1289,没有用到GUI

使用特权

评论回复
板凳
IJK| | 2011-5-26 13:46 | 只看该作者
“我就吧两个字节合成一个16位字节当成LCD_SetPoint函数中的uint16_t point用于显示”
按理这样做应该是对的

使用特权

评论回复
地板
adams.gh| | 2011-5-26 13:51 | 只看该作者
同问......
正好昨天遇到的问题和lz一模一样。

使用特权

评论回复
5
xwj| | 2011-5-26 14:37 | 只看该作者
Img2Lcd可以拖动色块来改变颜色排列顺序的,自己去仔细看看它的界面。

使用特权

评论回复
6
adqprint|  楼主 | 2011-5-26 15:13 | 只看该作者
我的排列顺序是红绿蓝,是对的。因为我看示例程序的排序也是红绿蓝,高位在前的模式。但是还是显示不出来

使用特权

评论回复
7
lxyppc| | 2011-5-26 15:36 | 只看该作者
先不要显示复杂的图片
先来一个全红的,再来一个全绿的
然后一个上半部分红,下半部分绿的
再来 一个左关部分红右半部分绿的
看看是哪个环节出了问题

使用特权

评论回复
8
adqprint|  楼主 | 2011-5-26 16:45 | 只看该作者
首先谢谢楼上,我用单色显示或者多个颜色组合都是对的。我怀疑是图片输出数据的问题,我用Img2Lcd软件,以水平扫描的模式,输出16位真色彩的240*320图片数据,如果是两个字节代表一个点的话,按理来说应该生成一个153600字节的数组,但是实际上生成的是61440字节的数组,这样显示出来肯定不对。因为我是按两个字节代表一个点来显示的,请问应该怎么处理,或者谁用过其他的转换软件麻烦发一个

使用特权

评论回复
9
adams.gh| | 2011-5-26 16:56 | 只看该作者
本帖最后由 adams.gh 于 2011-5-26 17:01 编辑

搞定了。把两个字节合成一个16位半字,是对的。

21ic.jpg (87.29 KB )

21ic.jpg

使用特权

评论回复
10
adams.gh| | 2011-5-26 17:15 | 只看该作者
这个是我生成的76800数组。LZ送显看一下对不对。
我用的是红牛板,ili9320。有可能和你的不兼容。

3.0 Cable.zip

57.83 KB

使用特权

评论回复
11
adqprint|  楼主 | 2011-5-26 17:20 | 只看该作者
哈哈,问题解决了但还是有点怪异。仔细看了一下Img2Lcd软件生成的图片信息的头文件。虽然我设置要生成240*320,但他实际生成的是160*192。每个点用两个字节,2*160*192=61440,正好和生成文件对上。但是怪异的是虽然数据说通了,但是程序显示的时候我按照160*192显示,上半节图片就把我转换的图片显示全了,剩下的是乱的。我改成80*192显示就全对了。不过我觉得图片是瘪的。估计还是程序有一点点出入,我再找找

使用特权

评论回复
12
adqprint|  楼主 | 2011-5-26 17:39 | 只看该作者
请教9楼得同志,你能生成240*320的信息吗?我不管换什么图片也生不成。都要比320*240小.

使用特权

评论回复
13
adams.gh| | 2011-5-26 18:02 | 只看该作者
本帖最后由 adams.gh 于 2011-5-26 18:04 编辑

应该是原图片的长宽比为240:320时,才能生成240:320的图片。即imgtoLcd转换图片时会锁定长宽比,防止生成的图片变形。

你应该截一张240*320的图片再转换。注意9L那个图片最下方的两个tip

使用特权

评论回复
14
WGC204| | 2011-5-26 18:02 | 只看该作者
选择“高位在前”

注册码:
0000-0000-0000-0000-6A3B

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
adams.gh + 1 感谢您提供的注册码
15
meepo| | 2011-5-26 18:44 | 只看该作者
跟在大虾后面学习

使用特权

评论回复
16
meepo| | 2011-5-26 18:44 | 只看该作者
在大虾后面学习

使用特权

评论回复
17
meepo| | 2011-5-26 18:44 | 只看该作者
在大虾后面学习

使用特权

评论回复
18
hdp7891000| | 2011-5-26 18:51 | 只看该作者
学习一下

使用特权

评论回复
19
meepo| | 2011-5-27 10:41 | 只看该作者
跟在大虾后面学习~

使用特权

评论回复
20
AE007| | 2011-8-24 14:06 | 只看该作者
:)    学习了

使用特权

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

本版积分规则

0

主题

60

帖子

1

粉丝