LCD与lvgl
LCD与lvgl
目录
LCD与lvgl
回顾
LCD 的驱动层讲解
1、LCD 的常见接口
2、我们的 LCD 的参数
3、LCD 的设备树说明
4、LCD 的设备树说明
5、如何移植 LCD 的驱动(重点)
LCD 的应用层开发
1:LCD 应用开发->界面开发的方法
2:LVGL 模拟器安装
3:LVGL 工程创建和基本组件讲解
4、应用(灯控系统)
5、LVGL 的工程文件说明
6、设置LVGL 的自启动(将刚刚生成的界面开机自启,开机后就显示这个界面)
回顾
-- 输入子系统:
-- 1:输入子系统的意义何在?
统一输入设备的开发框架
大家都不用再去生成设备文件
也不用考虑 要返回怎样的值
输入子系统统一做了!
返回值:世界标准的按键值
他相当于你开了一个键盘的一个按键
你的按键比较多 完全可以开发游戏机!
装几个开源模拟器
-- 2:输入子系统的开发框架是怎样的?
不在去生成设备文件
也不再返回数据了
只做两件:
1:把设备注册成功输入子系统
2:上报输入设备事件
-- 3:输入子系统如何注册一个输入设备的 ?
- input_register_device();
-- 4:输入子系统的按键如何定义?
按键人家有一套标准:是世界级别的标准
-- 5:怎么上报输入子系统的数据的?
- input_event();
-- inout_event是有很多衍生函数的。很多函数中真正执行的也就是input_event,所以只用记这个函数即可.

-- 6:输入子系统重复事件指的是什么意思?
按键按下/触摸屏按下 却没有松开
触发重复事件,连续相当于按键按下!
-- 7:ABS 事件有代表什么意思?
有一天你会在触摸屏接触到!
ABS 指的绝对事件->坐标事件
-- 8、补充:利用输入子系统的按键
- 可以将按键开发成键盘,也就是将按键设计成,按下就相当于1,相当于键盘。

- 还有就是游戏中的按键也是利用的输入子系统。
-- 摇杆键盘:其实就是利用adc+输入子系统。adc来控制电压不同,控制摇杆向前是一个电压,向左是一个电压,向右是一个电压,向后是一个电压。
LCD 的驱动层讲解
1、LCD 的常见接口
-- 普及一些知识:
-- 常见的 LCD 接口分为以下几种:
- IIC/SPI 接口:OLED 单色/双色屏幕
- SPI 的小型 LCD:一般不会超过 3.5 寸
- 8080(也就是MCU的接口)接口的屏幕:单片机最常用大屏幕(7 寸)

-- 补充:什么是MCU接口?
目前最常用的连接模式,主要用于单片机领域里,因此得名MCU接口,现在很多中低端的手机,或手表有在使用,价格较为便宜。MCU接口其本质是由英特尔(Intel)提出的8080总线标准。8080是一种并行接口,所以MCU接口也被称为8080接口,也有人称其为DBI(Data Bus Interface)数据总线接口。数据位传输有8位、9位、16位、18位。连线信号详细见下表:

