嵌入式实验指导书.docx
- 文档编号:8524577
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:38
- 大小:673.15KB
嵌入式实验指导书.docx
《嵌入式实验指导书.docx》由会员分享,可在线阅读,更多相关《嵌入式实验指导书.docx(38页珍藏版)》请在冰豆网上搜索。
嵌入式实验指导书
嵌入式Linux系统原理及开发
实验指书
计算机与信息工程学院电子教研室
实验一Linux的安装、启动和关闭
一、实验目的
1、学习Linux的基本分区和安装;
2、学习Linux的启动与关闭;
二、实验要求
1、了解Linux的安装过程和安装的基本要求;
2、了解Linux的启动过程和关闭方法;
三、预备知识
1、Linux的文件系统;
2、虚拟机VMwareWorkstation的基本操作;
四、实验内容及方法
光盘映像文件存放在实习机器的D:
\光盘镜像\Linux.iso中;
1、Linux的安装(通过光盘(映像)安装)
1)安装VMwareWorkstation:
VMwareWorkstation安装在C:
\VMwareWorkstation中,首先运行“启动服务.cmd”,启动其中的第1,2项服务;然后运行“vmware.exe”启动虚拟机。
2)选择“File”→“New”→“NewVirtualMachine”创建一个Linux虚拟机。
要求创建的虚拟硬盘不小于3G;在“VirtualMachineConfiguration”选项卡中,
3)将安装光盘放入光驱或加载安装光盘的映像文件(双击“Summary”中的“CDRom”→选择“UseIsoImage”选项→指定映像文件的位置);
4)选择“Power”→“Poweron”或点击工具栏上的
按钮启动虚拟机
5)迅速在窗口的客户区点击鼠标左键让虚拟机锁定鼠标,然后在屏幕有提示时按下F2键进入虚拟机的BIOS设定;在Boot区设定CDRom为第一启动
6)进入安装程序安装程序;这个过程按照选择安装内容的不同大概需要20-60分钟。
注意:
在使用虚拟机时,光标是被锁定在虚拟机的客户区内的,若要取消锁定按Ctrl+Alt组合键。
2、Linux的启动和关闭
1)启动:
加电启动。
若按上面步骤安装,则Linux默认启动级别是3级,即命令行模式(文本模式);若想将默认启动改为图形登录(Xwindow登录界面),只需要以root身份登录,修改/etc/inittab中
id:
3:
initdefault:
的内容为:
id:
5:
initdefault:
即可。
下次启动时便可直接进入XWindow环境。
2)关闭系统:
在命令行模式下执行
poweroff
或
shutdown–hnow[提示信息]
其中:
–h:
表示停止系统
now:
表示现在立即执行关闭操作
提示信息:
为可选内容,它将广播到登录系统的每个用户
或
shutdown–h+10
表示10分钟后关闭系统
3)重启系统
reboot
或
shutdown–rnow
-r:
reboot表示重启系统
3、Linux网络配置
假如在安装过程中没有配置网络,则用以下操作临时启用本机网络:
1)使用ifconfig配置IP地址:
假设你要配置的网卡的设备名为eth0
首先停止网卡:
ifdowneth0
配置IP地址并启用网卡:
ifconfigeth0IP地址netmask子掩码
2)使用route添加默认网关
routeadddefaultgw网关地址
3)添加域名服务器
echo域名服务器IP>/etc/resolv.conf
注意:
以上操作必须由root用户完成
实验二Linux命令操作
五、实验目的
1、学习Linux中常用系统命令
2、学习Linux中账号管理
3、学习使用常用实用程序
4、学习使用正则表达式
5、学习VI编辑器的基本操作
6、学习Linux的文件和目录管理
六、实验要求
1、掌握常用的系统命令
2、掌握Linux中的账号管理
3、掌握重要的实用程序:
more、less、cat、grep
4、熟悉正则表达式
5、熟悉VI的基本操作
6、掌握基本的文件目录管理命令:
ls、mv、cp、tar
7、掌握文件目录的权限管理
七、注意事项
在Unix/Linux中是大小写敏感,因此注意命令及参数的书写
注意权限问题。
在Unix/Linux中,每个用户都有自己的权限范围,在操作时一定要注意自己是否有权进行操作。
注意区别文件和目录权限的不同之处
注意硬连接与符号连接各自不同之处及应用
注意对SUID和SGID的使用
八、实验内容
(一)常用命令
Linux的登录与退出
关机:
poweroff或
shutdown-hnow
重启系统:
reboot或
shutdown–rnow
注:
此操作只能由系统管理员(root)来执行。
课本1.3中的系统命令:
man、date、who、uptime、passwd的使用
passwd修改当前用户的口令
passwd用户名修改指定用户的口令,只能用root来完成
与其他用户通讯命令:
write、talk、wall、mesg
课本第二章中的实用程序:
more、less、cat、head与tail、wc、tee;
练习正则表达式及grep、egrep、awk、tr的使用;
用户管理(root用户有权)
添加用户:
adduseradd用户名
删除用户:
userdel用户名
添加用户组:
groupadd组名
删除用户组:
groupdel组名’组内所有用户都已被删除
查看/etc/passwd文件内容
cat/etc/passwd文件中记录系统中所有用户的信息,内容如下:
root:
x:
0:
0:
root:
/root:
/bin/sh
其中:
第一列为用户名,第二列口令,第三列用户ID(UID),第四列用户组ID(GID),第五列用户描述,第六列用户主目录,第七列用户shell
其中用户口令单独存放在/etc/shadow文件中。
(二)vi编辑器的使用
使用命令:
cp/etc/httpd/conf/httpd.conf./
复制一个文本文件httpd.conf到自己的目录中,然后用vi进行编辑练习第三章学习的命令。
九、思考题
写出目录与文件权限的不同之处
写出硬连接与符号连接各自不同之处
实验三Shell
一十、实验目的
了解Shell的功能,理解Shell相关的概念;
掌握Bash操作方法和环境设置
一十一、实验要求
熟悉BashShell的环境及基本设置和技巧
掌握BashShell常用命令
掌握输入输出重定向和管道
掌握程序的前后台执行
一十二、实验内容
Bash的操作技巧
使用命令历史――history
使用命令补全功能——Tab键
使用命令别名
alias查看已定义的命令别名
aliascopy=‘cp’为cp定义一个别名copy
unaliascopy取消别名copy
分号――多命令执行
ls;date执行完ls命令后继续执行date命令
括号――()
(ls;date)>>list将两个文件的输出结果作为整体输出到list中
输入输出重定向和管道
输入重定向:
writezz 标准输出重定向: ls>ls.txt将命令ls的输出输入到ls.txt中(原内容被覆盖) ls>>ls.txt将命令ls的输出追加到ls.txt中 标准错误重定向 mkdir/etc/ttmp2>err.log将命令出错的信息输出到err.log中 管道 ls–l|grep‘^d’将ls命令的输出作为grep的输入 Shell标准环境变量 set查看shell所有环境变量 HOME用户主目录的路径名 PATH命令查找路径 PS1和PS2 PS1B-Shell主提示符,PS2副提示符 TERM指定终端类型名 显示变量值: echo$变量名 给变量赋值: 变量名=值 程序的前后台切换 Ctrl+z将正在执行的程序切换到后台执行 jobs查看所有后台执行的程序 fg编号将后台执行的程序切换到前台执行 实验四Shell编程 一十三、实验目的 理解Shell的变量、条件表达式、流程控制和函数的概念,掌握Shell编程的基本方法。 一十四、实验要求 shell程序的格式。 环境变量、变量参数、用户变量。 条件表达式,文件条件、字符串条件、数学条件和逻辑操作符标达式。 流程控制。 If,for,while等。 函数。 一十五、实验内容 变量练习 #! /bin/sh #Itismyfirstshellscripttotestvariables echoThePATHenviromentvariableis: $PATH echoThePIDis: $$ echoThescriptfilenameis: $0 echoThefirstparameteris: $1 echoThesecondparameteris: $2 echoThethirdparameteris: $3 echoTheIFSenviromentvarableis: $IFS echoThe‘$*’paramentvariableis: “$*” echoThe‘$@’paramentvariableis“$@” userlist=`who` echouserlist|awk‘{printf(“%s%s”,$1,$2)}’ exit0 与脚本交互 #! /bin/sh #MySecondShellScripttotesttheinteractionbetweenuserandScript num=0 while[$num–lt3] do echo–nPleaseEnterYourusername: readusername echo–nPleaseEnterYourPassword readpasswd [$username=‘abcd’–a$passwd=‘1234’]&&{ echoWelcomeToOurSite break } num=`expr$num+1` done [$num–eq3]&&Yourhavebeenfailfor3times,Systemhalt. 显示指定目录中,含有bin字符的文件名 #! /bin/sh if[$#-lt1] then echo-nPleaseaDirectory: readdir else dir=$1 fi if[! -d$dir] then echo$dirisn'tadircoryordon'texist... exit1 fi forfilein$dir/* do ifgrep–qbin$file then echo$file fi done exit0 函数使用 将指定目录中的所有文件备份当前目录 fcp(){ forfilein$1/* do [-f$file]&&{ cp$file./ echo$filehasbeencopied…. } done } whiletrue do echo–n“PleaseEnteraDirectoryname(EnterReturntoexit): ” readdir [-z$dir]&&exit0 If[-d$dir] Then fcp$dir else echoEnterError… fi done exit0 一十六、实验步骤 使用vi编辑器建立Shell脚本文件 #vifilename.sh 使用“chmodu+x脚本文件名”标记脚本文件可执行 #chmodu+xfilename.sh 执行/调试Shell脚本 #./filename 一十七、作业 注释实习中4个shell脚本的每一条语句的功能。 实验四烧写程序Jflash-s3c2410的使用 一、相应的bootloader映像文件 在做HARDWARE和ucosii的实验时要使用Jflash-s3c2410软件、Jflash电缆把 \实验软件\startup_code\hardboot.bin,下载到NANFLASH里。 该文件是一个做HARDWARE和ucosII实验的启动代码。 在做Linux实验时,要使用Jflash-s3c2410软件、Jflash电缆,把/实验软件/vivi,下载到NANFLASH里的,该文件是一个做linux实验的启动代码。 二、用Jflash-s3c2410软件烧写bootloader映像文件 1.注意,必须在linux系统下,把实验软件(syrj)目录下的Jflash-s3c2410文件和vivi、hardboot.bin等文件拷贝到你的linux操作系统的同一个目录下。 2.连接Jflash下载电缆到CPUS3C2410的JTAG接口上以及PC的并口上。 3.在当前目录下的终端输入./Jflash-s3x2410vivi/t=4,如检测到CPU,会出现S3C2410X.....detected的字样。 同理,当做HARDWARE或ucosII实验时,则要首先确认NANDFlash中是否存在hardboot.bin,若没有,则使用./Jflash-s3x2410hardboot.bin/t=4命令来下载到NANDFlash中。 4.上步过后,你会看到三个选择项,输入0,回车 5.再输入一次0,回车。 如果正常的话,会出现Epppppppppp的界面,等待一段时间,待烧写完成。 此时,有提示,输入2即可完成bootloader的下载。 6.下载完之后,断电。 7.若想做linux的实验,则在下载内核和文件系统前,需要先分区。 连接串口线,系统切换到WIDOWS下,配置超级终端(115200,8位数据,1位停止位,无奇偶校验)。 给系统上电,请快速按任意键进入VIVI。 这是因为系统默认的延时时间较短的缘故。 可以在进入到vivi下,使用命令paramsetboot_delay10000000,改变延时时间,之后使用命令paramsave,保存改变的延时时间。 8.启动vivi以后,输入如下命令: vivi>bonpart0128k192k2m14m: m 该命令用于NANDFlash分区,建立好分区以后,不关掉电源或者Reset,立即执行重新下载vivi到板上(否则需要重新使用JFlash下载vivi) 9.利用vivi通过超级终端重新下载vivi vivi命令行下输入: vivi>loadflashvivix 通过超级终端发送文件,选择xmodem协议,发送vivi文件。 点击传送,发送文件出现下图图2-20-1和图2-20-2: 图2-20-1 图2-20-2 之后等待文件传送完成。 以上为下载启动代码的详细步骤。 实验五ARM的I/O接口实验 一、实验目的 1.了解S3C2410的通用I/O接口 2.掌握I/0功能的复用并熟练的配置,进行编程实验 二、实验内容 1.在实验箱的CPU板上点亮LED灯LED1、LED2,并轮流闪烁! 三、实验设备 1.EL-ARM-830+教学实验箱,PentiumII以上的PC机,仿真调试电缆。 2.PC操作系统WIN98或WIN2000或WINXP,ADS1.2集成开发环境, 仿真调试驱动程序。 四、实验原理 S3C2410CPU共有117个多功能复用输入输出口,分为8组端口: ●4个16位的I/O端口(PORTC、PORTD、PORTE、PORTG) ●2个11位的I/O端口(PORTB和PORTH) ●1个8位的I/O端口(PORTF) ●1个23位的I/O端口(PORTA) 这些通用的GPI/O接口,是可配置的,PORTA除功能口外,它们仅用作输出使用,剩下的PORTB、PORTC、PORTD、PORTE、PORTF、PORTG均可作为输入输出口使用。 配置这些端口,是通过一些寄存器来实现的,这些寄存器均有各自的地址,位长32位。 往该地址中写入相应的数据,即可实现功能及数据配置。 GPACON(0x56000000)//PortAcontrol GPADAT(0x56000004)//PortAdata GPBCON(0x56000010)//PortBcontrol GPBDAT(0x56000014)//PortBdata GPBUP(0x56000018)//Pull-upcontrolB GPCCON(0x56000020)//PortCcontrol GPCDAT(0x56000024)//PortCdata GPCUP(0x56000028)//Pull-upcontrolC GPDCON(0x56000030)//PortDcontrol GPDDAT(0x56000034)//PortDdata GPDUP(0x56000038)//Pull-upcontrolD GPECON(0x56000040)//PortEcontrol GPEDAT(0x56000044)//PortEdata GPEUP(0x56000048)//Pull-upcontrolE GPFCON(0x56000050)//PortFcontrol GPFDAT(0x56000054)//PortFdata GPFUP(0x56000058)//Pull-upcontrolF GPGCON(0x56000060)//PortGcontrol GPGDAT(0x56000064)//PortGdata GPGUP(0x56000068)//Pull-upcontrolG GPHCON(0x56000070)//PortHcontrol GPHDAT(0x56000074)//PortHdata GPHUP(0x56000078)//Pull-upcontrolH 现用G口、H口举例说明。 对于G口如表2-5-1、表2-5-2、表2-5-3, 表2-5-1 表2-5-2 表2-5-3 也就是说,在地址0x0x56000060中,给32位的每一位赋值,那么,在CPU的管脚上就定义了管脚的功能值。 当G口某管脚配置成输出端口,则在PDATG对应的地址中的对应位上,写入1,则该管脚输出为高电平,写入0,则该管脚输出为低电平。 若配置为功能管脚,则该管脚变成具体的功能脚。 对于H口见表2-5-4、表2-5-5、表2-5-6、表2-5-7 表2-5-4 表2-5-5 表2-5-6 表2-5-7 也就是说,在地址0x56000070中,给32位的每一位赋值,那么,在CPU的管脚上就定义了管脚的功能值。 当H口某管脚配置成输入端口,则在GPHDAT对应的地址中的对应位上,得到1,则该管脚的输入为高电平,得到0,则该管脚的输入为低电平。 当H口某管脚配置成输出端口,则在GPGDAT对应的地址中的对应位上,写入1,则该管脚输出为高电平,写入0,则该管脚输出为低电平。 若配置为功能管脚,则该管脚变成具体的功能脚。 其他端口配置请参见PDF文挡。 在程序中对GPI/O各寄存器的读写实现,是通过给宏赋值实现的。 这些宏在2410addr.h中定义;具体如: 。 #definerGPACON(*(volatileunsigned*)0x56000000)//PortAcontrol #definerGPADAT(*(volatileunsigned*)0x56000004)//PortAdata #definerGPBCON(*(volatileunsigned*)0x56000010)//PortBcontrol #definerGPBDAT(*(volatileunsigned*)0x56000014)//PortBdata #definerGPBUP(*(volatileunsigned*)0x56000018)//Pull-upcontrolB #definerGPCCON(*(volatileunsigned*)0x56000020)//PortCcontrol #definerGPCDAT(*(volatileunsigned*)0x56000024)//PortCdata #definerGPCUP(*(volatileunsigned*)0x56000028)//Pull-upcontrolC #definerGPDCON(*(volatileunsigned*)0x56000030)//PortDcontrol #definerGPDDAT(*(volatileunsigned*)0x56000034)//PortDdata #definerGPDUP(*(volatileunsigned*)0x56000038)//Pull-upcontrolD #definerGPECON(*(volatileunsigned*)0x56000040)//PortEcontrol #definerGPEDAT(*(volatileunsigned*)0x56000044)//PortEdata #definerGPEUP(*(volatileunsigned*)0x56000048)//Pull-upcontrolE #definerGPFCON(*(volatileunsigned*)0x56000050)//PortFcontrol #definerGPFDAT(*(volatileunsigned*)0x56000054)//PortFdata #definerGPFUP(*(volatileunsigned*)0x56000058)//Pull-upcontrolF #definerGPGCON(*(volatileunsigned*)0x56000060)//PortGcontrol #definerGPGDAT(*(volatileun
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 实验 指导书