dm365的LCD显示
对DM365的decode做了修改,想让他原来的从小电视输出,改成用LCD输出。
在DM365上面接了一个LCD屏幕。屏幕是800*480,被设置成720*480大小。
从decode出来的数据,应该是YUV420PSEMI的,而就目前我知道的,LCD输出时UYVY的422格式。
声明一下,目前没太多文档读,有些地方可能不对,希望谁发现了,就回帖告诉我一声,不胜感激。
decode是用fifo活的的一帧的数据,在一个Buffer_Handle中。声明了两个hSrcBuf, hDstBuf,分别是源和目的。
下面是两行打印信息,关于这两个Buffer_Handle的。
************hSrc below:
[15] @ 0x4378a000 (0x86ee2000 phys) numBytes 718848 (718848) useMask 2 (3) ref no
Width 720 (720) Height 480 (576) Pos 24x24 LineLength 768 (720)
************hDst below:
[0] @ 0x40c00000 (0x80a00000 phys) numBytes 691200 (691200) useMask 0 (1) ref yes
Width 720 (720) Height 480 (480) Pos 0x0 LineLength 1440 (1440)
这两个视频帧的物理空间上的值在括号里面,是虚拟出来的空间的值在括号前面。可以看到,源的linelength是768,所以拷贝的时候,后面会有一些无用的数据。
没有用decode自带的那个framecopy什么的,因为我用那个图像只能被扁着显示在左边的一半地方……
然后我调用了ccv里面的420到422的转化,然后手动修改了dmai里面的转化代码,目前得到了黑白的数据,也就是y值。但是u,v的值还没搞好,现在是黑白图像,不过能够全屏720*480显示了。
for(i = 0; i < srcDim.height; i++) {
for(j=0; j < srcDim.width/4; j++) {
*dst++ = *src_u;
*dst++ = *src++;
*dst++ = *src_v;
*dst++ = *src++;
*dst++ = *src_u;
*dst++ = *src++;
*dst++ = *src_v;
*dst++ = *src++;
src_u += 2;
src_v += 2;
}
dst = dst + (dstDim.lineLength - srcDim.width*2);
src = src + (srcDim.lineLength - srcDim.width);
src_u = src_u + (srcDim.lineLength - srcDim.width);
src_v = src_v + (srcDim.lineLength - srcDim.width);
}
这是我幻想的,算上u跟v的转化,可是u跟v的效果不行,颜色没加上……继续努力中
不过,看dmai的代码,好像dm365不支持硬件ccv转化,用这种软的,相当浪费arm资源,打印的arm显示,已经占用超过90%了,而且只能显示5帧左右。
dm365的LCD显示相关推荐
- bmp文件头_「正点原子FPGA连载」第十九章SD卡读BMP图片LCD显示
1)摘自[正点原子]领航者 ZYNQ 之嵌入式开发指南 2)实验平台:正点原子领航者ZYNQ开发板 3)平台购买地址:https://item.taobao.com/item.htm?&id= ...
- LCD显示异常分析——开机闪现花屏【转】
转自LCD显示异常分析--开机闪现花屏 最近在工作中,有同事遇到LCD开机瞬间会闪现雪花屏的问题,而这类问题都有个共同点,那就是都发生在带GRAM的屏上,同样的问题,在休眠唤醒时也会出现. 其实这类问 ...
- WINCE5.0+S3C2443系统每隔几分钟会自动关闭LCD显示
这几天在调试WINCE5.0+S3C2443系统的时候,发现大概每隔6分钟的时候,系统就会自动关闭LCD屏的显示,这时候如果去点击触摸屏就会恢复显示.刚开始我还以为是系统进入了sleep状态了,发现在 ...
- ds18b20温度传感器 lcd C语言,基于AVR单片机的18B20温度传感器及LCD显示的C语言程序设计...
***************************************************/ #include #include #define uchar unsigned char # ...
- 产业链人士:LCD显示驱动芯片价格有望趋于稳定
8月18日消息,据国外媒体报道,在汽车.消费电子等多领域芯片供不应求,芯片代工商产能普遍紧张的情况下,LCD显示驱动芯片的供应也受到了影响. 今年3月份,产业链方面的人士就透露,LCD面板需求强劲,拉 ...
- TFT LCD显示原理详解
<什么是液晶> 我们一般认为物体有三态:固态.液态.气态,其实这只是针对水而言,有一些有机化和物 还有介于固态和液态中间的状态 就是液晶态,如下图(一): ...
- 嵌入式linux调试dsi,做嵌入式开发时,你是怎么实现LCD显示的?
原标题:做嵌入式开发时,你是怎么实现LCD显示的? 1.本文目的 做嵌入式图形开发,我们往往都会利用到各种GUI进行交互设计,但是对于GUI的字符串处理与中文字库显示,也许并不会特别关注,因为GUI已 ...
- 单片机 c语言百位加上小数点,51单片机水温控制LCD显示加VB上位机温度曲线绘制...
现功能,1L水由1KW电炉加热,要求水温在一定范围内人工设定,并能随着环境温度改变自动调节,以维持设定的温度不变. 矩阵键盘输入设定温度,LCD1602显示温度值,VB上位机绘制温度曲线 /***** ...
- LCD显示异常分析——撕裂(tear effect)
概述 在上一篇<LCD显示异常分析--开机闪现花屏>中,我们一起分析了开机花屏的问题,在这一篇中,我将对LCD撕裂(tear effect)问题进行详细分析,以及给出这类问题的常用解决方法 ...
最新文章
- 【Android Protobuf 序列化】Protobuf 使用 ( Protobuf 使用文档 | 创建 Protobuf 源文件 | Protobuf 语法 )
- Comparable与Comparator浅析
- 抖音云控_抖音云控/快手云控:引领5G电商短视频新潮流
- C++经典书籍和相关内容
- Kafka 安装与部署(单机版)与kafkaDemo调试测试(包含JAVA Demo)
- 2018.11.05-4028-撸串(string)
- 一把数学上完美的尺子(哥隆尺)
- (转)探寻区块链的源头——“重回拜占庭”
- c3p0 服务启动获取连接超时_一次c3p0连接池连接异常错误的排查
- GB50174《电子信息系统机房设计规范》贯标培训通知
- JS字符(字母)与ASCII码转换
- 2020.10.08丨全长转录组之参考基因组比对
- 数据库的内外链接和左右链接
- BiSeNet V2网络结构详解
- AI治退“七天无理由退换货”
- 美团点评技术与算法文章汇总,设计算法、前后端、客户端、小程序等
- 一种适用于智能仪表智能特性验证的检测方法和系统
- 反编译系列教程(上)
- 离线识别率高达99%的Python人脸识别系统,开源~
- win8 php 64位下载地址,万能驱动win8/win8.1下载 64位32位