资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
嵌入式系统外部设备编程实验实验目的1.了解嵌入式编程库的概念2.熟悉嵌入式中库的分类;3.熟悉嵌入式中动态库的生成与使用;4.熟悉嵌入式中静态库的生成与使用。实验内容将前面章节中学生信息管理系统实验的源码进行改写,把系统中所有的功能函数完成 封装,编译成一个支持 x86 平台的动态库或静态库,编写主函数实现对库中各个功能 函数实现调用,完成学生信息管理系统的全部功能。实验步骤1.构建嵌入式编程库,根文件系统,建立节点并进行挂载,在嵌人式 Linux 系统中混合 使用 Cramfs、YAFFS 和 Ramfs 三种文件系统2.配置内核,将内核对 MTD,Cramfs,YAFFS 以及 Ramfs 文件系统的支持功能编译 进内核。3.选择交叉编译,替代教学平台原根文件系统相应目录,并生成 Cramfs 文件系统,少 些根文件系统。rootBC busybox-1.00-pre10# ls root/bin linuxrc sbin usrbin linuxrc sbin usr cd /arm2410cl/exp/rootfs/root/rm -rf bin/ sbin/ usr/cp -arf /arm2410cl/exp/rootfs/busybox-1.00-pre10/root/* .cd /arm2410cl/exp/rootfs/mkcramfs root root.cramfs4.按照上个实验步骤,编写主函数实现对库中各个功能函数实现调用,完成学生信息 管理系统的全部功能。实验结果通过对嵌入式编程的实践,了解了嵌入式系统的编程,库的分类以及动态库和静态库 的生成和使用,进一步完善对主函数实现对库中各个功能函数实现调用,完成学生信 息管理系统的全部功能。疑难小结1.嵌入式动态库的生成和使用2.开发板的具体连接使用3.交叉编译的使用和代码的编写主要算法和程序清单1 UP-TECH S2410/P270 DVP Linux 文件系统构建方案:11 根文件系统:根文件系统是系统启动时挂载的第一个文件系统,其他的文件系统需要在跟文件系统目录中建立节点后再挂载。UP-TECH S2410/P270 DVP 有一个 64M 大小的 NANDFLASH,根文件系统和用户文件 系统建立在该 flash 的后大半部分。该 flash 的前小半部分用来存放 bootloader 和 kernel 映像。根文件系统选用了 Cramfs 文件系统格式。12用户 YAFFS 文件系统:由于 Cramfs 为只读文件系统,为了得到可读写的文件系统,用户文件系统采用 YAFFS格式。用户文件系统挂载于根文件系统下的/mnt/yaffs 目录。13 临时文件系统:为了避免频繁的读写操作对 Flash 造成的伤害,系统对频繁的读写操作的文件夹采用了 Ramfs 文件系统。根目录下的/var,/tmp 目录为 Ramfs 临时文件系统的挂载点。2. 文件系统构建流程在嵌人式 Linux 系统中混合使用 Cramfs、YAFFS 和 Ramfs 三种文件系统的实现思路 如下:配置内核:将内核对 MTD,Cramfs,YAFFS 以及 Ramfs 文件系统的支持功能编译进内核。划分 Flash 分区:对 Flash 物理空间进行分区,以便在不同的分区上存放不同的数据, 采用不同的文件系统格式;必要时编写 MAPS 文件。今修改系统脚本:在系统启动后利用脚 本挂载文件系统。今创建文件系统镜像文件:利用工具生成文件系统镜像文件,并通过 Flash 烧写工具将镜像文件烧写到 Flash 物理空间。这几个步骤的详细过程如下。2.1 内核配置(运行 make menuconfig)(1) 配置 MTD要使用 Cramfs 和 YAFFS 文件系统,首先需要配置 MTD.在 Memory TechnologyDevices (MTD) -选项中选中如下选项:Memory Technology Device (MTD) support MTD 支持* MTD partitioning support MTD 分区支持Direct char device access to MTD devices 字符设备的支持Caching block device access to MTD devices 块设备支持NAND Flash Device Drivers - 对 NAND Flash 的支持SMC Device SupportSimple Block Device for Nand Flash(BON FS)SMC device on S3C2410 SMDK* Use MTD From SMC(2) 配置文件系统。实验步骤如下:cd /arm2410cl/expmkdir rootfscd rootfs/cp arf /arm2410cl/busybox-1.00-pre10/ /arm2410cl/root/ .cd busybox-1.00-pre10/注:busybox-1.00-pre10 为 busybox 工具源代码,root 为 ARM2410-CL 教学平台的发布版根文件系统内容。a)、配置,安装 busyboxmake menuconfig配置界面如图所示:进行到这一步时注意:General Configuration -* Use the devpts filesystem for Unix98 PTYsBuild Options -* Build BusyBox as a static binary (no shared libs)* Do you want to build BusyBox with a Cross Compiler?选择交叉编译(/opt/host/armv4l/bin/armv4l-unknown-linux-gcc) Cross Compiler prefix 回车将路径改为/opt/host/armv4l/bin/armv4l-unknown-linux-Installation Options - Dont use /usrInit Utilities - 全都不要Login/Password Management Utilities - 全都不要Networking Utilities -* make dep* make* make PREFIX=./root install注意:若 make dep 不起作用,请在 busybox-1.00-pre10/ 目录下用“rm ./.depend” 命令 删除.depend 文件,该文件保存了上次编译的依赖关系编译完后,会在当前目录下生成 root 目录,该目录内容如下:rootBC busybox-1.00-pre10# ls root/bin linuxrc sbin usrbin linuxrc sbin usr 目录中包含了常用到的命令,这些命令可以替代 ARM2410-S 教学 平台的发布版根文件系统相应目录的命令。b)、替代教学平台原根文件系统相应目录cd /arm2410cl/exp/rootfs/root/rm -rf bin/ sbin/ usr/cp -arf /arm2410cl/exp/rootfs/busybox-1.00-pre10/root/* .c)、生成 Cramfs 文件系统cd /arm2410cl/exp/rootfs/mkcramfs root root.cramfsd)、烧写根文件系统(root)(参考2410 经典版快速开始手册 2.0.pdf)启动 viviviviload flash root x 回车当出现 Ready for downloading using xmodem.Waiting.点击超级终端任务栏上“传送”下拉菜单中的“发送文件”,选择好镜像文件 root.cramfs,协议为 Xmodem,点击“发送“ ,8 分钟左右 root.cramfs 烧写完毕;上传附件
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号