Files
lcd1602atest/README.md
DESKTOP-PUHFO60\dsx2016 4bd42a9c39 Fix 3.5 CYD: backlight GPIO27, LCD SCL 21 via Wire1, GT911 INT as input.
Align cyd_35r with CYD_PROJECT_GUIDE so ST7796 is not black-screened, LCD does not steal GT911 Wire, and firmware/docs match 22+21 wiring.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-25 12:52:13 +08:00

95 lines
3.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# LCD1602A 液晶(CYD)
触控 + LVGL 参考 `tftest` / `hw269test` / `CYD_PROJECT_GUIDE.md`。
LCD1602A(HD44780)经 **PCF8574 I2C 转接板** 驱动:改两行文字、背光、脚位映射。
用途:16×2 **字符提示屏**(状态、读数、短菜单)。驱动简单、资料多;不是彩屏替代品。本工程用于在 CYD 上验证接线与显示是否正常。
## 硬件
| 项目 | **2.8"(默认 `cyd`)** | **3.5C(`cyd_35r`)** |
|------|------------------------|------------------------|
| 板子 | ESP32-2432S028R | ESP32-3248S035C |
| 屏 / 触控 | ILI9341 + XPT2046 SoftSPI | ST7796 + GT911 I2C |
| TFT 背光 | GPIO21 | **GPIO27** |
| LCD SDA | **GPIO22** | **GPIO22**(不变) |
| LCD SCL | **GPIO27** | **GPIO21**(2.8 的 27 → 21) |
| LCD 总线 | `Wire` | `Wire1`(GT911 占 `Wire` 33/32) |
接线:
| LCD1602A(I2C) | 2.8" CYD | 3.5" C CYD |
|---------------|----------|------------|
| VCC | **5V**(推荐) | 同左 |
| GND | GND | GND |
| SDA | GPIO22 | GPIO22 |
| SCL | GPIO27 | **GPIO21** |
上电扫描 `0x27 / 0x3F / 0x26 / 0x3E / 0x20 / 0x38`。串口与 TFT 状态栏显示是否找到地址。
### 对比度(蓝色电位器)
- 背光能亮但看不到字:**先拧 I2C 小板上的蓝色电位器**(最常见原因)。
- **不能软件调节**。PCF8574 只控 RS/RW/E/数据线/背光,**不接 Vo**;Vo 只接到电位器。
- 拧到字清晰、背景无明显黑块即可。
### 背光与省电
- **BL ON/OFF** 只开关背光晶体管,不影响已写入的字符内容。
- 常见蓝底白字模块:**关背光后室内几乎看不清字**(靠背光透射);关背光是为了省电/息屏,不是“暗光可读”。
- 要关背光仍可读,需反射型字符屏等另一类硬件。
### 仍无字时
1. 确认已调对比度 + VCC=5V
2. TFT 点 **Map** 换 PCF8574 脚位映射,再点 **Hello**
3. 看串口是否有 `PCF8574 found @ 0x..` / `LCD1602A OK`
4. 3.5:确认 SCL 接的是 **21** 不是 27(27 是 TFT 背光)
## 操作
- 中间两行:当前 LCD 内容预览(16 字符/行)
- **Demo**:循环示例文案
- **Hello**:`Hello World!` / `LCD1602A`
- **Map**:切换 I2C 背包脚位映射并重新初始化
- **BL ON/OFF**:背光开关(关后通常不可读)
## 构建 / 烧录
```powershell
# 2.8"
pio run -e cyd -t upload
# 3.5C
pio run -e cyd_35r -t upload
```
## 预编译固件
```powershell
# 2.8"
cd firmware\cyd
.\flash.ps1
# 3.5"
cd firmware\cyd_35r
.\flash.ps1
# 或 .\flash.ps1 -Port COMx
```
重新导出:
```powershell
.\firmware\export_from_build.ps1
.\firmware\export_from_build.ps1 -Env cyd_35r
```
## 变更记录
| 日期 | 说明 |
|------|------|
| 2026-10-23 | 初版:I2C LCD1602A(SDA22/SCL27)+ SoftSPI 触控 + LVGL;Demo/Hello/背光 |
| 2026-10-23 | 修空白屏:对齐 LiquidCrystal_I2C 时序;增加 Map;提示拧蓝色对比度电位器 |
| 2026-10-23 | 文档:对比度仅硬件可调、关背光通常不可读、用途与排障说明 |
| 2026-10-25 | 按指南修正 3.5:BL=27、外设 22+21、GT911 INT 复位后 INPUT、LCD 用 Wire1 |