嵌入式实训报告班级:电子信息1301:钟海明字亏:**********同组人:胡晓海指导老师:***目录:、实训目的二、 实训要求 3三、 实训容 31、 嵌入式系统开发环境的搭建 32、 嵌入式程序的编译与下载 33、 uboot的移植 44、 linux核的移植 45、 NFS网络文件挂载 56、 FTP和TFTP的运用 67、 试验箱镜像的烧写 78、 串口实验和TCP实验同时传送AD值--7四、 实训心得体会及体会 8一、实训目的:学习和掌握ARM嵌入式Linux系统的体系结构和基本指令,熟悉Linux下的设计流程和编程流程,能够实现一定功能的嵌入式的设计, 为之前的理论课程实践验证和为今后的学习及将来从事的技术工作 打下一定的基础二、 实训要求:1、嵌入式系统开发环境的搭建2、 嵌入式程序的编译与下载3、 uboot的移植4、 linux核的移植5、 NFS网络文件挂载6、 FTP和TFTP的运用7、 试验箱镜像的烧写8、 串口实验和TCP实验同时传送AD值三、 实训容:1、嵌入式系统开发环境的搭建:首先在笔记本电脑下安装虚拟机VMware,安装成功后拷贝 安装好的Fedora到本机上在虚拟机上找到路径打开。
打开虚拟机进 入Fedora选择用户为root密码为123456交叉环境的安装,下载 好arm-linux-gcc的编译包,解压安装到/opt下2、嵌入式程序的编译与下载:用vi编辑一个(.C)的文件,保存退出后使用(arm-linux-gcc -o编译后的文件名 编译文件名)的指令编译,编译成功后用FTP 或TFTP将可执行文件拷贝到实验开发板中,chmod +x文件名 修改 权限(./文件名)执行编译文件3、uboot的移植下载U-boot的安装包,解压到/opt路径下进入u-boot修改 Makefile 将 CROSS_COMPILE=/opt/Embedsky/4.3.3/bin/arm-linux- 后执行 #make distclean#make smdk2440_config#make4、Linux核的移植:下载Linux的安装包,解压的/opt路径下进入Linux执行#make menuconfig 进行配置配置核支持NFS启动文件系统核支持NFS分区(即编译时在File system中选中[*] Root file system on NFS),以及支持核IP_PNP(即编译时在Networking中选 中[*] IP: kernel level autoconfiguration)File systems ——>Network File Systems ——><*> NFS file system support ## 必选[*] Provide NFSv3 client support ## 可选[*] Root file system on NFS ## 必选Networking --->[*] Networking supportNetworking options --->[*] IP: kernel level autoconfiguration ## 必选 需要打开IP:Kernel level autoconfiguration以及下面所有的选 项包括 DHCP, BOOTP, RARP,而且 NFS Client Support 不能是模块, 必须编译进核。
配置完毕后,保存退出执行下面的命令来生成核映 像make dep#make#make zImage映像文件产生在/arch/arm/boot/目录下,名称“zImage”5、NFS网络文件挂载:1)首先修改虚拟机网络为:192.168.0.43输入以下命令:#cd /root#mkdir nfs#touch aaa#cd /mnt#mkdir nfs#vi /etc/exports进入修改容为: /root/nfs192.168.0.*(rw,sync,no_root_squash)存盘退出#ifconfig (查看网络)#ifconfig eth1 192.168.0.43#ifconfig eth1 down#ifconfig eth1 up#ping 192.168.0.43#/etc/init.d/nfs start#mount -t nfs 192.168.0.43:/root/nfs /mnt/nfs/*此时可以在/root/nfs下新建一个文件,如果在/mnt/nfs下也有, 表示NFS挂载成功6、TFTP的运用:修改计算机的IP为192.168.1.43,用网络线将开发板和实 验板起来(开发板的IP默认问192.168.1.6),打开电脑的菜单栏运 行输入cmd,#telnet 192.168.1.6进去开发板用户名为root。
如果 进不去,打开计算机的Telnet的允许指令,还有一个就是看网络有 没有ping通打开TFTP应用程序,将Windows文件传送到开发板使用指令:#tftp -r 文件名-g 192.168.1.43将开发板的文件传送到Windows使用指令:#tftp -l 文件名-p 192.168.1.43进入查看文件是否有添加,有添加则表示传送成功7、试验箱镜像的烧写:连接好串口和USB,安装USB的驱动(安装驱动由于试验箱和USB 线的问题我们那一组试了无数次都没有安装成功,最后还是通过换用 别人的电脑才成功的)实验箱按键拨到下载模式,打开DNW软件选 择5,6,7,分别下载核,u-boot,根文件系统,按键拨到工作模式重 启实验箱,看是否正常启动即可8、串口实验和TCP实验同时传送AD值:① 串口实验修改串口实验的文件并用arm-linux-gcc编译器编译生成可执 行文件,利用TFTP传送到开发板的/root下,改变权限chmod +x之 后(./)执行./adc和./uart程序,同时打开串口调试助手波特率 选择9600,虚拟机的串口 COM1断开,串口调试助手连接串口接收 端选择文本模式,此时就可以看见接收区收到每隔一秒钟收到的AD 值,和名字学号。
② TCP实验在虚拟机中打开 TCP实验的文件,修改 Makefile文件中 arm-linux-gcc编译器的路径,和server.c文件中的hell[]数主的 字符为zhonghaiming3138702144.保存退出Make之后会生成一 个为client和server的两个程序此时将两个编译生成的文件传送 到开发板上,给权限执行同时打开网络调试助手,执行client时 选择 TCPserver IP 为 Windows IP192.168.1.43 ,Telnet 中执行 (#./client 192.168.1.43 8080)点击发送即可在Telnet中接收到 由网络调试助手发送过来的数据执行./server时 选择TCPclient IP为开发板IP 192.168.1.6执行(#./server 8080&)点击连接就 可以在网络调试助手上接收到(zhonghaiming318702144)网络AD测试,先编译,之后和执行server步骤一样,每连接一 次,发送一次入值和学号四、实训心得体会及总结:三周的实训说快也快,说慢也慢可以说这三周的实训并不是很 顺利,由于对试验箱的不熟悉和嵌入式理论与实际的差距在加上嵌入 式本身有一定的难度,所以走了很多的弯路。
从NFS的挂载开始ping 网络一步步的开始试,找原因找百度,最终还是没有成功的用NFS挂 载到试验箱上,这期间几乎用了一周的时间,效率可见虽然走了许多的弯路,但是我觉得有时候弯路并不是坏事,就此 次实训来说,我就知道了挂载实验箱不仅仅可以用NFS挂载还可以用 TFTP和FTP以及实验板的rz命令直接挂载,进入实验板不仅仅可以 用scoreCRT软件还可以用虚拟机的 minicom以及Windows下的 Telnet命令直接进入试验箱这次实训最大的感触就是要细心多尝试,遇到问题多看多问不要 逃避,不会的要虚心求教要把握好时间观念不要在一个地方死磕, 多和同学交流,每个人遇到的问题都不一样当下次你遇到和他一样的 问题是说不定你就会了所以在这里也要感同组人和同学的帮助,以 及老师耐教学和指导。