#define BIOSSTARTADDR 0x30000000 { void (*fpbois)(void) = (void (*)(void))BIOSSTARTADDR; (*fpbois)(); }复制代码代码可以让ARM9重启,看不懂,求大神指导!
使用道具 举报
TQ-ZQL 发表于 2013-6-25 18:02 这个就是直接跳到0x3000000上执行。那是内存的起始地址。cpu启动时会将一些启动代码搬到0x30000,然后跳到这 ...
TQ-ZQL 发表于 2013-6-25 18:12 就是一个函数指针的。直接指定地址
浅析ARM9 发表于 2013-6-25 23:21 懂了,PC指针读取本条指令时认为0x30000000是一个函数入口地址,进入函数,结果是重启。 谢了啊!
亚瑟王 发表于 2013-6-26 09:11 亲,问题解决了请修改帖子类型为“已解决”(请参考:http://www.armbbs.net/forum.php?mod=viewthread&t ...
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
查看 »
Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )
GMT+8, 2024-9-28 01:49 , Processed in 1.020442 second(s), 19 queries .
Powered by Discuz! X3.4 Licensed
Copyright © 2001-2020, Tencent Cloud.