TQ2440之uboot---6.运行U-boot目录examples中的hello_world.c

发布者:PeacefulWarrior最新更新时间:2018-04-15 来源: eefocus关键字:TQ2440  uboot  U-boot目录 手机看文章 扫描二维码
随时随地手机看文章

今天无竟中发现u-boot中还有一个examples目录,编译u-boot之后发现了好几个测试程序,如hello_world 。

同时tq2440的bootloader中有选项可以下载程序sdram中并运行,

[7] Download Program (uCOS-II or TQ2440_Test) to SDRAM and Run it。

这样如果hello_world可以直接在sdram中并跑起来的话,就省得每一次都要烧到nand flash中去了。

1. u-boot编译时,修改 ./example/Makefile

ifeq ($(ARCH),arm) 
#LOAD_ADDR = 0xc100000 
LOAD_ADDR = 0x30000000 
endif

原先的LOAD_ADDR=0xc100000没有在内存中所以程序跑不起来,修改LOAD_ADDR到内存的起始地址0x30000000.

2. 同时在烧写时也要修改下载的地址

假设在windows下用dnw烧写,则需要设置Options—>Download Address 0x30000000, 下载的地址要和连接时的地址保持一致才能运行。

3. 程序运行打印信息如下:

Enter your selection: 7 
USB host is connected. Waiting a download.

Now, Downloading [ADDRESS:30000000h,TOTAL:533] 
RECEIVED FILE SIZE:     533 (0KB/S, 1S) 
## Starting application at 0x30000000 ... 
Example expects ABI version 3 
Actual U-Boot ABI version 3 
Hello World 
argc = 1 
argv[0] = "30000000" 
argv[1] = "" 
Hit any key to exit ...

## Application terminated, rc = 0x0


关键字:TQ2440  uboot  U-boot目录 引用地址:TQ2440之uboot---6.运行U-boot目录examples中的hello_world.c

上一篇:TQ2440之uboot---7.start.S中关于bl指令的理解
下一篇:TQ2440之uboot---5.jlink 在线调试 u-boot

推荐阅读最新更新时间:2024-03-16 16:00

TQ2440 学习笔记—— 24、IIC 接口
IIC 接口 IIC (Inter-Integrated Circuit)总线是一种由PHILIPS 公司开发的串行总线,用于连接微控制器及其外围设备,它具有如下特点: 1、只有两条总线线路:一条串行数据线(SDA),一条串行时钟线(SCL)。 2、每个连接到总线的器件都可以使用软件根据它的唯一的地址来识别。 3、传输数据的设备间是简单的主从关系。 4、主机可以用主机发送器或主机接收器。 5、它是一个真正的多主机总线,两个或多个主机同时发起数据传输时,可以通过冲突检验和仲裁来防止数据被破坏。 6、串行的 8 位双向数据传输,位速率在标准模式下可达100 kbit/s,在快速模式下可达 400 kbit/
[单片机]
<font color='red'>TQ2440</font> 学习笔记—— 24、IIC 接口
TQ2440 学习笔记—— 22、系统时钟和定时器
系统时钟和定时器 启动MPLL 需要设置的寄存器: LOCKTIME (LOCK TIME COUNT)、MPLLCON(Main PLL Control)、CLKDIVN(clock divider control) 若Fout = 200MHz则, Fout = 2 *m * Fin / (p * 2 ^ s) = 2 * (92 + 8) * 12MHz / (3 * 2 ^ 2) = 200MHz m = 100, MDIV = 92 p = 3, PDIV = 2 s = 2, SDIV = 2 #define S3C2440_MPLL_200MHZ ((0x5c 12) | (0
[单片机]
<font color='red'>TQ2440</font> 学习笔记—— 22、系统时钟和定时器
TQ2440裸奔程序:串口UART的PC机按键测试程序
  //=========================================   // NAME: main.c   // DESC: TQ2440串口UART测试程序   //=========================================      #include def.h   #include option.h   #include 2440addr.h   #include   #include   #include   #include   #include   //======================================
