07秋 嵌入式实验
1. 实验设备的连接
1. 参看《JXARM9-2410-1用户手册》中第一章,熟悉目标设备硬件,进行硬件检测。 2. 参看《JXARM9-2410-1用户手册》中第二章,安装好实验设备:电源,并口等。 3. 参看《JXARM9-2410-1用户手册》中第三章,了解目标设备硬件资源。
2. 软件安装与设置
参看《JXARM9-2410-1用户手册》中第四章,在主机Windows环境下安装实验环境:ADT,而DNW(一种超级终端软件)和tftp可以直接运行。
3. ADT IDE 开发流程
参看《JXARM9-2410-1用户手册》中第五章,通过并口线连接目标机的简易仿真口(ARM9SIMPLE),进行无操作系统实验:(实验教材P38)
(1) 对于包含ADT 1000仿真器的用户,请选择ARM9LPT,对于简易调试器的用
户,请选择ARM9SIMPLE,本实验选择ARM9SIMPLE。
(2) 导入examples目录中的工作区文件“examples.aws”,调试运行leddemo、stepper
等程序
(3) 注意:要运行的工程需设置为当前工程
4. Uboot基本实验
参看《JXARM9-2410-1用户手册》中第七章的“7.2 Windows环境下使用u-boot”:(实验教材P186)
(1) 将连接目标机简易仿真口的并口线去掉,连接好UART0串口线,网线。 (2) 在宿主机打开远程登陆软件DNW(或者超级终端),选择115200,COM1,
建立与目标机的连接
(3) 重新启动目标机,在DNW中会看到与目标机LCD相同的信息,表示连接成
功!
(4) 在超级终端中使用Uboot命令行接口,练习Uboot的基本命令:help、flinfo、
bdinfo、md、dmp、printenv、setenv、saveenv、run等
5. 嵌入式Linux内核移植实验
参看《JXARM9-2410-1用户手册》中第六章
(1) 参看6.1和6.2节,熟悉交叉开发环境,建立宿主机环境。
(2) 参看6.4节,进行内核的编译:
a) 在虚拟机中,启动linux,用户名root,密码123456 b) 打开一个终端,按照实验教材P199的步骤编译内核
$ cd /home/cvtech/jx2410/linux
$ make menuconfig (使用config-jx2410配置文件 ) $ make dep $ make zImage
(3) 参看6.5节,配置好主机IP和目标机IP,保证在同一网段,然后将内核镜像
下载到目标机的SDRAM中运行
$ cp /home/cvtech/jx2410/root/ramdisk.gz /tftpboot (拷贝ramdisk文件系统到tftp根目录)
$ cp /home/cvtech/jx2410/linux/arch/arm/boot/zImage /tftpboot (拷贝内核镜像文件到tftp根目录)
利用DNW连接Uboot,执行以下命令分别下载文件系统和内核镜像: # tftp 30800000 ramdisk.gz # tftp 30008000 zImage
在目标机内存SDRAM中,直接运行内核镜像,观察LCD的效果 # go 30008000
6. linux应用程序实验
参看《JXARM9-2410-1用户手册》中第六章的6.6节:(实验教材P205)
(1) 在主机端编译并运行Helloworld程序
$cd /home/cvtech/jx2410/examples/helloworld
$vi helloworld.c $gcc –o helloworld helloworld.c $./helloworld
(2) 编译能够在目标机运行的helloworld,观察使用的gcc编译器,同时用到了
Makefile文件 $vi Makefile $make
$./helloworld (出错!想想为什么?)
(3) 将编译好的helloworld下载到目标机
$cp helloworld /tftpboot/examples
在目标机Uboot中,执行以下命令:
#mount 192.168.1.180:/tftpboot/ /mnt/nfs #cd /mnt/nfs/examples/ #./ helloworld
观察输出结果!
7. linux驱动程序实验
(1) 编写驱动程序源代码以及测试程序源代码,观察四个文件:drv.c drv.h drvtest.c
Makefile : (实验教材P220)
$cd /home/cvtech/jx2410/examples/drvtest
(2) 编译驱动程序,生成drv.o
$make clean $make
$cp drv.o /tftpboot/examples
(3) 编译测试程序,生成drvtest
$/usr/local/arm/2.95.3/bin/arm-linux-gcc -o drvtest drvtest.c $cp drvtest /tftpboot/examples
(4) 在目标机Uboot中,安装驱动,并运行测试程序
#mount 192.168.1.180:/tftpboot/ /mnt/nfs #cd /mnt/nfs/examples
注册驱动
#insmod drv.o
注册设备文件
#mknod /dev/drvtest c 100 0 #./drvtest
观察输出结果!