hc32生成app分区bin文件实际生成了bin文件夹的问题

问题说明

最新在项目中使用到了hc32f4a0单片机,会使用到iap升级功能,在编译app代码时将中断向量表偏移到0x40000后,发现没有生成bin文件,而是生产了.bin文件夹,如下图:

在这里插入图片描述

其内容如下图:
在这里插入图片描述
正常应该生成firmware.bin文件。

问题解决

经过多方查找发现是单片机中ICG模块使用造成的,只需要在hc32f4xx_conf.h中不使能ICG功能即可。
在这里插入图片描述
再次编译,生成了正常的bin文件
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是使用HC32F460JEUA芯片的定时器模块进行定时中断的示例代码: ``` #include "hc32f460.h" void Timer_Init(void) { /* 使能外设时钟 */ CLK_FcgPeriphClockCmd(CLK_FCG_TIMB0, Enable); /* 定时器初始化 */ TIMB_StructInit(&TIMB_InitStruct); TIMB_InitStruct.u32PeriodVal = 10000; // 设置定时器周期为10000 TIMB_InitStruct.u32ClkDiv = TIMB_CLK_DIV16; // 设置时钟分频为16 TIMB_InitStruct.u16HwTrigCond = 0U; TIMB_InitStruct.u16HwTrigFunc = TIMB_HW_TRIG_FUNC_START_CNT; TIMB_InitStruct.u16CntOvfTrigCond = TIMB_CNT_OVF_TRIG_COND_INVALID; TIMB_InitStruct.u16CntOvfTrigFunc = TIMB_CNT_OVF_TRIG_FUNC_INVALID; TIMB_InitStruct.u16CntPeakTrigCond = TIMB_CNT_PEAK_TRIG_COND_INVALID; TIMB_InitStruct.u16CntPeakTrigFunc = TIMB_CNT_PEAK_TRIG_FUNC_INVALID; TIMB_InitStruct.u16CntZeroTrigCond = TIMB_CNT_ZERO_TRIG_COND_INVALID; TIMB_InitStruct.u16CntZeroTrigFunc = TIMB_CNT_ZERO_TRIG_FUNC_INVALID; TIMB_InitStruct.u16CntUpDwnTrigCond = TIMB_CNT_UP_DOWN_TRIG_COND_INVALID; TIMB_InitStruct.u16CntUpDwnTrigFunc = TIMB_CNT_UP_DOWN_TRIG_FUNC_INVALID; TIMB_Init(TIMB_UNIT, &TIMB_InitStruct); /* 配置定时器中断 */ NVIC_ClearPendingIRQ(TIMB_IRQn); NVIC_SetPriority(TIMB_IRQn, 3U); NVIC_EnableIRQ(TIMB_IRQn); /* 使能定时器中断 */ TIMB_IntCmd(TIMB_UNIT, TIMB_INT_MATCH_OVF, Enable); } void TIMB_IRQHandler(void) { /* 清除中断标志位 */ TIMB_ClearIntFlag(TIMB_UNIT, TIMB_FLAG_MATCH_OVF); /* 在此处添加中断处理程序代码 */ } int main(void) { /* 初始化定时器 */ Timer_Init(); while(1) { // 在此处添加主程序代码 } } ``` 在上述代码中,我们使用了TIMB0定时器模块,设置了定时器周期为10000,并使能了定时器中断。在中断处理程序中可以编写相应的代码执行定时任务。 请注意,在实际使用时,您需要根据具体的需求进行相应的配置和修改。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值