DDL 库通过大量条件编译区分型号,例如:
c
运行
#if defined(HC32F460KETA)
#define USART_MAX_NUM (3U)
#else
#define USART_MAX_NUM (2U)
#endif
若工程未正确定义芯片型号宏(如未在 “Define” 中添加HC32F460KETA),会导致外设数量、寄存器地址等定义错误,表现为 “函数参数不匹配” 或 “寄存器未定义”。
解决:在 KEIL 的 “C/C++ -> Preprocessor Symbols” 中手动添加目标芯片的宏定义,或通过 DDL 库的hc32f460.h自动匹配(需确保器件选择正确)。
|