05-I2C控制LCD1602
I2C控制LCD1602一、简介二、具体实现逻辑一、简介什么是LCD1602LCD是显示方式LCD液晶显示器。每行可以显示16个字符一共可以显示2行。一般来说LCD1602有16个IO口控制它就需要16个引脚。但是这次购买的套件中通过I2C芯片进行了适配大大减少了引脚的占用从16个变少到了2个。I2C介绍(Inter-Intergrated Circuit)中文名称 集成电路总线它是一种串行通信总线适用于主-从架构。功能包括减少引脚占用只需要两个IO引脚所有组件之间都存在简单的主-从关系。连接到总线的每一个设备都可以通过唯一的地址进行软件寻址I2C是真正的多主设备总线可以提供仲裁和冲突检测传输速度标准模式-100Kbps快速模式-400Kbps高速模式-3.4Mbps超快速模式-5Mbps最大连接设备数无限制最大从机设备数127二、具体实现逻辑当前控制LCD1602的逻辑是这样的ESP32–I2C协议–PCF8574–LCD屏幕PCF8574接收I2C数据控制8个IO引脚的输出下图是连接方式MicroPython官网也有对I2C通信的描述frommachineimportPin,SoftI2C# 按照具体的连接方式定义好对应的scl和sda引脚通信频率 标准频率100Kbpsi2cSoftI2C(sclPin(12),sdaPin(13),freq100000)print(i2c.scan())# 扫描总线上出现的设备# 打印 [39]这里0x2716进制的39其实是I2C的默认地址它的值是由PCF8574芯片配置引脚的高低电平决定的给图中的A0-A2配置不同的阻值就能改变他的地址这里直接使用了普中的I2C驱动LCD的代码使用它们大大的简化了操作其中内容的复杂度。https://gitee.com/hong-shengquan/esp32/blob/master/Code/LCD1602/i2c_lcd.pyhttps://gitee.com/hong-shengquan/esp32/blob/master/Code/LCD1602/lcd_api.py直接将两个文件导入到ESP32中通过代码引用它们即可frommachineimportPin,SoftI2Cimporttimefromi2c_lcdimportI2cLcd# 按照具体的连接方式定义好对应的scl和sda引脚通信频率 标准频率100Kbpsi2cSoftI2C(sclPin(12),sdaPin(13),freq100000)print(i2c.scan())# 扫描总线上出现的设备DEFAULT_ADDR0x27# lcd对应的标准i2c对象 地址 几行lcd 每行对少个字符lcdI2cLcd(i2c,DEFAULT_ADDR,2,16)foriinrange(0,100):#lcd.clear()lcd.putstr(loading---{}%\n.format(i))lcd.putstr(Please wait.\n)#time.sleep_ms(1)可以看到这里的实现是非常简单的因为两个驱动代码已经封装好了基础功能此外I2cLcd还提供了其他的一些功能如移动光标、开关背光等。可以查看源码自行试验相关资料、代码

相关新闻

7个快捷键组合让CVAT标注效率提升300%:从鼠标依赖到键盘大师的蜕变之路

7个快捷键组合让CVAT标注效率提升300%:从鼠标依赖到键盘大师的蜕变之路

7个快捷键组合让CVAT标注效率提升300%:从鼠标依赖到键盘大师的蜕变之路 【免费下载链接】cvat Computer Vision Annotation Tool (CVAT) is a leading platform for building high-quality visual datasets for vision AI. It offers open-source, cloud, and enter…

2026/7/23 20:41:56 阅读更多 →
MySQL 8.0.35 主从复制搭建笔记(传统位置点主从复制)

MySQL 8.0.35 主从复制搭建笔记(传统位置点主从复制)

基于二进制包最小化安装,传统位置点主从复制 主库:192.168.195.141从库:192.168.195.1421. 环境信息项目主库 (Master)从库 (Slave)IP192.168.195.141192.168.195.142OSKylin Linux Advanced Server V10 (Halberd)Kylin Linux Advanced Serve…

2026/7/23 15:24:16 阅读更多 →
股票池每天都在换:用Jaccard距离检查选股信号稳定性

股票池每天都在换:用Jaccard距离检查选股信号稳定性

