当前位置: 首页 > news >正文

深圳有效网站制作哪家公司好制作推广网站

深圳有效网站制作哪家公司好,制作推广网站,wordpress登录后回到指定的页面,网站建设怎么让百度搜索到目前大多数的显示器都提供了HDMI接口#xff0c;HDMI的应用范围也越来越广#xff0c;但是STM32MP157这颗芯片原生并不支持HDMI显示。可以通过RGB转HDMI芯片将RGB信号转为HDMI信号#xff0c;这样就可以连接HDMI显示器了。本章就来学习一下如何在正点原子的STM32MP1开发板上…目前大多数的显示器都提供了HDMI接口HDMI的应用范围也越来越广但是STM32MP157这颗芯片原生并不支持HDMI显示。可以通过RGB转HDMI芯片将RGB信号转为HDMI信号这样就可以连接HDMI显示器了。本章就来学习一下如何在正点原子的STM32MP1开发板上实现RGB转HDMI。 RGB转HDMI简介 STM32MP157这颗SOC没有HDMI外设只有RGB屏幕接口因此只能通过RGB转HDMI的芯片来实现HDMI连接。效果肯定是没法和原生支持HDMI接口的SOC比当个玩具来玩一下还是可以的。因此本质上来讲还是RGB驱动并非原生的HDMI驱动。 正点原子的STM32MP1开发板提供了RGB转HDMI模块如下图所示 这里使用SiI9022A这颗芯片来完成RGB转HDMI。SiI9022A以前是Silicon Image公司出品的但是Silicon Image后来被Lattice收购了。 SiI9022A是一款HDMI传输芯片适用于高清便携相机、数字相机和个人移动设备可以灵活的将其他音视频接口转换为HDMI或者DVI格式。SiI9022A支持预编程HDCP键码可以完全自动进行HDCP检测和鉴定。SiI9022A是一个视频转换芯片支持输入视频格式有xvYCC、BTA-T1004、ITU-R.656内置DE发生器支持SYNC格式(RGB格式)。输出格式支持HDMI、HDCP和DVI、最高支持1080P视频输出、支持HDMI A、HDMI C和Micro-D连接器。SiI9022A功能非常多具体使用什么功能需要进行配置因此SiI9022A提供了一个I2C接口用于配置。 硬件原理图分析 先进行SiI9022A的硬件原理分析打开开发板底版原理图原理如下图所示 上图就是板载的HDMI接口在图中可以看出HDMI模块分为4部分RGB接口、I2C2接口、I2S2音频接口和HDMI_CEC接口。主要还是使用RGB接口引脚获取显示数据SiI9022A使用I2C来进行配置这里使用STM32MP1的I2C2接口 使用到了到PH4和PH5这两个引脚。另外还有一个中断INT一个复位HDMI_RESET分别连接到PH6和PA3引脚上。在本篇笔记里主要是实现HDMI的显示功能其它接口就不用管它。 实验驱动编写 修改设备树 设置I2C2的pinmux 如果要实现HDMI显示就要给SiI9022A提供RGB接口和I2C2接口RGB接口在在之前的LCD屏幕的实验中已经有过学习这里就不再讲解了。主要看一下I2C2接口的pinmux配置打开stm32mp15-pinctrl.dtsi文件然后找到如下内容 示例代码 42. 3.1.1 I2C2 的 pinmux 1 i2c2_pins_a: i2c2-0 { 2 pins { 3 pinmux STM32_PINMUX(H, 4, AF4), /* I2C2_SCL */ 4 STM32_PINMUX(H, 5, AF4); /* I2C2_SDA */ 5 bias-disable; 6 drive-open-drain; 7 slew-rate 0; 8 }; 9 }; 10 11 i2c2_pins_sleep_a: i2c2-1 { 12 pins { 13 pinmux STM32_PINMUX(H, 4, ANALOG), /* I2C2_SCL */ 14 STM32_PINMUX(H, 5, ANALOG); /* I2C2_SDA */ 15 }; 16 };示例代码42.3.1.1中定义了I2C2接口的两个pinmux配置分别为i2c2_pins_a和i2c2_pins_sleep_a。第一个默认的状态下使用第二个是在sleep状态下使用。 添加HDMI的电源节点 Sii9022A需要一个1.2V电压这个开发板上已经提供了原理图上的XC6206P122MR芯片就是1.2V电源芯片。还需要在设备树中添加1.2V电压节点供Sii9022A驱动程序使用。打开stm32mp157d-atk.dts文件在根节点下添加如下内容所示 示例代码 42. 3.1.2 HDMI 的电源节点 1 v1v2_hdmi regulator v1v2 hdmi { 2 compatible regulator fixed 3 regulator name v1v2_ 4 regulator min microvolt 1200000 5 regulator max microvolt 1200000 6 regulator always on 7 regulator boot on 8 };这个就是提供一个简单的电压。 在i2c2节点追加HDMI子节点 在学习LCD驱动就有学到RGB接口是不用再次修改的只需要提供一个接口用来接收LTDC数据HDMI就是用来接收LTDC接口的。在stm32mp157d-atk.dts文件下用追加节点方式把i2c2节点追加如下内容 示例代码 4 2.3.1.3 追加的 I 2C2 节点内容 1 i2c2 { 2 pinctrl-names default, sleep; 3 pinctrl-0 i2c2_pins_a; 4 pinctrl-1 i2c2_pins_sleep_a; 5 status okay; 6 7 hdmi: hdmi-transmitter39 { 8 compatible sil,sii9022; 9 reg 0x39; 10 iovcc-supply v3v3; 11 cvcc12-supply v1v2_hdmi; 12 reset-gpios gpioa 3 GPIO_ACTIVE_LOW; 13 interrupts 6 IRQ_TYPE_EDGE_FALLING; 14 interrupt-parent gpioh; 15 #sound-dai-cells 1; 16 status okay; 17 18 ports { 19 #address-cells 1; 20 #size-cells 0; 21 22 port0 { 23 reg 0; 24 sii9022_in: endpoint { 25 remote-endpoint ltdc_ep0_out; 26 }; 27 }; 28 }; 29 }; 30 };第2-4行配置了I2C2的两个pinmux设置。 第7-29行就是I2C2下的HDMI子节点接着就分析这个节点比较重要的属性的作用。第12行设置复位引脚为PA3低电压有效。第13-14行设置中断引脚为PH6下降沿有效。第22-27行port节点就是用来接收LTDC数据的接口第25行就是引用了ltdc_ep0_out节点。 这里只是告诉了HDMI从LTDC接口获取数据还需要告诉LTDC节点数据输出到HDMI需要修改ltdc节点修改完成以后的ltdc节点如下所示 示例代码 4 2.3.1.4 基于 H DMI 接口的 L TDC 1 ltdc { 2 pinctrl-names default, sleep; 3 pinctrl-0 ltdc_pins_b; 4 pinctrl-1 ltdc_pins_sleep_b; 5 status okay; 6 7 port { 8 #address-cells 1; 9 #size-cells 0; 10 11 ltdc_ep0_out: endpoint0 { 12 reg 0; 13 remote-endpoint sii9022_in; 14 }; 15 }; 16 };第13行就是告诉LTDC接口数据输出到HDMI。 注意需要将panel_rgb节点屏蔽掉否则编译设备树的时候会如下所示警告 Warning (graph_endpoint): /panel-rgb/port/endpoint: graph connection to node /soc/display-controller5a001000/port/endpoint0 is not bidirectional 最后执行“make dtbs”命令重新编译设备树。 使能内核自带sii902x驱动 ST提供的linux内核已经集成了sii902x驱动了同时已经使能了还是需要看看如何使能这个配置配置路径如下 - Device Drivers - Graphics support - Display Interface Bridges - * Silicon Image sii902x RGB/HDMI bridge //选中 将sii902x驱动编译进Linux内核中如下图所示 内核默认已经使能了sii902x驱动如果没使能的话就按照上述方法使能然后重新编译内核得到新的内核和设备树。 RGB转HDMI测试 使用HDMI线将开发板和显示器连接起来然后使用新编译得到的内核和设备树启动开发板如果驱动工作正常那么就会在HDMI显示器上显示信息如下图所示(屏幕截图) 至此HDMI驱动工作正常可以使用HDMI显示器来进行Linux下的图形开发但是本教程后续依旧会使用LCD屏幕可以根据自己的喜好选择HDMI显示器还是LCD屏幕即可。 总结 这一章比较简单只要在设备树里面添加hdmi的电源节点然后在i2c2节点下追加hdmi子节点最后在ltdc节点的remote-endpoint修改成hdmi。这样就可以使用HDMI显示屏来进行开发了。
http://www.yutouwan.com/news/240696/

