




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、北 京 林 业 大 学10学年11学年第 2 学期 嵌入式系统 实验任务书专业名称: 计算机科学与技术 实验学时: 2 课程名称: 嵌入式系统 任课教师: 张海燕 实验题目: 实验二 熟悉交叉编译环境和开发工具 实验环境: UP-NETARM2410-S实验箱、PC机Red hat Linux实验内容:1使用Vi编辑器编辑文件2学习在Linux下的编程和编译过程3学习ARM开发板的使用和开发环境的设置4下载已经编译好的文件到开发板中运行5修改程序中的语法错误实验目的:通过完成本实验,使学生熟悉Linux开发环境,学会基于S3C2410的Linux开发环境的配置和使用,使用Linux的gcc编译
2、和armv4l-unknown-linux-gcc编译,使用基于NFS方式下载调试,了解嵌入式开发的基本过程,根据错误提示修改程序中的语法错误。实验要求:1掌握Vi编辑器的基本操作2掌握gcc编译方法和armv4l-unknown-linux-gcc编译方法3掌握NFS方式下载调试的方法4能够修改程序中的语法错误实验步骤: 硬件连接:在关机状态下,拿到实验箱:n 连接串口线:将桌子上的串口线连接到实验箱的串口(1-30号实验箱连接上面的串口,31号(含)以后的实验箱连接到靠近电源的串口);n 连接网线:将桌子上的交叉网线连接到靠近电源接口的网口(1-30号实验箱,31号(含)以后的实验箱只有一
3、个网口);n 连接电源,将电源线的连到的电源接口。红色的电源线连接到红色的电源接口,绿色的电源线连接到绿色的电源接口。注意千万不要接错了,否则会烧坏实验箱!启动电脑,进入虚拟机。一实验平台几个基本实验的观察打开超级终端,进入实验箱的操作系统,执行几个已经固化在实验箱的例子:/mnt/yaffscd sound#音频播放演示/mnt/yaffs/soundls/mnt/yaffs/soundwavplay 1.wav #播放wav文件/mnt/yaffs/soundmadplay ttdl.mp3 #播放mp3文件/mnt/yaffs/soundcd ./mplayer#视频播放演示/mnt/y
4、affs/mplayerls/mnt/yaffs/mplayermplayer test.avi #看到小屏电影 #看到全屏电影/mnt/yaffs/mplayercd ./ad#ad转换演示/mnt/yaffs/adinsmod s3c2410-adc.o#加载模块/mnt/yaffs/adlsmod#观察加载模块/mnt/yaffs/ad./ad#执行可通过旋转实验箱上的ADC POT0、ADC POT1、ADC POT2改变屏幕上的值。/mnt/yaffs/adcd ./dc-motor#直流电机运动演示/mnt/yaffs/dc-motorinsmod dc-motor.o#加载模块/
5、mnt/yaffs/ dc-motor./dcm_main#执行二gcc和交叉编译armv4l-unknown-linux-gcc的使用1在/arm2410s下新建一个目录,目录的命名是你的名字的汉语拼音的第一个字母+exp1,例如你叫张三,则你建的目录名是zsexp1。在该目录下使用Vi编辑器输入star.c的内容,star.c保存在新建的目录下,以下的操作都在该目录下进行。/*star.c*/#include <stdio.h>#define NUM 4int star() int i,j,k;for(k=1;k<=NUM;+k) for(i=1;i<=(NUM-k
6、);+i)printf(" ");for(j=1;j<=(2*k-1);+j)printf("*");printf("n");return 0;int main() star();printf(" hello, my friendsn");return 0;2使用gcc编译器,编译程序,生成可执行程序star#gcc star.c -o star3运行star#./star4把运行结果拷贝下来,粘贴在实验报告中。5交叉编译,生成可执行程序starcross#armv4l-unknown-linux-gcc s
7、tar.c o starcross6运行starcross#./starcross能否运行,为什么?请写出原因。7将/arm2410s挂载到开发板的/mnt目录下,在该目录下分别运行star和starcross,有什么现象?请说明原因。8将starcross的运行结果拷贝下来,粘贴在实验报告中。9通过以上步骤,请回答使用gcc编译连接生成的可执行文件运行在什么环境下?使用armv4l-unknown-linux-gcc交叉编译连接生成的可执行文件运行在什么环境下?三改正语法错误的练习1在/arm2410s下新建一个目录,目录的命名是你的名字的汉语拼音的第一个字母+exp2,例如你叫张三,则你建
8、的目录名是zsexp2。在该目录下使用Vi编辑器输入以下5个文件hcf.h,hcf.c,lcd.h,lcd.c和main.c的内容,这5三个文件都保存在该目录下,以下的操作都在该目录下进行。注意:该目录下的所有源文件及Makefile文件需保留,下次实验要用。说明:(1)这个程序是求两个整数的最大公约数和最小公倍数并输出结果,两个整数要求从键盘输入,输入时这两个整数以逗号分隔;(2)hcf.h是求最大公约数函数hcf()的声明,该函数的实现在hcf.c中;(3)lcd.h是求最小公倍数函数lcd()的声明,该函数的实现在lcd.c中;(4)main.c是主程序,在该程序中调用了hcf()和lc
9、d()函数,并输出最大公约数和最小公倍数。文件如下:/*hcf.h*/int hcf(int u, int v);hcf.c文件如下:/*hcf.c*/#include"hcf.h"int hcf(int u)int t,r;if(v>u)t=u;u=v;v=t;while(r=u%v) !=0 )u=v;v=r;return v;lcd.h文件如下:/*lcd.h*/int lcd(int u, int v, int h)文件如下:/*lcd.c*/#include"lcd.h"int lcd(int u, int v, int h)return
10、(u*v/h);文件如下:/*main.c*/#include<stdio.h>#include<hcf.h>#include<lcd.h>int main()int u,v,h,l;scanf("%d,%d",&u,&v);h=hcf(u,v);printf("H.C.F=%dn,h);l=lcd(u,v,h);printf("L.C.D=%dn",l);return 0;2使用Vi编辑器编写Makefile文件如下:main: gcc main.o hcf.o lcd.o -o mainc
11、lean:rm *.o main3在命令行中键入以下命令:#make会出现很多错误,请大家改正,请用红色修改在源程序中。提示:hcf.c中有1处错误;lcd.h中有1处错误;3处错误;Makefile中有2处错误。当make时,出现以下错误(1)gcc gcc: compilation of header file requested说明Makefile文件有错,在gcc命令中出现了.h文件,应该去掉.h文件,出错的gcc在该行的上一行,即gcc ,改正方法是去掉xy.h。(2)hcf.c:3:conflicting types for hcf说明:第1个“:”前是出错的文件名;第1个“:”后
12、第2个“:”前是出错的行数,即第3行有错误第2个“:”后是错误原因,即hcf的类型冲突注意:在修改错误时,改正一个错误后,重新make一下。4修改全部错误后,重新make,生成可执行程序main,运行main#./main5把运行结果拷贝下来,粘贴在实验报告中。#make clean7交叉编译,生成可执行程序maincross将Makefile文件中的gcc替换成armv4l-unknown-linux-gcc,将main替换成maincross,重新make生成maincross8将/arm2410s挂载到开发板的/mnt目录下,在你的目录下运行maincross,将运行结果拷贝下来,粘贴在实验报告中。若已挂载,则省略下面的步骤(1)(3)。(1)在Windows XP下运行超级终端,连接上开发板,进入Linux,出现/mnt/yaffs提示符。(2)设置开发板的IP地址与宿主机(虚拟机)的IP地址在同一网段/mnt/yaffsifconfig exx+60提示:xx为你所在的序号。(3)将/arm2410s挂载到开发板的/mnt目录下/mnt/yaffsmount 192.168.123.1xx:/arm2410s /mnt提示:xx为你所在的序号(4)进入你的目录(例如你叫张三,则你建的目录名是zsexp2),在该目录下运行m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 22320-2025信息技术中文编码字符集 汉字15×16点阵字型
- 课题立项申报书2018
- 比较研究2025年特许金融分析师考试试题及答案
- 注会考试备考心理辅导试题及答案
- 企业电脑采购合同协议
- 微生物检测条件对结果影响试题及答案
- 2025年证券从业证考试常见试题及答案
- 了解资本市场与2025年考试关系的考题试题及答案
- 行政管理师内部管理试题及答案
- 课题申报评审书2019
- 考研复试调剂讲座
- SPC控制图应用指导书
- IrreguLar-Verbs-不规则动词表
- 蔬菜水果配送投标方案(技术方案)
- (2023版)《结肠镜检查肠道准备专家共识意见》解读课件
- 学院物资仓库管理员岗位职责
- 砼工程技术交底
- 煤矿污水处理站制度(完整版)资料
- 光伏储能一体化充电站设计方案
- 剑桥英语PET真题校园版
- 土方开挖及基坑支护工程安全监理实施细则
评论
0/150
提交评论