8080接口,其实并不是专用于LCD的接口,而是由早期的处理器发展而来的,用于CPU与外部的数据的快速传输(CPU外扩RAM、ROM),后来也被用于LCD和打印机数据传输领域。
8080 是通过 “读使能(RE)” 和 “写使能(WE)” 两条控制线进行读写操作。
ILI9341的8080通讯接口时序可以由STM32使用普通I/O接口进行模拟,但这样效率太低,为此STM32提供了一种特别的控制方法——使用FSMC接口实现8080时序。(如果芯片硬件少于100脚,是无法使用FSMC来控制液晶屏,只能使用SPI的方式来控制)
FSMC 是 Flexible Static Memory Controller 的缩写,译为灵活的静态存储控制器。它可以用于驱动包括 SRAM、 NOR FLASH 以及 NAND FLSAH 类型的存储器。
-- MCU接口和RGB接口主要的区别是:
MCU接口方式:显示数据写入DDRAM,常用于静止图片显示。RGB接口方式:显示数据不写入DDRAM,直接写屏,速度快,常用于显示视频或动画用。
相关文章:
LCD与lvgl
LCD与lvgl 目录 LCD与lvgl 回顾 LCD 的驱动层讲解 1、LCD 的常见接口 2、我们的 LCD 的参数 3、LCD 的设备树说明 4、LCD 的设备树说明 5、如何移植 LCD 的驱动(重点) LCD 的应用层开发 1:LCD 应用开发->界面开发的方法 2:LVGL 模拟器安装 3:LVGL 工程创建和…...
SpringBoot 赋能:精铸超稳会员制医疗预约系统,夯实就医数据根基
1绪论 1.1开发背景 传统的管理方式都在使用手工记录的方式进行记录,这种方式耗时,而且对于信息量比较大的情况想要快速查找某一信息非常慢,对于会员制医疗预约服务信息的统计获取比较繁琐,随着网络技术的发展,采用电脑…...
android studio 读写文件操作(应用场景二)
android studio版本:2023.3.1 patch2 例程:readtextviewIDsaveandread 本例程是个过渡例程,如果单是实现下图的目的有更简单的方法,但这个方法是下一步工作的基础,所以一定要做。 例程功能:将两个textvi…...
小尺寸低功耗蓝牙模块在光伏清扫机器人上的应用
一、引言 随着可再生能源的迅速发展,光伏发电系统的清洁与维护变得越来越重要。光伏清扫机器人通过自动化技术提高了清洁效率,而蓝牙模组的集成为这些设备提供了更为智能的管理和控制方案。 二、蓝牙模组的功能与实现: 蓝牙模组ANS-BT103M…...
防火墙有什么作用
防火墙的作用:1. 提供网络安全防护;2. 实施访问控制和流量过滤;3. 检测和阻止恶意攻击;4. 保护内部网络免受未经授权的访问;5. 监控网络流量和安全事件;6. 支持虚拟专用网络(VPN)。防…...
MongoDB-BSON 协议与类型
前言: MongoDB 是一个高性能、无模式的 NoSQL 数据库,广泛应用于大数据处理和实时数据存储。作为一个数据库系统,MongoDB 的核心之一就是其使用的 BSON(Binary JSON)格式,它用于存储数据以及在客户端和数据…...
学习threejs,使用VideoTexture实现视频Video更新纹理
👨⚕️ 主页: gis分享者 👨⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️VideoTexture 视频纹理 二、…...
怎么获取键值对的键的数值?
问: 通过paelData.cardMap.C0002112可以获取到Cooo2112里面的数据,但是有时候接口返回的不是C0002112而是C0002093或者其他值,请问我该怎么写? 后端返回的数据是这样的: cardMap: { C0002112: { name: Item 1, va…...
数据结构排序算法详解
数据结构排序算法详解 1、冒泡排序(Bubble Sort)2、选择排序(Selection Sort)2、插入排序(Insertion Sort) 1、冒泡排序(Bubble Sort) 原理:越小的元素会慢慢“浮”到数…...
在Linux设置postgresql开机自启动,创建一个文件 postgresql-15.service
在Linux设置postgresql开机自启动,创建一个文件 postgresql-15.service 在Linux设置postgresql开机自启动,创建一个文件 postgresql-15.service1. 创建 systemd 服务文件2. 编辑服务文件3. 保存并退出4. 重新加载 systemd 配置5. 启动 PostgreSQL 服务6.…...
【kafka】消息队列的认识,Kafka与RabbitMQ的简单对比
什么是消息队列? 消息队列(Message Queue,简称 MQ)是一个在不同应用程序、系统或服务之间传递数据的机制。 它允许系统间异步地交换信息,而无需直接交互,确保消息的可靠传输。 想象一下,你正在…...
ProjectSend 身份认证绕过漏洞复现(CVE-2024-11680)
0x01 产品描述: ProjectSend 是一个开源文件共享网络应用程序,旨在促进服务器管理员和客户端之间的安全、私密文件传输。它是一款相当流行的应用程序,被更喜欢自托管解决方案而不是 Google Drive 和 Dropbox 等第三方服务的组织使用。0x02 漏洞描述: ProjectSend r1720 之前…...
Android笔记(三十四):onCreate执行Handler.post在onResume后才能执行?
背景 偶然发现一个点,就是在onCreate执行Handler.post在onResume后才执行,以下是测试代码 多次运行的结果一致,为什么execute runnable不是在onCreate和onResume之间执行的呢,带着疑问撸了一遍Activity启动流程 关键源码分析 …...
关闭模组的IP过滤功能
关闭模组的IP过滤功能 关闭模组的IP过滤功能 本脚本用于关闭模组的IP过滤功能,关闭后, 源地址不是终端IP的数据包,也可以被模组转发给网络 关闭模组的IP过滤功能 cat > /usr/bin/ipfilter << "EOF"echo -e "ATCFUN…...
算法分析与设计复习笔记
插入排序 1. void insert_sort(int A[ ],int n) 2. { 3. int a,i,j; 4. for (i1;i<n;i) { 5. a A[ i ]; 6. j i – 1; 7. while (j>0 && A[j]>a) { 8. A[ j…...
vue-amap 高德地图
vue-amap是一套基于Vue 2/vue3和高德地图的地图组件 vue-amap 高德地图2.0版本的对应vue3...
Numpy基础练习
import numpy as np 1.创建一个长度为10的一维全为0的ndarray对象,然后让第5个元素等于1 n np.zeros(10,dtypenp.int32) n[4] 12.创建一个元素从10到49的ndarray对象 n np.arrange(10,50)3.将第2题的所有元素位置反转 n[::-1]使用np.random.random创建一个10*10的ndarray对象…...
一番赏小程序定制开发,打造全新抽赏体验平台
随着盲盒的热潮来袭,作为传统的潮玩方式一番赏也再次受到了大家的关注,市场热度不断上升! 一番赏能够让玩家百分百中奖,商品种类丰富、收藏价值高,拥有各种IP,从而吸引着各个圈子的粉丝玩家,用…...
【前端】将vue的方法挂载到window上供全局使用,也方便跟原生js做交互
【前端】将vue的方法挂载到window上供全局使用,也方便跟原生js做交互 <template><div><el-button click"start">调用方法</el-button></div> </template> <script> // import { JScallbackProc } from ./JScal…...
Oracle查询优化:高效实现仅查询前10条记录的方法与实践
在 Oracle 中,实现仅查询前10条记录的四种方法 1. 使用 ROWNUM 查询 ROWNUM 是 Oracle 中的伪列,用于限制返回的行数。 SELECT * FROM table_name WHERE condition AND ROWNUM < 10;condition:查询条件。ROWNUM < 10:限制…...
洛谷 B4358:[GESP202506 三级] 奇偶校验 ← 位运算
【题目来源】 https://www.luogu.com.cn/problem/B4358 【题目描述】 数据在传输过程中可能出错,因此接收方收到数据后通常会校验传输的数据是否正确,奇偶校验是经典的校验方式之一。 给定 n 个非负整数 c1,c2,…,cn 代表所传输的数据,它们…...
别再被AD值乱跳搞懵了!CS1237电子秤芯片的5个硬件设计避坑点(附电路图)
别再被AD值乱跳搞懵了!CS1237电子秤芯片的5个硬件设计避坑点(附电路图) 电子秤设计中最令人头疼的莫过于AD值不稳定问题。作为一款高精度Σ-Δ ADC芯片,CS1237在电子秤、压力测量等领域应用广泛,但硬件设计中的细微偏差…...
AI Agent Harness恶意指令识别拦截
AI Agent Harness恶意指令识别拦截:构建新一代智能应用安全屏障摘要/引言 开门见山(Hook) 想象一下这个场景:你花了3个月精心搭建了一个**“全栈AI编程助手Agent集群”**——主Agent负责理解需求并拆解任务,代码生成Ag…...
如何彻底解决C盘空间不足:Windows Cleaner终极清理指南
如何彻底解决C盘空间不足:Windows Cleaner终极清理指南 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服! 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 你是否经常遇到C盘空间不足的困扰?…...
别光看代码!聊聊51单片机做计算器时,那些新手容易踩的坑(键盘消抖、变量溢出、显示刷新)
51单片机计算器开发进阶指南:从功能实现到工程优化的深度解析 第一次在51单片机上实现计算器功能时,那种按下按键能看到数码管显示正确结果的兴奋感至今难忘。但真正投入实际使用后,各种问题接踵而至——按键偶尔失灵、大数运算出错、显示闪烁…...
NotebookLM期刊推荐矩阵(含影响因子、APC费用、AI政策条款、平均一审周期——仅限本周开放下载)
更多请点击: https://intelliparadigm.com 第一章:NotebookLM期刊推荐矩阵(含影响因子、APC费用、AI政策条款、平均一审周期——仅限本周开放下载) NotebookLM 作为 Google 推出的 AI 增强型研究协作者,近期正式开放其…...
别再手动写滤波器了!用Simulink DSP工具箱5分钟搞定一个可调带宽IIR滤波器
别再手动写滤波器了!用Simulink DSP工具箱5分钟搞定一个可调带宽IIR滤波器 信号处理工程师的日常工作中,滤波器设计是个绕不开的话题。无论是音频处理、通信系统还是生物医学信号分析,我们总需要根据不同的应用场景调整滤波器参数。传统方法中…...
终极ncmdump使用指南:3步解锁网易云NCM加密音乐,实现跨平台自由播放
终极ncmdump使用指南:3步解锁网易云NCM加密音乐,实现跨平台自由播放 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否曾为网易云音乐下载的NCM格式文件无法在其他设备播放而烦恼?ncmdump作为…...
CodeDroidAI:本地化AI代码助手的设计原理与工程实践
1. 项目概述:一个面向开发者的AI代码助手最近在GitHub上看到一个挺有意思的项目,叫“FMXExpress/CodeDroidAI”。光看这个名字,可能有点摸不着头脑,但如果你是个经常和代码打交道的开发者,尤其是对提升编码效率、探索A…...
ISTA 2A-2011 (2022) 全解析|≤68kg 包装件部分模拟运输测试指南
前言ISTA 2A-2011 (2022) 属于 ISTA 2 系列部分模拟性能测试,专门面向 **≤68kg(150lb)的单个小型运输包装件 **,是电商小件、3C 数码、小家电、仪器仪表最常用的入门级包装验证标准。它结合基础测试与仿真要素,快速验…...
