大家好、
我对函数 esmGetConfigValue 由 HalCoGen 生成有疑问。 卤素产生以下功能:
void esmGetConfigValue (ESM_CONFIG_REG_t * CONFIG_REG、CONFIG_value_type_t 类型)
{
if (type == InitialValue)
{
CONFIG_REG->CONFIG_EEPAPR1 = ESM_EEPAPR1_CONFIGVALUE;
CONFIG_REG->CONFIG_IESR1 = ESM_IESR1_CONFIGVALUE;
CONFIG_REG->CONFIG_ILSR1 = ESM_ILSR1_CONFIGVALUE;
CONFIG_REG->CONFIG_LTCPR = ESM_LTCPR_CONFIGVALUE;
CONFIG_REG->CONFIG_EKR = ESM_EKR_CONFIGVALUE;
CONFIG_REG->CONFIG_IEPSR4 = ESM_IEPSR4_CONFIGVALUE;
CONFIG_REG->CONFIG_IESR4 = ESM_IESR4_CONFIGVALUE;
CONFIG_REG->CONFIG_ILSR4 = ESM_ILSR4_CONFIGVALUE;
CONFIG_REG->CONFIG_IEPSR7 = ESM_IEPSR4_CONFIGVALUE;
CONFIG_REG->CONFIG_IESR7 = ESM_IESR4_CONFIGVALUE;
CONFIG_REG->CONFIG_ILSR7 = ESM_ILSR4_CONFIGVALUE;
}
其他
{
/*SAFETYMCUSW 134 S MR:12.2. "寄存器回读支持"*/
CONFIG_REG->CONFIG_EEPAPR1 = esmREG->EEPAPR1;
CONFIG_REG->CONFIG_IESR1 = esmREG->IESR1;
CONFIG_REG->CONFIG_ILSR1 = esmREG->ILSR1;
CONFIG_REG->CONFIG_LTCPR = esmREG->LTCPR;
CONFIG_REG->CONFIG_EKR = esmREG->EKR;
CONFIG_REG->CONFIG_IEPSR4 = esmREG->IEPSR4;
CONFIG_REG->CONFIG_IESR4 = esmREG->IESR4;
CONFIG_REG->CONFIG_ILSR4 = esmREG->ILSR4;
CONFIG_REG->CONFIG_IEPSR7 = esmREG->IEPSR7;
CONFIG_REG->CONFIG_IESR7 = esmREG->IESR7;
CONFIG_REG->CONFIG_ILSR7 = esmREG->ILSR7;
}
}
组1的 ESM 模块包括96个通道。 寄存器 IEPSR4、IESR4、ILSR4 用于通道32-63、 而 IEPSR7、IESR7、ILSR7用于通道64-95。 正如您在上面的读取行中看到的、ESM 通道32-63的值也用于通道64-95。 HalCoGen 代码不会为 ESM 通道63-95生成一个定义。
因此、如果您想使用此函数- ESM 通道63-95的值必须在 函数外部单独进行编码。
你能同意吗?
此致
Lars