Data: 2016.12.22
Author: cjh

Theme: DM365 explain of VPBE

研一进来先是接触了TI的dm6437 一款DSP处理器,DaVinci系类主要用于图像及视频的相关处理,和本科最大的区别是里面有两个陌生的模块,VPFE前端和VPBE后端,后来自己开始着手学习TI的Dm365,里面也有这两个模块,由于网上相关资料比较少,那会自己看的也云疑雾离的,不过现在也算是略懂一二了,本人能力有限,还请大家见谅。

Dm365的视频处理后端(VPBE)支持SDTV和HDTV输出。VPBE主要分为两部分OSD和VENC,OSD主要用于显示,视频编码器VENC则用于控制显示的时序。

VENC 包含数字 LCD(DLCD)和模拟(DAC  等)接口。视频编码器产生模拟的视频输出。DLCD  控制器产生数字的 RGB/YCbCr 数据输出和时钟信号。

OSD 模块的主要功能是在硬件上实现图形、字符叠加。同时支持2个视频窗和2个图形、字符(OSD)窗口,支持8种视频窗数据与OSD窗数据混合的方法。图形、字符数据从外部存储器读入,一般为DDR2。OSD通过控制和参数寄存器编程实现其功能。

注意:本人采用的是一款YX050DK33V1五寸屏

1. 时钟使能配置

主要配置一下四个寄存器:

VDAC_CONFIG    在ARM subsystem reference guide中,要是为了配置TV输出

VPBE_CLK_CTRL  在VPFE手册中,主要是为了配置osd和venc使用的使能及venc时钟

VPSS_CLK_CTRL   在ARM SubsystemReference Guide中,用于选择时钟源

CLKCTL          在VPBE手册venc寄存器部分,用于venc,lcd和gam的时钟开关

2. OSD的初始化

OSD分为五个窗口,分别有两个vedio窗口和两个osd窗口以及一个cursor窗口,cursor窗口笔者也没有去了解过,所以对于cursor窗口就不做讲解了,在介绍之前首先向谈谈自己在学这一模块的体会,可以说osd部分是整个VPSS部分简单的模块了,除了常规的一些寄存器,比如窗口的位置,大小等容易理解的寄存器,别的寄存器其实也是根据自己在之前dm6437上所学延伸过来了,我觉得多看看,实际程序操作更有助于你的理解。

配置的步骤参考手册Programming the On-Screen Display (OSD)很容易完成配置,最后想简单介绍Transparency部分寄存器,该部分寄存器是可以使一种颜色在osd窗口变成透明色。

3. VENC初始化

在介绍VENC初始化之前,先解决在LCD初始化遗留下来的问题,即lcd的CLK的时钟来源,CLK引脚的时钟是由dm365 VCLK/GIO79复用为VCLK来实现的。详见VPBE手册DCLKGenerator章节。

接下来对下面的时序图做简单解释,通过图解应该能够理解。

在调试VENC时必须准备好示波器,为了方便调试我们现在lcd上显示colorbar。在调试的过程中,我想说对lcd手册的阅读还是很有必要的,我们必须清楚的了解lcd驱动时hv对应的时序,脉冲的个数,同时我在上面也提到过,驱动液晶屏有两重模式这里我们采用DE模式,对应的时序是通过先用示波器查看原有五寸coach上的DE波形来修改相应的hv的参数值,但修改的前提是参考手册上所给的范例值的基础上进行修改,微调从而能够在lcd上显示准确的colorbar,如下图所示