[单片机]
OK6410开发板uboot烧写
uboot的移植完成以后,满以为很快能烧写到板子上并安装linux,结果uboot烧写了三天才终于成功,这其中碰到了不少的问题,在此做个总结。 首先,飞凌的OK6410开发板并不支持JLink烧写uboot,只能通过SD卡来烧写,这一点我事先并不知道,他们网店介绍里并未说明,而且销售人员也没有做出任何提示,结果我花了整整一天时间尝试所有通过JLink烧写uboot的可能方法,结合网上个别人反映,最终意识到通过JLink完成uboot烧写是不可能成功的了,后来在销售人员那里确认了这一点,对飞凌表示不满。 当时买板的时候没有买SD卡,因为感觉没什么用,就想给老板省点钱,现在没SD卡不行了,但在寻找JLink烧写uboot方法的过程中我
[单片机]
uboot之relocate代码的深入理解
在读网络原理时,发现Dave Clark说的一句话 我们拒绝国王,总统和选举。我们信奉的是是大体的一致意见和正在执行的代码 在读linux0.11内核时,发现linus说的一句话, 要了解系统真正的运行机制,一切尽在源代码中 。 在读众多的关于uboot移植的文档如,大家却在说 第一阶段~~~~第二阶段~~~~~ , 这一段完成~~~~ 却很少见到讲解过start_armboot()函数是怎么实现的,只是笼统的说完成神马神马的初始化~~ 在今天之前看了那么多文档,发现自己对uboot说的是头头是道, 第一阶段~~第二阶段~~ ,然后移植到自己板子上,则是两眼一摸黑,神马都不知道~~~ 然而就是今天,就在
[单片机]
<font color='red'>uboot</font>之relocate代码的深入理解
TQ2440 使用Jlink-Flasher 烧写 u-boot 或者 program
目前有三种方式来烧写 1、使用SJF2440 软件,配合 PC并口,这种方法最原始,效率低下,并且PC 必须有并口,现在的电脑一般都没有,笔记本就更加不用说啦! 2、使用H-Jtag 软件,配合PC并口,对于有PC 并口的,可以推荐下,但是一般都是没有的! 3、使用Jlink 软件,PC 端没有并口,我们一般都采用这种方法,特别是笔记本电脑。 TQ2440 买回来的时候是有u-boot 的,此后我们可以选择是从Nor Flash 启动或者 NAND Flash 启动,并且可以通过 USB 烧写。但如果一旦 u-boot 损坏了,或者其他原因,就会导致不能下在程序。我就遇到了这样的问题! 买了个 J-Link A
[单片机]
<font color='red'>TQ2440</font> 使用Jlink-Flasher 烧写 <font color='red'>u-boot</font> 或者 program
TQ2440 学习笔记—— 11、嵌入式编程基础知识【arm-linux-objcopy、objdump选项】
1、arm-linux-objcopy 选项 arm-linux-objcopy 被用来复制一个目标文件的内容到另一个文件中,可以使用不同于源文件的格式来输出目的文件,即可以进行格式转换。 常用arm-linux-objcopy 来将ELF格式的可执行文件转换为二进制文件。 arm-linux-objcopy 的使用格式如下: 2、arm-linux-objdump 选项 arm-linux-objdump 用于显示二进制文件信息,常用来查看反汇编代码 使用格式如下:
[单片机]
<font color='red'>TQ2440</font> 学习笔记—— 11、嵌入式编程基础知识【arm-linux-objcopy、objdump选项】
S3C6410使用---10为SD卡与NAND FLASH的uboot加上menu菜单
用ok6410进行烧写时,每次都需要敲一大堆命令,又费时又费力. 记得以前用TQ2440时,u-boot启动时会有一个菜单,只按一个数字键就把内核烧好了,非常方便. 现在这张SD卡功能就很全面了,不仅能够直接从SD卡启动,而且还可以烧写nand flash中的u-boot zImage rootfs,呵呵. 下面就把这个功能加到ok6410的u-boot 中去. 一、修改SD卡的u-boot1.1.6 1. common/main.c中 void main_loop (void) { ....... if (bootdelay = 0 && s && !abortboot (bootdelay)) {
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved