首先说我用的是AT91的ARM. Atmel给出的启动文件直接调用了segment_init来初始化变量和RAM函数. 但IAR官方的启动文件(uCOS-II移植范例中也使用了)是在最后
ldr r0 =?main bx r0
我看了下反汇编.?main里主要是是调用了_low_level_init()然后调用segment_init().最后再跳转到main().
以上两个函数都能在IAR目录找到..但?main却无法找到..连所有帮助文档都搜索不到..
并且我修改目录里_low_level_init()的返回值为0,程序仍然会调用segment_init()... 证明程序好象并不是链接的这两个.c.
因为最近想做个稳定了系统+ucos.想把这些搞明白~请大家帮助. |