共2条
1/1 1 跳转至页
有几个问题困绕多时,望高人赐教

问
1._main到底应该怎么来正确使用
启动代码中到底是用 b main还是 b _main?
我用了b _main后软件仿真时不知道为什么总会跳到reset_vector地址去
2.设FLASH地址0X04000000,重映射前FALSH是0地址吗,
那0X04000000地址是什么呢?也还是FLASH吗?
我看的书上FLASH是0x04000000是启动地址,这个地方的程序是:
ROM_Start EQU 0x04000000
Instruct_2 EQU ROM_Start+4
ResetBase EQU 0x0b000000 //重映射控制器基地址
ClearResetMap EQU ResetBase + 0x20 //重映射控制器地址
ENTRY
LDR PC,=Instruct_2
mov r0,#0
ldr r1,=ClearResetMap
strb r0,[r1]
.....
我不懂第一句话有什么必要,完全可以没有啊?
3.RW段的装载地址和运行地址应该是绝对不同的,看书说RW段的复制可以 是自己写代码,还可以用_main来实现
是不是用了_main,所有运行地址在RAM里的RW段都不用自己来编COPY程序
4.在某书上有一句"如果应用程序中不包含函数main(), 而是使用自己定义的
启动代码,应用程序仍然可以使用很多C运行时库的功能.."
请问自己是不是有main()就不能使用"自己定义的启动代码",难道连向量设置都不需要了吗?我觉得向量设置应该是必须的
大家见笑了,希望哪位能详细开化我这愚公
答 1: 自己顶一下 答 2: 在线等待中 答 3: 自己回答一下第一个问题自己回答一下第一个问题
原来一个C程序里有 main _main __main三种标号
只有使用了第三个标号__main才是正确的
真是丧气啊,为什么搞出这三个来扰乱人呢
使用了b __main后,软件仿真总算是正确了
但一到板上去,还没运行到main()就会进入软件中断去
不知道是否和我的连接器设置有关
我的FLASH的硬件地址是bank0
我的SDRAM的硬件地址是BANK6
其他地方都没有存储器了(特别是BANK7是空的)
我在ADS里SIMPLE IMAGE设置 ro:0 rw 0X0C000000
其他问题等待中
请大家帮我解答啊!
启动代码中到底是用 b main还是 b _main?
我用了b _main后软件仿真时不知道为什么总会跳到reset_vector地址去
2.设FLASH地址0X04000000,重映射前FALSH是0地址吗,
那0X04000000地址是什么呢?也还是FLASH吗?
我看的书上FLASH是0x04000000是启动地址,这个地方的程序是:
ROM_Start EQU 0x04000000
Instruct_2 EQU ROM_Start+4
ResetBase EQU 0x0b000000 //重映射控制器基地址
ClearResetMap EQU ResetBase + 0x20 //重映射控制器地址
ENTRY
LDR PC,=Instruct_2
mov r0,#0
ldr r1,=ClearResetMap
strb r0,[r1]
.....
我不懂第一句话有什么必要,完全可以没有啊?
3.RW段的装载地址和运行地址应该是绝对不同的,看书说RW段的复制可以 是自己写代码,还可以用_main来实现
是不是用了_main,所有运行地址在RAM里的RW段都不用自己来编COPY程序
4.在某书上有一句"如果应用程序中不包含函数main(), 而是使用自己定义的
启动代码,应用程序仍然可以使用很多C运行时库的功能.."
请问自己是不是有main()就不能使用"自己定义的启动代码",难道连向量设置都不需要了吗?我觉得向量设置应该是必须的
大家见笑了,希望哪位能详细开化我这愚公
答 1: 自己顶一下 答 2: 在线等待中 答 3: 自己回答一下第一个问题自己回答一下第一个问题
原来一个C程序里有 main _main __main三种标号
只有使用了第三个标号__main才是正确的
真是丧气啊,为什么搞出这三个来扰乱人呢
使用了b __main后,软件仿真总算是正确了
但一到板上去,还没运行到main()就会进入软件中断去
不知道是否和我的连接器设置有关
我的FLASH的硬件地址是bank0
我的SDRAM的硬件地址是BANK6
其他地方都没有存储器了(特别是BANK7是空的)
我在ADS里SIMPLE IMAGE设置 ro:0 rw 0X0C000000
其他问题等待中
请大家帮我解答啊!
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
分享一种检测按键状态的方法被打赏20分 | |
周末总结一下,STM32C0系列的开发经验被打赏50分 | |
【换取手持数字示波器】MicrochipMPLABHarmony框架下定时器配置被打赏20分 | |
【换取手持数字示波器】MicrochipMPLABHarmony框架下PWM配置被打赏20分 | |
【Cortex-M】Systick Timer使用被打赏10分 | |
分享汽车防盗系统的组成与分类(一)被打赏5分 | |
VOFA+波形显示+JYD-31蓝牙发送和解析不定长数据被打赏10分 | |
【换取手持数字示波器】-STM32F4PWM控制LED灯管亮度被打赏22分 | |
【换取手持数字示波器】STM32F4驱动RPR-0521RS照度、接近一体型传感器被打赏23分 | |
宏定义和const关键字定义被打赏5分 |