大家好,我遇到的问题挺怪异的,我用的编译器是IAR的,芯片是STM32F107VCT6,当我设置.icf文件的时候不同的设置出现了不同的结果。 1:如果我设置ROM的起始地址为0x00000000(以ROM为256K来确定结束地址),则程序运行OK,怎么测都没问题。 2:如果我把ROM起始地址设置成0x08000000,那么运行的时候我用上位机和这个下位机一交互就产生了硬错误。我看了一下寄存器的值DACCVIOL位被置一,是数据访问违例。 我的问题是:这可能是一个什么样的错误,对于M3来说ROM设置成这两个地址的话意义应该是一样的吧? 另外补充:我用了一个别的程序和这个的程序功能很相似,ROM起始地址设置成0x08000000也不会出现这种错误。 |
RE:STM32 HardFault和ROM起始地址设置的问题
RE:STM32 HardFault和ROM起始地址设置的问题
NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0);