zhp-345798 发表于 2015-10-17 11:51
第一个设置是这样的
你没有修改过RAM的设置吧,原来没有设置前ROM和RAM是什么样子的配置。
creep 发表于 2015-10-17 12:00
你没有修改过RAM的设置吧,原来没有设置前ROM和RAM是什么样子的配置。
默认是下面图片这样的
zhp-345798 发表于 2015-10-17 12:16
默认是下面图片这样的
这里只修改 0x8000000 为 0x8010000 ,其他的不要改变。
单片机上BOOT引脚控制程序从哪里开始执行。
creep 发表于 2015-10-17 12:31
这里只修改 0x8000000 为 0x8010000 ,其他的不要改变。
这样更不行,我一开始就是这样尝试过了
yanhaijian 发表于 2015-10-17 13:15
单片机上BOOT引脚控制程序从哪里开始执行。
boot0为0,从main flash memory启动的
可以。通过设置启动向量。NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);
安 发表于 2015-10-17 14:43
可以。通过设置启动向量。NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);
不可以哦,
我把SystemInit最后那里的SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET;跟你的NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);是一样的效果
程序一开始调试r15(pc)的值为0xfffffffe
如果不设置flash偏移按常规的从0扇区启动的话r15(pc)值为0x8001bf4,可以正常调试运行的
zhp-345798 发表于 2015-10-17 14:35
这样更不行,我一开始就是这样尝试过了
先写个简单的测试程序把其他的代码都去掉比如点亮LED看可不可以,调试看下中断向量表是否放到0x8010000处。
不光要代码,工程配置也要改。