江苏科技大学嵌入式实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一熟悉嵌入式系统开发环境
一、实验目的:
1.熟悉嵌入式系统硬件实验平台
2.掌握超级终端配置方法。
3. 掌握嵌入式系统开发环境配置,ARM-Linux下NFS服务器的配置方法
4. 掌握常用的 Linux下shell命令
二、实验设备及工具:
硬件:UP-NETARM2410-S嵌入式实验仪、PC机pentumn500以上、硬盘40G以上、内存大于256M。
软件:PC机操作系统REDHAT LINUX 9.0 、MINICOM 、AMRLINUX开发环境
三、实验内容 :
(1)掌握嵌入式系统实验平台上的各类借接口的位置;
(2)配置windows的超级终端,熟悉vivi的命令行,bootload、kernel、root 和用户程序的介绍;
(3)配置linux的终端,配置网络服、Ip地址,开发目录共享,挂载等。
四、实验步骤:
1.掌握嵌入式系统实验平台上的各类接口的位置
UP-TECH S2410/P270 DVP 的硬件配置如表 1.2.1 所示
实物如图 1.2.1 所示:
2.配置windows的超级终端,熟悉vivi的命令行,bootload、kernel、root 和用户程序的介绍;
1)配置windows的超级终端:
a)用串口线将 PC 机与 ARM 开发板连接好后,将 UP-TECH S2410、P270 DVP 开发板
开机,然后点击 PC 机上的开始“菜单”然后找到“附件”中“通讯”选项中的“超级终端”,
b)然后在超级终端里进行配置,在“名称”中输入要建立的超级终端的名字。
c)在“连接时使用”一栏选择可用的串口号,(这里根据自己的实际情况进行选择)。
d)在“每秒位数”中选择“115200”,“数据流控制”选择“无”,然后点击“确定”按
钮,设置完毕。
2)学习并掌握如下命令:
ls,cd ,pwd,cat,more,less,mkdir,rmdir ,rm,mv,cp,tar,ifconfig
3. Linux下minicom的使用与程序挂载
a)打开虚拟机,启动linux;
b)新建终端,输入minicom来启动实验箱;
c) 配置IP地址——输入ifconfig,查看实验箱IP地址。新建终端,配置主机IP地址与实验箱IP在同一网段。
1.ifconfig eth0 19
2.168.0.3
d) 用前一终端输入ping 192.168.0.3,测试是否ping通。
4. 在主机的创建开发目录,编写程序用arm编译器编译。
vi编辑器,编写代码,并使用armv4l-unknown-linux-gcc编译器进行编译
Hello.c源代码为
5.挂载程序至实验箱
1)主机设置NFS共享
选中NFS->
设置共享文件夹
2)实验箱终端输入:Mount -t nfs 192.168.0.3:/lx /mnt/nfs
运行编译后程序
五、实验结果分析:
在实验室里我没能熟悉并掌握Linux的开发环境,但是在课后通过查阅书籍资料,最终熟悉了Linux 开发环境,也学会了基于S3C2410 的Linux 开发环境的配置和使用。以及使用armv4l-unknown-linux-gcc 进行编译,使用基于NFS 方式的下载调试,实验中出现的问题是编译的文件必须挂载到开发板才能在ARM 中找到我们需要运行的文件,以及使用gcc编译时需要注意的事项。
实验二、嵌入式Linux程序设计
一、实验目的:
1.掌握嵌入式Linux软件设计方法原理
2.掌握Makefile文件设计方法。
3. 熟悉Linux下静态库和共享库的设计
二、实验设备及工具:
硬件:UP-NETARM2410-S嵌入式实验仪、PC机pentumn500以上、硬盘40G以上、内存大于256M。
软件:PC机操作系统REDHAT LINUX 9.0 、MINICOM 、AMRLINUX开发环境
三、实验内容:
(1)编写一个带输入、输出的由5个文件组成的嵌入式软件;
(2)写好makefile文件,并上机调试;
(3)用变量指明两种编译器。
四、实验步骤:
1.在宿主机(PC)上建立用户开发目录,编写嵌入式程序文件,3个C文件+2个头文件。
cd /
mkdir shiyan input.h
#define N 10
Void input(char *s)
input.c
#include<stdio.h> #include<fcntl.h>
Void input(char *s)
{
Printf(“input your name please:”);Scanf(“%s”,s);
}
output.h #define M 5
Void output(char *s)
output.c
#include<stdio.h> #include<fcntl.h>
Void output(char *s)
{
Printf(“hello%s!\n”,s);
}
main.c
#include<stdio.h>
#include<fcntl.h>
#include “input.h”
#include “output.h”
Int main( )
{
int i=0;
char name[N];
input( name );
for( i=0; i<M; i++ )
output( name );
return 0;
}
2.编写Makefile文件,要求Makefile文件实现这5个文件的编译,有clean 和intall 选项,用变量选择86和arm编译器指明
CC= gcc或CC= armv4l-unknown-linux-gcc 。
#makefile
#cc=arm4vl-unknown-linux-gcc
cc=gcc
main:main.o input.o output.o
$(cc) –o main main.o input.o output.o
main.o:main.c input.h output.h
$(cc) –c main.c input.o:input.c
$(cc) –c input.c output.o:output.c
$(cc) –c output.c
Clean:
rm main main.o input.o output.o
3.编译程序,并下载到实验箱上执行
mount –t nfs 主机ip:/开发目录 /host。
在主机上运行: