ZHCADC7 November   2023

 

  1.   1
  2.   摘要
  3.   商标
  4. 1玻璃段式 LCD 基础知识
    1. 1.1 驱动段式 LCD
    2. 1.2 LCD 映射
  5. 2硬件
    1. 2.1 选择连接 LCD 模块的引脚
  6. 3软件实现
    1. 3.1 自定义软件 LCD 代码
    2. 3.2 软件流程
    3. 3.3 在应用中集成软件 LCD 解决方案
  7. 4其他资源

自定义软件 LCD 代码

SysConfig 用于选择和命名软件 LCD 解决方案所需的 GPIO 引脚和计时器资源。提供的 Sysconfig 文件已经为工作解决方案提供了适当的命名。添加、删除或修改提供的引脚,以满足您的应用程序需求,同时遵守节 2中提供的建议。您还可以在 Sysconfig 中更改计时器时钟设置,从而更改 LCD 刷新率。如果需要达到特定的刷新率,请记住,节 3.2中所述的 LCD_Update_Clock 需要八个更新周期才能刷新整个 LCD 屏幕。这意味着您需要以八倍的刷新率为计时器中断提供服务。例如,如果想要 30Hz 的 LCD 刷新率,那么必须将计时器设置为以 240Hz 的速率中断器件才能满足该刷新率。

表 3-1 显示了需要修改以适合您的解决方案的代码定义和映射。这包括定制您选择的引脚和字符到 LCD 的映射,如 节 1.2中所述。这些定义位于每个工程的 principle .c 文件的开头。

表 3-1 重要代码定义和映射
类型 名称 详细信息
#define COM_LINE_TOTAL 使用的 COM 线数 - 默认 4
#define SEGMENT_LINE_TOTAL 使用的线段数
#define SEGMENT_LINE_LOWER_PORT_MASK 下部端口 A 中段所用引脚的端口掩码
#define SEGMENT_LINE_UPPER_PORT_MASK 上部端口 B 中段使用的引脚的端口掩码
#define SEGMENT_LINE_PORT_SPLIT 分配了上部端口引脚的第一个段。对应于 gSegmentOffsetMap 中分配的第一个上部端口
uint8_t array gNumberMap[] 将不同字符映射到 LCD 映射图的数组。
uint8_t array gSegmentOffsetMap[] 跨端口的不同段的映射。
SEGMENT_LINE_LOWER_PORT_MASK 必须将这些段映射到端口。所有端口 A 段(下)都必须列在端口 B 段(上)之前。