嵌入式系统实验报告(华中科技大学).doc

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

嵌入式系统 xxxxx 指导老师: 张杰 2012/6/25 试验一:bootloader (ads、引导) 一、实验任务 1、熟悉ADS 1.2开发工具 创建、编译、下载、调试工程 2、串口通讯 串口控制器初始化、收/发数据 3、配置主机端的nfs服务器 配置主机端的nfs服务器,以连接linux核心 4、下载并运行linux核心 使用自己的串口程序下载并运行linux核心 二、实验内容 编写串口接收数据函数 编写串口发送数据函数 学习ads、jtag调试、flash烧写 打印菜单,等待用户输入 下载并运行linux核心 配置主机的nfs服务器,与linux核心连接 三、实验步骤 1.编写串口接收数据函数 编写串口发送数据函数 修改bootloader:菜单、串口收发、命令行; 接收串口数据并做相应处理: while(1) { 打印菜单并等待用户输入; switch(ch) //根据用户输入做相应处理 { case 1: imgsize=xmodem_receive((char *)KERNEL_BASE, MAX_KERNEL_SIZE); if(imgsize==0) //下载出错; else //下载成功; break; case 3: nand_read((unsigned char *)KERNEL_BASE, 0 4*1024*1024); case 2: BootKernel(); //这里是不会返回的,否则出错; break; default: break; } } Bootloader的main()函数打印菜单: int main(void) { ARMTargetInit(); //目标板初始化; //接收用户命令,传递linux核心; Uart_puts(Menu:\n\r); Uart_puts(1.Load kernel via Xmodem;\n\r); Uart_puts(2.Boot linux; \n\r); Uart_puts(3.Load kernel from flash and boot; \n\r); Uart_puts(Make your choice.\n\r); do{ ch=Uart_getc(); }while(ch!=1 ch!=2 ch!=3); return 0; } 串口读写: void Uart_putc(char c) { while(!SERIAL_WRITE_READY()); ((UTXH0) = (c)); } unsigned char Uart_getc( ) { while(!SERIAL_CHAR_READY()); return URXH0; } 2.使用ads1.2编译bootloader; 3.使用uarmjtag下载、调试bootloader; 4.使用axd查看变量、内存,单步跟踪; 5.配置超级终端,与bootloader通讯; 6.配置nfs; 编辑/etc/export文件: /home/arm_os/filesystem/rootfs 目标板ip(rw,sync) /home/arm_os/filesystem/rootfs 主机ip(rw,sync) 启动nfs服务器: /etc/init.d/nfs restart 测试nfs服务器是否正常运行: mount 主机ip:/home/arm_os/filesystem/rootfs /mnt 7.以root用户启动cutecom,将cutecom配置改为115200 bps,8位,1位停止位,无校验,xmodem,no line end; 8.使用bootloader重新下载Linux核心映像,启动核心运行后,察看是否成功加载nfs上的root文件系统; 9.启动Linux核心运行,察看结果; 10.linux核心能够运行到加载root步骤,说明bootloader正常运行; 11.将bootloader烧写到flash中,重启目标板电源,察看bootloader是否烧写正常,下载核心测试; 目标板linux系统正常运行到命令行模式下,能够正常输入linux命令,说明实验成功。 四、实验过程中遇到的问题及解决方案 问题一 :打开dubug,下载zImage失败,调试时发现下载失败原因是发生错误程序写为无限循环。 解决

文档评论(0)

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

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

1亿VIP精品文档

相关文档