完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1.请问nand.c这个300多行的文件需要自己实现么?
2.第一期视频除了MMU这一课外,都需要自己完全写出来么? 3. 程序开始运行时 设置堆栈: ldr sp, =4096 @设置堆栈 将main的代码拷到nand flash后,又设置:ldr sp, =0x34000000 @设置栈 请问为什么是0x34000000?代表的是nand flash的存储空间大小吗? |
|
相关推荐
11个回答
|
|
同求,也想问问这个问题
|
|
|
|
1,需要 2.需要 3 :0x34000000 sdram 顶部
|
|
|
|
sdram顶部? 顶部不是0x30000000么? 麻烦说具体点,就算顶部的话,也是一个地址值,而这里要设置栈的大小,怎么能放一个地址值呢?
|
|
|
|
SDRAM起始位置是0x30000000开发板上SDRAM大小为64M那么就是0x33ffffff SP总是指向栈顶所以设置成0X34000000
|
|
|
|
好的,谢谢,还是你回答的好,再问下,64M 算出来是0x33ffffff是怎么算的?
|
|
|
|
64 M 就是 64 * 2^20=67108864, 转化成16进制0x4000000.由于指针是在顶部,所以从起始地址0x30000000到0x34000000是64M的空间。 通常2^10就是 1 K , 2^20 就是1 M。
|
|
|
|
1KB=1024Byte, 1MB=1024KB=1024*1024Byte=(2^10)*(2^10)=2^20Byte
64MB=64*1MB=64*(2^20)Byte=67108864Byte 打开系统自带的计算器,按下Alt+3输入67108864,然后可以换成16进制,就得到了0x4000000。 |
|
|
|
哦哦,谢谢各位,现在懂了,原因是我不知道sp指向的是栈顶,我以为指向0x30000000呢
|
|
|
|
好的,谢谢,必须指向存储器的最顶端地址是吧?
|
|
|
|
http://www.100ask.org/bbs/forum.php?mod=forumdisplay&fid=4
找到: 9.4日公开课答疑汇总 9.11日公开课答疑汇总 里面有一个问题是关于栈的 |
|
|
|
恩,是指向顶部。我个人理解是指向顶部就为了压栈出栈。
|
|
|
|
只有小组成员才能发言,加入小组>>
197个成员聚集在这个小组
加入小组为什么点亮LED的例子放在NORFlash上跑会出现奇怪的现象?
2193 浏览 6 评论
1992 浏览 5 评论
韦东山老师推出的《玩转ARM裸机实战》课程将帮你以上问题一扫而光!
4547 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 14:02 , Processed in 1.002353 second(s), Total 96, Slave 77 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号