相关文章:

  • 好站站网站建设推广苏州网站建设营销推广
  • 温州做网站多少钱装修公司加盟条件
  • 长春建站网站建设x站源码免费分享
  • 互动网站网站刷新代码
  • 学校html网站模板代码网站建设培训简报
  • 网站提供服务商南京企业微信网站建设
  • 商务网站建设试卷软文推广经典案例
  • 河北建设厅网站查询wordpress仿简书
  • 网站案例展示怎么做企业展厅设计图片欣赏
  • 网站开发 学习步骤西安保安公司
  • 合肥高端网站开发公司网站 跳出率 多少
  • 大型网站建设建设公司排名手机交互网站
  • 做网站怎么招广告百度发作品入口在哪里
  • 前几年做那个网站能致富企业网络推广如何做
  • 官网模板建站塔山双喜哪里可以免费发布招聘信息
  • 凡科的网站怎么做百度推广无锡网站开发公司电话
  • 南京市网站建设石家庄新闻头条
  • 大岭山网站建设wordpress 只显示某分类
  • 饶阳营销型网站建设费用微信到wordpress
  • 做设计的都用那些网站垂直门户网站都有什么
  • 坂田建设网站网站可以做多少个关键词
  • 公司做网站那家好一般什么行业做网站的多
  • 软件公司网站wordpress动态主题
  • 大连建站万网注册域名的步骤
  • 搭建什么网站赚钱北京网站怎么建设
  • 制作卡牌的网站wordpress微拍源码
  • 怎么做自己网站的后台蜜雪冰城网页设计素材
  • 优设设计网站导航天津建设招标网站
  • 个人网站做打赏流程个人网站建立步骤
  • 做网站公司哪家好关于家乡的网页制作教程