-
实验内容
基于实验平台的(ARM+FPGA+Z32)环境。选择ARM开发环境进行软件安装、硬件连接,熟悉开发流程,掌握程序的装载,调试与测试方法。
完成实验内容:
1) 搭建交叉编译环境
2) 目标机与宿主机的互联互通
3) 交叉编译程序的编写、编译、运行、调试(选做) -
实验步骤
1-交叉编译环境-(使用自己笔记本电脑) -
实验三人一组
-
可以使用自己的笔记本,也可以使用实验室台式机,使用实验室机器的不用做本题
-
安装老师提供的software目录中的“VMware-workstation-full-10.0.1-1379776.exe”
-
解压老师提供的software目录中的“Ubuntu1204.rar”
-
用VMWare打开Ubuntu,用户名:linux,口令:1
-
建立实验目录"mkdir linux_组员1学号_组员2学号_组员3学号"
-
在实验目录中编写“hello word”程序,另外补充几行打印所有组员的学号姓名
-
参考bocsd目录中的脚本armc.sh, 分别用gcc和交叉编译器arm-none-linux-gnuenbi-gcc编译hello.c,用gcc编译的可执行文件命名linuxhello:gcc hello.c -o linuxhello; 用arm-none-linux-gnuenbi-gcc编译的命名为armhello: /usr/local/toolchain/toolchain4.3.2/bin/arm-none-linux-gnuenbi-gcc hello.c -o armhello
2-目标机宿主机联通
0. 使用实验室机器不用安装软件,桌面上有相应图标
- 使用自己笔记本电脑的,解压超级终端软件“windows7st(Windows).rar”,并在桌面上建立快捷方式(这个不用在实验室做)
- 使用自己笔记本电脑的,到实验室把“USB转串口线”的USB口插入自己的电脑,把串口连到实验箱的COM0
- 参考视频配置超级终端,用超级终端作为实验箱的显示终端
- 用ifconfig在超级终端中查看实验箱IP(目标机),在Ubuntu中(宿主机)中用ifconfig在命令行查看IP
- 用网线连接实验室台式机(或自己笔记本电脑)和ARM实验箱的网口NET1(最大屏旁边的)
- 用ping命令保证目标机和宿主机能互相ping通,提交ping通的截图
2.1步骤1 vmware的下载及配置
2.1.1 操作内容
- 可以使用自己的笔记本,也可以使用实验室台式机,使用实验室机器的不用做本题
- 安装老师提供的software目录中的“VMware-workstation-full-10.0.1-1379776.exe”
- 解压老师提供的software目录中的“Ubuntu1204.rar”
- 用VMWare打开Ubuntu,用户名:linux,口令:1
- 建立实验目录"mkdir linux_组员1学号_组员2学号_组员3学号"
2.1.2操作结果
按照老师的要求和实验步骤,下载了vmware,打开Ubuntu,登录用户,并建立目录,完成后对系统进行ls,截图如下:
2.2步骤2 编写编译C语言程序
2.2.1 操作内容
-
在实验目录中编写“hello word”程序,另外补充几行打印所有组员的学号姓名
-
参考bocsd目录中的脚本armc.sh, 分别用gcc和交叉编译器arm-none-linux-gnuenbi-gcc编译hello.c,用gcc编译的可执行文件命名linuxhello:gcc hello.c -o linuxhello; 用arm-none-linux-gnuenbi-gcc编译的命名为armhello: /usr/local/toolchain/toolchain4.3.2/bin/arm-none-linux-gnuenbi-gcc hello.c -o armhello
2.2.2操作结果
本步骤是编写helloworld程序,使用gedit完成。由于本小组只有我一人,只打印我一人的学号姓名,截图如下:
完成后对程序进行编译:
如图所示,编译成功。
2.3 步骤3 实现目标机宿主机ping通
2.3.1 操作内容
- 使用自己笔记本电脑的,解压超级终端软件“windows7st(Windows).rar”,并在桌面上建立快捷方式(这个不用在实验室做)
- 使用自己笔记本电脑的,到实验室把“USB转串口线”的USB口插入自己的电脑,把串口连到实验箱的COM0
- 参考视频配置超级终端,用超级终端作为实验箱的显示终端
- 用ifconfig在超级终端中查看实验箱IP(目标机),在Ubuntu中(宿主机)中用ifconfig在命令行查看IP
- 用网线连接实验室台式机(或自己笔记本电脑)和ARM实验箱的网口NET1(最大屏旁边的)
- 用ping命令保证目标机和宿主机能互相ping通,提交ping通的截图
2.3.2操作结果
修改Win7虚拟机默认的IP地址:
查看Linux虚拟机IP地址:终端输入ifconfig,可以查看IP是192.168.0.230:
按照实验指导书上内容完成之后,可以完成两个虚拟机之间互相ping通,截图如下:
但是由于个人电脑的问题,无法识别与实验箱连接的接口,无法实现第三者ping通,截图如下:
3.实验体会
3.1 调试中出现的问题及解决过程
问题1:在虚拟机上无法使用超级终端连接实验箱,虚拟机中也无法找到相关接口。而完成实验指导书中除此之外的其他操作之后,即使选择其他端口,也无法正常显示连接的通话。如图所示:
一开始我认为可能是我没有找到正确的接口,因此将显示出的三种接口分别试了一遍,结论是接口的确都是错误的,即正确的接口因为某些原因未显示。
于是我猜测可能是实验箱存在问题,多次更换实验箱后按照步骤重新完成实验,但结果仍然一样。
到此我已经没有办法凭借自身能力判断问题出在哪里了,于是请教了老师。老师看过之后首先指出,串口线插错接口了。后来我也在实验指导书中找到了此处的细节要求。
但是解决了这个问题之后仍然无法连接。故而老师判断,这是电脑本身存在问题,需要更换电脑才能继续进行实验。
3.2 心得体会
本次实验我由于身体原因没有及时完成,也因此没能组到队,后续步骤都由我一人完成,不过还是受到了老师和同学们的帮助,觉得受益良多。
最让我感触深刻的是老师说“这个实验很大程度上是靠运气”。能不能ping通靠运气,能不能正常连接靠运气,甚至能不能拿到正常运行、没有出故障的实验箱也是靠运气。归根结底,还是因为至少我本人知识储备还不够丰富,不了解实验箱和各个接口的构造,只是对照着实验指导书依葫芦画瓢按部就班完成实验,通过实践来加深对课堂知识的理解和记忆。
3.3 实验改进建议
实验前要认真进行预习,仔细阅读实验指导书,对于实验指导书中提到的重点加粗黑体内容格外注意,避免在实验过程中犯相关错误。