股票池每天都换一批,往往意味着选股规则对数据或阈值很敏感。牛股王股票这类面向普通投资者的量化辅助软件,适合把因子组合、调仓周期和提醒记录对应起来;聚宽方便用Python保存每日股票池;PTrade进入券商侧任务环境后,…

2026/7/25 3:40:25 阅读更多 →

最新新闻

RWA + AI 融合趋势:2026 真实资产上链的技术突破与机构采用路径分析

RWA + AI 融合趋势:2026 真实资产上链的技术突破与机构采用路径分析

RWA AI 融合趋势:2026 真实资产上链的技术突破与机构采用路径分析 一、引言 2024-2025 年,RWA(真实世界资产)代币化的讨论集中在"做不做"——黑石(BlackRock)的 BUIDL 基金、摩根大通的 Onyx 平…

2026/7/25 9:22:48 阅读更多 →
Unity集成海康SDK PTZ控制:NET_DVR_PTZControlWithSpeed_Other参数详解与避坑指南

Unity集成海康SDK PTZ控制:NET_DVR_PTZControlWithSpeed_Other参数详解与避坑指南

1. 项目概述:当Unity遇上海康威视SDK 在工业仿真、安防监控可视化、数字孪生等项目中,Unity引擎因其强大的实时渲染和跨平台能力,成为了连接虚拟与现实的热门选择。而海康威视作为安防领域的巨头,其设备(如球机、云台摄…

2026/7/25 9:22:48 阅读更多 →
智能扩写工具paperzz:快速生成专业实习报告

智能扩写工具paperzz:快速生成专业实习报告

1. 项目背景与需求痛点 每到实习季,总有一群"摸鱼党"要为每周的实践报告发愁。作为过来人,我完全理解这种痛苦——明明每天在工位刷手机,却要写出几千字看似专业的项目复盘;实际工作只是跑腿打杂,报告里却要…

2026/7/25 9:22:48 阅读更多 →
HarmonyOS开发实战:小分享-应用签名与调试证书配置

HarmonyOS开发实战:小分享-应用签名与调试证书配置

前言 应用签名 是 HarmonyOS 应用发布的关键步骤,用于验证应用的发布者身份和完整性。调试证书用于开发阶段在真机上运行。小分享 App 的 build-profile.json5 中需要配置签名信息。本篇讲解签名配置与证书管理。详细 API 可参考 HarmonyOS 签名官方文档。 一、bu…

2026/7/25 9:22:48 阅读更多 →
Paperxie智能排版系统:提升学术写作效率的AI解决方案

Paperxie智能排版系统:提升学术写作效率的AI解决方案

1. 论文排版:学术写作中被忽视的时间黑洞第一次写学术论文的人总会惊讶地发现,调整格式花费的时间竟然比实际写作还多。从页边距到参考文献编号,从标题层级到图表标注,每个细节都在吞噬着研究者宝贵的时间。我见过太多研究生在dea…

2026/7/25 9:22:48 阅读更多 →
C++编程核心:从内存管理到现代特性的完整实战指南

C++编程核心:从内存管理到现代特性的完整实战指南

1. 项目概述:为什么C依然是技术栈的“压舱石”?每次看到“C基础知识”这个标题,很多刚入行的朋友可能会觉得,这又是一个老生常谈的话题。毕竟,C这门语言已经快40岁了,在Python、Go这些现代语言大行其道的今…

2026/7/25 9:21:48 阅读更多 →

日新闻

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是为了解决您的…

2026/7/25 0:00:35 阅读更多 →
C++ string类模拟实现:从深拷贝到内存管理的完整指南

C++ string类模拟实现:从深拷贝到内存管理的完整指南

1. 项目概述:为什么我们要“手撕”string类?在C的学习道路上,尤其是从C语言过渡到C的“初阶”阶段,string类绝对是一个绕不开的核心。标准库里的std::string用起来太方便了,、find、substr,几个操作符和函数…

2026/7/25 0:00:35 阅读更多 →
三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

1. 先搞清楚“三角洲寻宝鼠”到底是什么工具从名称来看,“三角洲寻宝鼠”更像是一个资源查找或文件检索类工具,而不是游戏或娱乐软件。这类工具的核心价值在于帮助用户快速定位特定资源,比如文档、图片、压缩包或特定格式的文件。如果你经常需…

2026/7/25 0:00:35 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/25 5:08:22 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/25 5:13:53 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 18:52:18 阅读更多 →

月新闻