Lattice CrossLink-Nx LIFCL-40应用连载8:MIPI DSI接口驱动LCD显示器

news2024/11/27 0:37:11

作者:Hello,Panda

一、案例需求

使用LIFCL-40-7MG121I FPGA的MIPI DSI硬核接口驱动7寸LCD显示器:

(1)显示器:7寸,1024*600横屏,60Hz;

(2)MIPI物理层:4-Lane,600Mbps/lane(最大可支持3840*2160分辨率30Hz,1920*1200分辨率120Hz,最大支持2.5Gbps/lane速率);

(3)DSI:支持突发模式,24-bpp RGB数据;

(4)代码:全手写,不使用Lattice官方IP核。

二、硬件电路

采用LIFCL-40基础视觉开发平台,由FPGA产生本地测试图像,接口电路见下图1所示。

图1 MIPI DSI LCD驱动接口

如上图所示,MIPI DSI数据通道为4-lane MIPI D-PHY,LCD_RST_3V3为LCD复位信号,低电平复位;LCD_PWM_3V3为背光驱动信号,10~20KHz PWM信号。

三、软件设计

软件使用Radiant3.2开发,软件的整体结构如下图2所示。

 图2 驱动LCD软件结构

(1)片上晶振产生50MHz时钟给MIPI D-PHY物理层内部的PLL产生300MHz的源同步时钟和75MHz的字节时钟;

(2)核心板外部50MHz产生65MHz视频时钟,用于产生1024*600 60Hz的视频时序和产生测试数据;

(3)产生的数据经FIFO后给u_dsi_nocil_4lane_inst模块发送到MIPI物理层模块u_mipi_dsi_phy_inst进行串行化发出;

(4)DSI模块u_dsi_nocil_4lane_inst用于产生符合MIPI D-PHY物理层规范的长短包发送时序。

 在开机后,延时200ms以上等待LCD显示屏初始化完毕后再发送Turn On Peripheral Command和Color Mode Off Command短包命令打开设备并进入正常显示模式。

MIPI DSI数据发送模式选择为Burst Mode,如下图3所示。一帧发送一个VSS(帧起始)短帧,其他行发送HSS(行)起始短包,显示数据区域(VACT)行发送实际的RGB-24bpp打包的像素长包数据,其他区域VSA、VBP、VFP区域发送Blanking数据。

 图3 Burst模式时序图

整个工程的代码结构见下图4所示:

 图4 工程代码结构

五、显示效果

如下图所示,将显示器的软排线连接到板子的J7连接器,将bit文件烧入flash,重新上电显示效果见下图5:

图5 显示效果图

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/143322.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算机网络实验---Cisco Packet Tracer 实验

直接连接两台 PC 构建 LAN 用交换机构建 LAN 交换机接口地址列表 生成树协议(Spanning Tree Protocol) 路由器配置初步 静态路由 动态路由 RIP 动态路由 OSPF 基于端口的网络地址翻译 PAT 虚拟局域网 VLAN 虚拟局域网管理 VTP VLAN 间的通信 …

功率放大器电路图集(多种类功率放大电路)

关于功率放大器电路图集的问题是很多工程师都感兴趣和想了解的,今天就请安泰电子来为大家介绍一下多种类功率放大电路的内容。 一、功率放大电路介绍 1、一般情况来说功率放大电路的主要作用是让负载在不使信号失真或轻微失真的情况下获得最大功率。因此&#xff0c…

JavaScript 语法

文章目录JavaScript 语法JavaScript 语法JavaScript 字面量JavaScript 变量JavaScript 操作符JavaScript 语句JavaScript 关键字JavaScript 注释JavaScript 数据类型数据类型的概念JavaScript 函数JavaScript 字母大小写JavaScript 字符集JavaScript 语法 JavaScript 是一个程序…

Docker - Docker Compose;Docker Swarm

一、Docker Compose (一)Docker Compose介绍 Docker Compose是用于定义和运行多容器Docker应用程序的工具。通过Compose,您可以使用YML文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从YML文件配置中创…

可视化组件使用小技巧——中国地图组件的应用

中国地图作为我们数据展示常用的组件,通常被我们用来展示与地理位置相关的数据,中国地图组件在实际应用中可以帮助我们充当地区数据展示的作用,并让我们一眼看出区域之前的差异趋势。接下来结合实际案例让我们看看在山海鲸可视化软件中如何具…

你知道几种乘法的计算方式?

前言 家里有本《算法详解》一直没有看,昨天晚上打开翻了翻,觉得写的挺有趣的,第一章讨论了一个大家都学过的内容,乘法的计算。大部分人计算乘法,应该都只有一种方式,乘法的计算,也算是一种算法…

记录--微信小程序跳转H5、小程序、App

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 在业务中接触了微信小程序,客户对引流用户非常在意,每次都会提该需求,经常做就存档一下。使用的小程序账户都是企业版非个人版本。 跳转H5 在微信公众平台-小程序后…