Dm365 VPBE 后端模块讲解相关推荐

  1. SAP Marketing Cloud的几大核心模块讲解

    下图这些场景可以反映出市场营销人员的工作和业务流程. Consumer and customer profiling: 实时,多渠道地获取客户的活动信息,为每个客户都建立一个用户画像. Segment ...

  2. Apollo进阶课程 ④ | 开源模块讲解(下)

    目录 1)Apollo平台技术框架 2)Apollo版本迭代 原文链接:​Apollo进阶课程 ④ | 开源模块讲解(下) 上周,阿波君与大家讨论了自动驾驶的核心问题--安全性.本期,我们将为大家具体 ...

  3. Apollo进阶课程 ③ | 开源模块讲解(中)

    目录 1)ISO-26262概述 2)ISO-26262认证流程 3)ISO-26262优点与缺陷 原文链接:Apollo进阶课程 ③ | 开源模块讲解(中) Apollo自动驾驶进阶课程是由百度Ap ...

  4. Apollo进阶课程 ② | 开源模块讲解(上)

    目录 1)无人驾驶车介绍 2)高精地图 3)定位 4)感知 5)轨迹规划 6)控制 7)云端 原文链接:Apollo进阶课程 ② | 开源模块讲解(上) Apollo自动驾驶进阶课程是由百度Apoll ...

  5. 视频教程-简历5个模块讲解-招聘/面试

    简历5个模块讲解 资深人力资源总监,从事IT职业教育培训15年,曾担任北大青鸟就业部经理.蓝科教育总经理及人才服务中心总监.先后辅导.推荐学生就业超过千人 王馨仪 ¥5.00 立即订阅 扫码下载「CS ...

  6. 英飞凌TC397芯片ASCLIN和MCMCAN模块讲解

    英飞凌TC397芯片ASCLIN和CAN模块讲解 一.车用总线概述 1.车用LIN总线 2.车用CAN总线 3.车用FlexRay总线 4. 车用MOST总线 二.TC397-ASCLIN模块 1. ...

  7. 13.STM32超声波模块讲解与实战

    目录 1.超声波模块讲解 2.超声波时序图 3.超声波测距步骤 4.项目实战 1.超声波模块讲解 超声波传感器模块上面通常有两个超声波元器件,一个用于发射,一个用于接收.电路板上有4个引脚:VCC G ...

  8. Python之re模块讲解及其案例举例

    Python之re模块讲解及其案例举例 文章目录 Python之re模块讲解及其案例举例 一.re模块简介 二.正则表达式的基本概念 1.正则表达式的语法介绍: 2.Python中的正则表达式模块 3 ...

  9. nginx:模块讲解

    本文讲解一些nginx安装时的一些模块. 1.stub_status nginx中的stub_status模块主要用于查看Nginx的一些状态信息. 本模块默认没有安装,需要编译安装.nginx开启s ...

  10. python函数模块讲解_课堂练习讲解_模块化函数封装

    内容简介: 本套课程为Python基础篇的第4套课程,主要讲解python文件处理的系统知识体系. 首先讲解Python文件的概念以及常用读写函数open().Read().write().close ...

最新文章

  1. visual studio 2005,visual studio 2008调出即时窗口
  2. 单机 Oracle 11g(11.2.0.4)手动打补丁PSU(11.2.0.4.8)
  3. 如何用Visual Studio Code远程调试运行在服务器上的nodejs应用
  4. 麦田在线携手网易云信,开启手机智能找房新时代
  5. 网易云信亮相WOT, 打造“IM+连麦互动直播”云服务
  6. SVN Error:请求的名称有效并且在数据库中找到,但是它没有相关的正确的数据来被解析...
  7. Mac下SourceTree导出更新文件
  8. 怎么修改服务器上的分数,教资成绩查询服务器爆了?这里有个小技巧教你!
  9. 帝国cms tag生成html,帝国CMS Tag关键词自动锚文本插件 tag标签自动转换为内容内链...
  10. hdu 1250 大数相加并用数组储存
  11. pandas中replace的用法
  12. Julia Rust : 看递归上的运行效率PK
  13. GPS 模块个人使用经验总结
  14. 【STM8S103K3】 I2C
  15. 什么是接触电流怎么测?
  16. python桌面爬虫_Python爬虫 利用python爬取ZOL桌面壁纸大图
  17. 关于阿里云服务器安全组规则
  18. php:php时区的三种设置方式
  19. 如何成为一名好的项目经理?
  20. mysql 执行顺序 SQL语句执行顺序分析

热门文章

  1. android里面的USB功能-----Accessory模式
  2. Qt-命令行更新翻译.ts文件
  3. 压倒eBay 挑战亚马逊 Shopify到底厉害在哪儿?
  4. 使用DevOps强化敏捷(上)
  5. 【微信开发第三章】SpringBoot实现微信授权登录
  6. 苹果拼图软件测试,装机必备软件评测:DSM记事本iPhone版
  7. 今日头条抖音小程序开发文档
  8. SAP SD跨公司销售案例教程IDOC配置
  9. 算法设计与分析:Word Ladder(Week 4)
  10. 网站后台密码在服务器里怎么找,通过虚拟主机如何查看后台密码