结果发现APP的中断还是进了bootloader中的。 无意间发现默认的 system_stm32l0xx.c 代码有配置 VTOR寄存器 于是 SCB->VTOR = 0x20000000; /* TODO: M0竟然也有VTOR? */复制代码 然后APP的中断就正常了。 请问这是什么情况? 2018-11-16 11:05:05 评论 举报 刘涛 提交评论 答案...
ZQcHD|I^gUPeL38@LS4Ki6=j@BThiT4wKSy(khvTor6Qi_o{Dtb)rUL z(z7df$M(4Qw$@`+Zq$S*?9olxh;Y&BqkslJ%Un_Br^13kwZSN;B)UIeag#-LnuSfo;1w4_LC)Nh!(wuq} zdO>cQ6yi0ToyF^JA>4zpe~E>PiA5WQ4b3mXfMD3inX20Sa;1H0Mcih`!MNr9eE4ox zn6R=!f#g&mx8k&$qbhEb76no^Ow...
之前了解到M0不支持通过SCB->VTOR来修改中断向量, 所以STM32L0提供了把SRAM映射到0地址的功能。 当使用bootloader功能时,把APP的中断向量复制到 0x20000000 然后由ST把0x20000000映射到0地址去。// SYSCFG->SYSCFG_CFGR1.MEM_MODE = 11: SRAM mapped at 0x0000 0000.memcpy((int *)0x20000000, (const int ...