ZHCUB07 may 2023
本节介绍了示例代码如何设置不同的参数来识别系统的构建方式。第一部分是实际使用的 LED 驱动器 IC。在 led_driver.h 文件中,选择了使用过的 LED 驱动器 IC。
#include "LP5891.h"
该代码支持:表 3-2 中列出了影响系统设置及其位置的宏和变量的摘要。
Filename | 宏/变量名称 | 说明 |
---|---|---|
system_info.h | ANIMATION | 在动画和简单测试模式之间进行选择 |
TOTAL_SCAN_LINES | 扫描线数 | |
CASCADED_UNITS_CCSI1 | CCSI 总线 1 中的器件数量 | |
MONOCHROMATIC | 在 RGB 和单色显示屏之间进行选择 | |
system_info.c | FRAME_PERIOD | VSYNC 命令的间隔 |
在文件 system_info.c 中指定了帧周期,该周期确定了帧速率。帧周期以微秒为单位指定。
const uint16_t FRAME_PERIOD = 40000; // 40ms = 25Hz frames-per-second
支持的最大帧周期为 65535 微秒,即最低帧速率为 15.3Hz。
文件 system_info.h 包含多个系统定义。
#define ANIMATION TRUE
#define MONOCHROMATIC FALSE
宏 ANIMATION 将确定是执行动画还是简单测试模式。
EVM 都使用 RGB LED。因此,宏 MONOCHROMATIC 定义为 FALSE。示例代码确实支持使用单色 LED(例如仅使用红色 LED)的系统。在此类情况下,宏 MONOCHROMATIC 应定义为 TRUE。这会自动更改帧数据结构、动画算法和 API。
以下代码块演示了会影响寄存器设置的宏。
#define TOTAL_SCAN_LINES 16
#define CASCADED_UNITS_CCSI1 1
宏 TOTAL_SCAN_LINES 定义了系统中使用的扫描线数,并将直接影响寄存器 FC0 中的字段 SCAN_NUM。
对于 LP5890EVM 和 LP5891EVM,有 16 条扫描线。对于 TLC6983EVM 和 TLC6984EVM,有 32 条扫描线。
宏 CASCADED_UNITS_CCSI1 定义系统中级联器件的数量,并直接影响寄存器 FC0 中的字段 CHIP_NUM。
对于 LP5890EVM 和 LP5891EVM,只有 1 个器件级联。
当用户使用可用连接器级联更多 EVM 时,必须更新此宏。
对于 TLC6983EVM 和 TLC6984EVM,一个 EVM 上有 2 个级联器件。