axios:基本使用、常用配置项、create方法、请求和响应拦截器、取消请求

axios的使用一、发送ajax请求1.axios函数发送通用请求2.精简版GET请求3.精简版POST请求二、配置通用属性(create方法)三、请求和响应拦截器1.请求拦截器2.响应拦截器四、取消请求五、axios源码解析官网:https://github.com/axios/axios 一、…

GitHub桌面版和汉化包,使用详细(GitHub Desktop安装,github软件汉化包详细使用过程)

github大家都比较熟悉,而它的桌面版使用则更加方便(GitHub桌面版就是GitHub Desktop,它们的数据都是相通的),但是软件是英文版本,使用起来不太方便,这里为大家提供了该软件和汉化包,…

记一次靶场实战【网络安全】

前言 【一一帮助安全学习一一】 ①网络安全学习路线 ②20份渗透测试电子书 ③安全攻防357页笔记 ④50份安全攻防面试指南 ⑤安全红队渗透工具包 ⑥网络安全必备书籍 ⑦100个漏洞实战案例 ⑧安全大厂内部视频资源 ⑨历年CTF夺旗赛题解析 一、信息收集 先用nmap扫一下ip。 锁定…

多元线性回归分析

回归分析:研究X和Y之间相关性的分析回归分析是数据分析中最基础也是最重要的分析工具,绝大多数的数据分析问题,都可以使用回归的思想来解决。回归分析的任务就是,通过研究自变量X和因变量Y的相关关系,尝试去解释Y的形成…

gumbel-softmax的使用、课程学习的使用、有监督的对比学习的使用、无监督的对比学习的使用

一、gumbel-softmax的使用 gumbel-softmax里面的 τ\tauτ值越接近无穷获得的向量越接近一个均匀分布的向量;τ\tauτ值越接近0获得的向量越接近一个one-hard vector;τ\tauτ值越接近1则gumbel-softmax就和softmax越类似 # score:代表序列…

Ubuntu服务器使用NTP功能同步时间

前提: 1. 要明确自己的需求,是设计一个NTP服务器,然后给内网的其他用户提供NTP服务? 2. 还是发现自己Ubuntu系统时间错误,想要同步一个时间进来? 如果是2,继续往下看吧,如果是1&am…

2021年一篇强人工智能论文,基于AGI Brain改进的二代版本

AGI Brain II: The Upgraded Version with Increased Versatility Index返回论文和资料目录 1.论文简介 论文基于19年提出的第一代AGI Brain I 改进。主要有两点改进,1.提出一个AGI指标,2.用Mamdani模糊推理联想记忆代替原本的神经网络NN表示外显记忆&…

字节跳动最爱考的前端面试题:计算机网络基础

注意:每道题前面出现的 (xx) 数字代表这道题出现的频次,此 计算机网络 基础是基于 30 篇前端面经整理出的问题和对应的回答、参考链接等。文章内容为拿到 Offer 的本人整理。 (3)问:HTTP 缓存 HTTP 缓存又分为强缓存和…

ArcGIS基础实验操作100例--实验55栅格与ASCII转换

本实验专栏参考自汤国安教授《地理信息系统基础实验操作100例》一书 实验平台:ArcGIS 10.6 实验数据:请访问实验1(传送门) 高级编辑篇--实验55 栅格与ASCII转换 目录 一、实验背景 二、实验数据 三、实验步骤 (1&a…

nodejs+vue+element+eachers构建开源项目大型连续剧(3)建立前端基础项目(暂时用的vue2框架)

书接上回,在第二集我们成功安装了mysql数据库,并通过nodejs服务器关联到数据库,并成功更改了数据库中的数据。这一集呢,主要是进行一个前端vue2项目的构建,后面如果大家想要看vue3的话可以后续更新,毕竟现在…

计算机原理二_操作系统概述

目录儿三、操作系统概述3.1 操作系统的基本概念3.1.1 操作系统的概念3.1.2 操作系统的目标和功能3.1.2.1 目标3.1.2.2 功能3.1.3 操作系统的特征3.2 操作系统的发展与分类3.2.1 分类3.3 操作系统的运行环境3.3.1 操作系统的运行机制3.3.1.1 用户态、核心态3.3.1.2 时钟与中断3.…

SLAM初探

SLAM初探 1.视觉SLAM框架 整个视觉SLAM包括以下流程 传感器信息读取,主要是相机图像信息的读取和处理前端视觉里程计,它的任务是估算相邻图像之间相机的运动和局部的地图后端优化,接受不同时刻视觉里程计输出的相机位姿以及回环检测的信息&…

【C++高阶数据结构】LRU

​ 🏆个人主页:企鹅不叫的博客 ​ 🌈专栏 C语言初阶和进阶C项目Leetcode刷题初阶数据结构与算法C初阶和进阶《深入理解计算机操作系统》《高质量C/C编程》Linux ⭐️ 博主码云gitee链接:代码仓库地址 ⚡若有帮助可以【关注点赞收藏…