docs: 根据1.14寸屏幕、5按键与可编程RGB新规格更新项目文档

This commit is contained in:
2026-07-09 10:49:15 +08:00
parent 17a90ff7dc
commit fdf0c5ed1b
15 changed files with 174 additions and 113 deletions

View File

@@ -1,4 +1,4 @@
# 编码实现 - LCD 显示与字模驱动 (docs/60_coding/mod-lcd.md)
# 编码实现 - LCD 显示与字模驱动 (Docs/60_coding/mod-lcd.md)
本文件对应 LCD 驱动与字模渲染的具体编码实现细节。
@@ -31,14 +31,28 @@ void LCD_SetWindow(u16 x1, u16 y1, u16 x2, u16 y2) {
```
### 2.2 电池图标与百分比坐标对齐
`main.c` 的时钟重绘函数中,通过以下坐标绘制电量:
`main.c` 的时钟重绘函数中,通过以下坐标**135 像素宽** 屏幕上绘制电量:
```c
// 绘制百分比字符
LCD_ShowString(62, 24, "85%", WHITE, BLACK);
LCD_ShowString(77, 24, "85%", COLOR_GRAY, COLOR_BLACK);
// 绘制电池位图
LCD_ShowImage(92, 27, 24, 12, BATTERY_ICON, RED, BLACK);
LCD_ShowImage(107, 27, 20, 10, bmp_battery_20x10, COLOR_GRAY, COLOR_BLACK);
```
两者 Y 轴保持 24 与 27 对齐X 轴保持 30 像素的安全边距62 + 3 * 8 = 86与 92 之间 6 像素的安全间距),防止文字错乱或重合。
两者 Y 轴保持 24 与 27 对齐X 轴坐标根据 135 宽屏幕右偏 15 像素(原为 62 和 92安全边距保持在 6 像素77 + 3*8 = 101与 107 之间 6px防止重合。
### 2.3 字模百分号偏置
`lcd_font.h` 的 ASCII 字符数组中,百分号 `%`(十进制 37十六进制 0x25的字模通过在字模绘制时向上平移 2 像素对齐普通数字的下基准线。
### 2.4 水平居中渲染实现
`lcd.c` 中,字符串居中函数需修改宽度限制参数为 `135` 像素:
```c
void LCD_ShowStringCentered(u16 y, char *str, u16 color, u16 bg_color) {
u16 len = 0;
char *p = str;
while(*p++) len++;
if(len * 8 >= 135)
LCD_ShowString(0, y, str, color, bg_color);
else
LCD_ShowString((135 - len * 8) / 2, y, str, color, bg_color);
}
```