ZHDA006 December   2025 CC2340R5

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
    1. 1.1 CC2340R5
    2. 1.2 七段 LCD
  5. 2硬件设置
    1. 2.1 LCD 原理图
    2. 2.2 CC2340R5 连接图
  6. 3运行示例
    1. 3.1 依赖项
    2. 3.2 加载固件
  7. 4固件设计
    1. 4.1 代码描述
    2. 4.2 计时器 ISR
      1. 4.2.1 lightUpdateHandler
      2. 4.2.2 lcdUpdateHandler
      3. 4.2.3 tempUpdateHandler
    3. 4.3 硬件回调
      1. 4.3.1 deltaNotificationFxn
      2. 4.3.2 gpioButtonFxn
  8. 5测试和结果
  9. 6总结
  10. 7参考资料

lcdUpdateHandler

该函数借鉴了 TIDA-00848 参考设计,使用八个 case 语句以接近 REFRESH_RATE Hz 的频率驱动 LCD(由于存在对比度死区时间,实际频率略低)。对于每条语句,引脚 PWM、PWM_N、COM1、COM2 和 COM3 的驱动均遵循 TIDA-00848 设计指南中所述的 LCD 波形。除非根据所用 LCD 的 COM 线数量添加或删除 case 语句对,否则建议不要更改这些引脚的写入命令。

Case 0/1 用作“死区时间”,在特定时间段内将每个 LCD 段驱动至高电平,该时间基于 CC2340R5 的供电电压水平。其目的是在 2.2V 至 3.8V 的电源电压范围内为 LCD 提供对比度控制。在较低电压下,死区时间必须更长,以便在电压较低时为指定的 LCD 段提供额外的驱动强度;而在较高电压下,死区时间应尽可能短,以避免过驱不需要的 LCD 段。

Case 2/3 控制由 COM1 驱动的段,case 4/5 控制 COM2,case 6/7 控制 COM3。表 3 再次提供了引脚图以供参考。SEGX 引脚在偶数 case(0、2、4 和 6)期间被驱动,而在奇数 case(1、3、5 和 7)期间关闭。

表 4-2 LCD 引脚图
引脚12345678910
COM11F1A1B2F2A2BS2COM1不适用不适用
COM21E1G1C2E2G2CS4不适用COM2不适用
COM3S11DS7S62DS5S3不适用不适用COM3

标有“1X”的 LCD 段控制左侧的七段显示器,而“2X”段控制右侧的七段显示器。“SX”段指的是辅助符号。为了进行代码演示,使用查找表将两位十进制数转换为用于驱动两个七段显示器的正确的段。° 符号也被点亮,用于演示片上温度传感器功能。该查找表专用于当前所使用的 LCD,若使用不同的 LCD 引脚-段映射配置,则需要对其进行修改。

 LCD 查找表图 4-1 LCD 查找表