完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
ctr0.S 文件是:
@****************************************************************************** @ File:crt0.S @ 功能:通过它转入C程序 @****************************************************************************** .text .global _start _start: ldr r0, =0x53000000 @ WATCHDOG寄存器地址 mov r1, #0x0 str r1, [r0] @ 写入0,禁止WATCHDOG,否则CPU会不断重启 ldr sp, =1024*4 @ 设置堆栈,注意:不能大于4k, 因为现在可用的内存只有4K @ nand flash中的代码在复位后会移到内部ram中,此ram只有4K bl main @ 调用C程序中的main函数 halt_loop: b halt_loop 主程序文件是: #define GPBCON (*(volatile unsigned long *)0x56000010) #define GPBDAT (*(volatile unsigned long *)0x56000014) int main() { GPBCON = 0x00000400; // 设置GPB5为输出口, 位[11:10]=0b01 GPBDAT = 0x00000000; // GPB5输出0,LED1点亮 return 0; } Makefile文件是: led_on_c.bin : crt0.S led_on_c.c ARM-linux-gcc -g -c -o crt0.o crt0.S arm-linux-gcc -g -c -o led_on_c.o led_on_c.c arm-linux-ld -Ttext 0x0000000 -g crt0.o led_on_c.o -o led_on_c_elf arm-linux-objcopy -O binary -S led_on_c_elf led_on_c.bin arm-linux-objdump -D -m arm led_on_c_elf > led_on_c.dis clean: rm -f led_on_c.dis led_on_c.bin led_on_c_elf *.o 在linux系统下产生.bin文件。 启动nor flash ,选择a 选项,启动DNW下载地址为0x30000000, 下载完成后从 nand flash启动,为什么就没有点亮呢 ? 烧写的时候 出现这样的错误 : Length of file is too big : -1448498785 > 63561596 这是什么原因造成的呢 ? |
|
相关推荐
4个回答
|
|
用的是TQ2440 的DNW , 下载用ADS编译的裸机程序又好使的
|
|
|
|
出现错误的提示是在CRT上提示的,DNW 提示是下载成功了的
|
|
|
|
解决了 谢谢大神 是DNW的问题
|
|
|
|
请问下是怎么解决的,我刚开始学,也遇到了同样的问题
|
|
|
|
只有小组成员才能发言,加入小组>>
197个成员聚集在这个小组
加入小组为什么点亮LED的例子放在NORFlash上跑会出现奇怪的现象?
2177 浏览 6 评论
1982 浏览 5 评论
韦东山老师推出的《玩转ARM裸机实战》课程将帮你以上问题一扫而光!
4540 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 19:20 , Processed in 0.754660 second(s), Total 84, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号