zoukankan      html  css  js  c++  java
  • 20145312 实验一《开发环境的熟悉》

    20145312 实验一《开发环境的熟悉》

    一.实验目的与要求

    1. 理解目标平台和开发平台
    2. 初步掌握硬件开发平台的搭建
    3. 初步掌握硬件开发的流程
    4. 能够编译、运行简单程序
    5. 掌握程序调试与测试方法

    二.实验内容

    • 基于ARM开发平台。进行软件安装、硬件连接,熟悉开发流程,掌握程序的装载,调试与测试方法
    • 熟悉 linux 开发环境,学会linux 开发环境的配置和使用
    • 使用 linux 的 armv4l-unknown-linux-gcc 编译,使用基于 NFS 方式的下载调试
    • 了解嵌入式开发的基本过程

    三. 实验步骤

    1. 连接 arm 开发板

    • 将 arm 开发板电源线接好,保持开发板开关处于闭合状态。
    • 再分别将串口线、并口线和网线与 pc 机连接好

    2. 建立超级终端

    • 运行 windows XP 系统下开始→所有程序→附件→通讯→超级终端。新建一个通信终端,取名为 arm。
    • 在属性对话框中,将波特率设为 115200,数据位设为 8,无奇偶校验,停止位为 1,无数据流控制。

    3. 启动实验平台

    • 打开超级终端,打开 arm 机电源开关。等待一分钟,arm 机的信息会显示在超级终端的窗口中。
    • 继续等待,直至出现界面。输入 ifconfig 命令,记录下 arm 机的 ip为:192.168.0.121

    4. 修改 xp 系统与 redhat 虚拟机的 ip

    • 将pc机的ip设为192.168.0.55
    • redhat虚拟机ip为192.168.0.234
    • 使得它们均与 arm 机的 ip 在同一网段

    5. 安装 arm 编译器

    • 在 pc 机中“开始”、“运行”,输入虚拟机的 ip\192.168.0.234
    • 输入用户名 bc,密码 123456 然后确定,就可以访问虚拟机的文件了。然后把所需文件解压缩拷贝到共享文件夹 bc 中。
    • 进入虚拟机,在命令行中输入./install.sh,安装脚本程序将会自动建立目录,配置编译环境

    6. 配置环境变量

    • 在 虚 拟 机 中 使 用 vi 修 改 /root/.bash_profile 文 件 中的 PATH 变 量 为PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/ (因为该文件为隐藏系统文件,所以使用 ls 命令不可见)
    • 存盘后执行: source /root/.bash_profile,则以后 armv4l-unknown-linux-gcc 会自动搜索到,可以在终端上输入

    7. 建立 hello.c 文件并编译

    在虚拟机中进入文件夹/root/bc,在此目录下编写 hello.c 文件。利用命令armv4l-unknown-linux-gcc 对 hello.c 进行编译,生成 hello 可执行文件

    8. 下载调试

    在超级终端中将共享文件夹挂载好,建立开发板与虚拟机之间的通讯。输入命令"mount -t nfs -o nolock 192.168.0.234:/root/bc /host",在超级终端中运行编译通过的 hello 可执行文件,打印小组成员的学号

    四.实验过程中遇到的问题及解决方法

    1. 问题:打开超级终端,打开 arm 机电源开关,等待一段时间后发现arm 机的信息没有显示在超级终端的窗口中
      解决方法:重启计算机,再次建立超级终端,arm 机的信息成功显示
    2. 问题:"armv4l-unknown-linux"的含义是什么?与"gcc hello.c –o hello"有什么联系?
      解决方法:armv4l-unknown-linux:这是交叉编译器(arm-linux-gcc)编译命令,用于开发板的程序编译。(交叉编译器用于以下情况:目的平台上不允许或不能够安装我们需要的编译器;目的平台上的资源贫乏,无法运行我们所需要编译器;目的平台还没有建立,没有操作系统)
      gcc hello.c –o hello:平时在Linux系统中对C程序的编译使用的是主机编译,命令为gcc hello.c 即可
    3. 问题:arm 机的信息显示后输入ifconfig没有显示正确的ip信息
      解决方法:arm 机的信息显示后应继续等待arm机加载。于是我们重新建立超级终端,等待所有信息加载完成再输入ifconfig,最后所得结果与实验指导书相同

    五.实验体会

    通过本次实验,熟悉了Linux 开发环境,学会了Linux 开发环境的配置和使用,能够编译、运行简单程序,掌握了一些程序调试与测试方法。在实验中,学会了一种自学的方法。实验时,要有灵活应变的能力,将实践和理论密切结合,才能更好地掌握所学。实验时需要配合分工,才能准确快速的完成实验任务。既要严格根据实验指导书的内容来执行步骤,又要在每个步骤中加入自己的思考和尝试,才能收获更多。

  • 相关阅读:
    【Spring源码解读】bean标签中的属性(二)你可能还不够了解的 abstract 属性和 parent 属性
    【效率工具】史上最好用的SSH一键登录脚本,第三版更新!
    WebGL简易教程——目录
    写技术博客的一些心得体会
    空间直线与球面相交算法
    three.js中帧缓存的使用
    curl使用小记(二)——远程下载一张图片
    curl使用小记(一)
    three.js中场景模糊、纹理失真的问题
    关于three.js中的矩阵更新
  • 原文地址:https://www.cnblogs.com/yx20145312/p/6036693.html
Copyright © 2011-2022 走看看