网站大量收购独家精品文档,联系QQ:2885784924

bootloader嵌入式实验5.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
bootloader嵌入式实验5

福州大学软件学院 实 验 报 告 学生姓名: 学 号: 课程:嵌入式系统开发 实验地点: 实验项目名称:Bootloader实验 二、实验目的: 了解BootLoader 的基本概念和框架结构 了解BootLoader 引导操作系统的过程 掌握bootloader 程序的编译方法 掌握BootLoader 程序的使用方法 实验内容: Bootloader 程序的编译 确认已经在目标板上安装Toolchain。进入/XSBASE270/Bootloader 目录,可以查看到该目录下的所有资源文件。可以使用make 命令来创建名为boot 的Bootloader 镜像。/Boot-XSBASE270]# make 下载Bootloader 到目标板 将PC 的并口与目标板的并口相连 使用编译生成的jflashmm来将Bootloader 烧写到flash 存储器中。 为了方便起见,可以将Jflash 工具拷贝到Bootloader 所在的目录下,然后在该目录下使用jflashmm 命令烧写Bootloader 到目标板。 重启目标板,会出现Bootloader 的提示符,可以在该提示符下面使用Bootloader 的各种命令。 熟悉Bootloader的使用方法 Minicom 设置完成后,运行该工具,再将XSBase270-Module 重启。 自动启动之前,系统预留了3 秒钟的延迟时间。在这段时间之内,按下任意键将显示如下图所示的Bootloader 的提示符。如果没有检测到键盘的输入,系统将自动启动。 实验器材(设备、软件): 装有Linux操作系统的PC机一台 XSBase270或者XSBase255ARM实验开发平台一套 五、实验步骤及操作: 挂载u盘到虚拟机下, 命令截图如下: 用make 命令来创建名boot 的Bootloader 镜像 编译过程出错,修改原/root目录下.bash_profile,修改后source命令生效 将boot拷贝到/jflash/jflash_temp目录下,用命令./jflashmm boot来将Bootloader 烧写到flash 存储器中 烧写中 烧写完成 烧写完成后重启,在重启的前3秒内按任意键,会进入如下界面 六、实验数据及结果分析: 七、实验结论: 在进行bootloader相关实验的同时进一步温习了U盘挂载的相关命令操作。实验中初步了解了通过串口进行的flash烧写,目标机上bootloader从主机上下载文件等,实现过程中并不是很顺利,还有些没有完全理解,有待进一步学习了解。 八、思考题 1、阅读bootloader的源程序代码,特别是start.s和main.c两个开始函数。 main.c部分 设置内核启动参数 #define u16(x) (volatile unsigned *)(x) #define u32(x) (volatile unsigned *)(x) //#define GPSR0 *(volatile unsigned long *)(0x40e00018) //#define GPCR0 *(volatile unsigned long *)(0x40e00024) #define PWMCR0 *(volatile unsigned long *)(0x40b00000) #define PWMDCR0 *(volatile unsigned long *)(0x40b00004) #define PWMPCR0 *(volatile unsigned long *)(0x40b00008) extern void delay(time); #define LED8 (*(volatile unsigned short *)(0) uart_init();//初始化串口 I2CWrite(0x20, 0x01); I2CWrite(0x23, 0xf); time_init();//初始化定时器 config_init(); //内存映射配置初始化 iflash_init();//存储器初始化 PWMPCR0 = 0xff; PWMDCR0 = (0x4ff2); //let eth CS is ok (*(volatile unsigned long *)(0x4800000c))

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档