当前位置:   article > 正文

[RK3588s 项目开发实践]——Android12 HDMI显示_rk3588原理图

rk3588原理图

声明:本专栏内容以及相关的资料仅作为学习为目的。文章会持续更新,如内容有误欢迎指出,共同交流学习。

前言

        鉴于开发者最希望看到的是自己的主板正常运行起来了,接上屏幕显示一切正常,因此我决定从HDMI显示开始写本栏目。我们先来看一下RK3588S 的整体框架图,如下图所示:

        从上图可以看出,RK3588S具有丰富的显示接口,包括 DP、HDMI、EDP、MIPI 。在根据产品的需求设计好硬件电路后,对SDK软件就行相应配置即可使用相应的接口进行显示。显示是人机交互必不可少的功能。

硬件设计

        HDMI部分的电路大家可以参考原理图(在后续的文章中会专门讲解RK3588S 由RK原厂提供的原理图)HDMI部分。如下图所示:

        上图很明显可以看出,RK3588s 的EDP和HDMI接口是复用接口,在本系列文章中,我们先介绍HDMI显示。 

        原理图中的 HDMI0_TX_ON_H 引脚需要特别注意,必须保持和软件配置一直,在我的原理图设计中,使用的是 GPIO4_B6,如图所示:

        本文将在下面的软件部分展示对应配置代码。 HDMI 部分对应的其他引脚基本是固定的,不需要软件上配置,如果硬件设计在原厂设计上做了比较大的改动,一定要检查每个引脚对应的软件配置。 

        我们在调试过程中,还遇到一个比较典型也是容易忽略的问题,由于硬件设计是核心板设计,单独调试核心板时,HDMI部分的 5V 没有供电,导致只有开机 logo 可以通过HDMI显示,进入系统HDMI一直无显示,如果在调试过程中遇到类似问题,可以检查一下HDMI的5V。如下图:

软件

        软件部分最主要的就是上文提到的 HDMI0_TX_ON_H 引脚的配置,原理图使用的是GPIO4_B6,软件就一定要配置为“&gpio4 RK_PB6 GPIO_ACTIVE_HIGH”,如下代码:

  1. /* hdmi0 */
  2. &hdmi0 {
  3. enable-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
  4. status = "okay";
  5. };

        然后就是 hdmi 使用的vp、sound 等对应功能在软件里面都要打开。这部分在 dtsi 里面对应的完整代码如下:

  1. /* hdmi0 */
  2. &hdmi0 {
  3. enable-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
  4. status = "okay";
  5. };
  6. &hdmi0_in_vp0 {
  7. status = "okay";
  8. };
  9. &hdmi0_sound {
  10. status = "okay";
  11. };
  12. &hdptxphy_hdmi0 {
  13. status = "okay";
  14. };
  15. &route_hdmi0{
  16. status = "okay";
  17. };

总结

        HDMI 部分的调试相对来说是比较简单的,因为硬件的设计线路基本固定。只要在内核的设备树文件打开对应的节点,一般都可以正常工作。 让你看到系统友好的图形交互界面。

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/899349
推荐阅读
  

闽ICP备14008679号