电光院-嵌入式实验报告.docx_第1页
电光院-嵌入式实验报告.docx_第2页
电光院-嵌入式实验报告.docx_第3页
电光院-嵌入式实验报告.docx_第4页
电光院-嵌入式实验报告.docx_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

嵌入式系统原理及应用实验报告嵌入式系统原理及应用实验报告组员1:学号:9141042202组员2:学号:9141042202学院:电光学院专业:电子信息指导教师:马超2017 年 06 月 18 日目录实验一 基于 ARM嵌入式系统的 LED以及键盘控制实验2实验目的:2实验设备:2实验内容:2实验步骤:2实验结果:3实验二 Linux C语言开发环境搭建5实验目的:5实验设备:5实验内容:5实验原理:5实验结果:6实验小结:7实验三 嵌入式 Linux内核配置与编译8实验目的:8实验设备:8实验内容:8实验步骤:8实验截图:9实验结论:18实验一 基于 ARM嵌入式系统的 LED以及键盘控制实验实验目的熟悉 ADS开发环境掌握 S3C2440A的个寄存器配置熟悉 C语言编程熟悉 ARM嵌入式系统在不带操作系统情形下的开发流程实验设备l飞凌 TB2440开发板、PC机实验内容建立 ADS开发环境编程实现对开发板上 LED的跑马灯控制编程实现开发板上通过按键控制 LED跑马灯的模式(扩展)实验步骤1安装 ADS开发软件;2将开发板的 USB端口通过 USB数据线与 PC机相连;3将开发板的 USB端口通过 USB数据线与 PC机相连;4安装串口转 USB口数据线的驱动程序;5安装开发板 USB数据传输接口的驱动程序;6安装串口和 USB口数据传送、接收软件;7测试 PC与开发板之间是否可以进行串口和 USB口通信;8在 ADS软件环境下建立 LED跑马灯的工程;9查阅 S3C2440芯片手册的寄存器配置表,编写相应的代码;10设置 ADS软件的编译环境;11.编译程序并生成可执行的镜像文件;12.将镜像文件烧写至开发板,检测程序运行是否正常。USB下载地址要设置为 0x30800000实验结果实验截图:程序代码:#define GPFCON (*(volatile unsigned *)0x56000050)#define GPFDAT (*(volatile unsigned *)0x56000054)#define GPFUP (*(volatile unsigned *)0x56000058)void Delay(int x) int k, j; while(x) for (k=0;k=0xff;k+) for(j=0;j=0xff;j+); x-; int LedMain(void)GPFCON&= 0xffff0000; /清零GPFCON|= 0x1540; /输出有效GPFDAT = (13)|(14)|(15)|(16);/使LED全灭GPFDAT&=0xffe;/关闭蜂鸣器/GPFUP&= 0xffffff1f; /IO上拉使能GPFUP&= 0x00; /IO上拉使能 while (1)/ 死循环GPFDAT = (13);/LED0亮Delay(500);GPFDAT = (14);/LED1亮Delay(500);GPFDAT = (15);/LED2亮Delay(500);GPFDAT = (16);/LED3亮Delay(500);return 0; 实验照片实验二 Linux C语言开发环境搭建实验目的:熟悉ARM-Linux交叉编译环境完成C语言程序的编辑、编译、下载与运行实验设备:l飞凌TB2440开发板、PC机实验内容:安装交叉编译器使用交叉编译器编译程序实验原理:什么是交叉编译:在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,我们就称这种编译器支持交叉编译。这个编译过程就叫交叉编译。简单地说,就是在一个平台上生成另一个平台上的可执行代码。如keil软件,在keil上编译,但在单片机上运行,典型的交叉编译。我们在开发板上运行的程序,是在 PC 机上编译的,所以是交叉编译。交叉编译器交叉编译器就是交叉编译的工具,我们使用的开发板运行的Linux系统内核使用的2.6.12版本,linux2.6.12内核使用的交叉编译器为3.4.1版本。实验步骤:1将 PC 机切换到 Linux 界面,将编译器的压缩包 cross-3.4.1.tar.bz2 拷到Linux系统 /usr/local目录下;拷贝的命令为 # cp -r cross-3.4.1.tar.bz2 /usr/local2用命令对该压缩包进行解压;解压命令为 # tar -jxvf cross-3.4.1.tar.bz23解压后的文件应在/usr/local/usr/local/arm/3.4.1/ 目录下4打开hello.c文件,用C代码写一段简单的应用程序,要求把小组成员名字写进应用程序(可以用拼音代替汉字);5在Linux命令下进入hello.c文件所在的目录,编译程序编译的命令为:# /usr/local/arm/3.4.1/bin/arm-linux-gcc -o hello hello.c6编译成功后可看到新生成的hello文件。注:该交叉编译生成的文件可在开发板上运行,而不能在PC机上运行7 运行超级终端,通过串口把生成的hello文件传到板子/usr/local目录下运行hypertrm.exe文件; “连接时使用”选择相应的串口;波特率为115200,数据控制流选着无开发板上电,选择boot linux 通过命令行,进入开发板linux系统下的 /usr 目录# cd /usr 创建目录test_hello,并进入该目录# mkdir test_hello#cd test_hello 选择传送文件按钮,并找到待发送的文件文件传输完后,通过命令行查看文件是否传输到开发板中 改变文件读写权限#chmod 777 hello 运行该文件内的程序# ./hello实验结果实验小结:交叉编译将编译过程转移到高性能的主机中进行,从而解决了目标系统不能提供足够的资源供编译过程使用,这样的过程可以大大减少目标系统的硬件成本。实验三 嵌入式 Linux内核配置与编译实验目的:l学习如何编译内核。实验设备:l飞凌 TB2440开发板、PC机实验内容:当有了 linux内核源码之后需要交叉编译,因为源码是不能运行的。我们编译的是2.6的内核,采用的交叉编译器为 3.4.1版本。编译命令:make config(基于文本的最为传统的配置界面,不推荐使用)make menuconfig(基于文本选单的配置界面,字符终端下推荐使用)make xconfig(基于图形窗口模式的配置界面, Xwindow下推荐使用)make oldconfig(如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦)这三个命令中,make xconfig的界面最为友好, 但如果你不能使用 Xwindow, 那么就使用 make menuconfig好了。界面虽然比上面一个差点,总比 make config的要好多了。实验步骤:l1.将 Linux2.6.12 文件夹下的内核源码包 linux-2.6.12-090915.tar.bz2拷到 PC机的 Linux系统/home/nust 文件夹下;2.将 linux-2.6.12-090915.tar.bz2源码包进行解压;3.安装 ncurses安装包;4.将 ncurses-6.0.tar.gz拷到 Linux系统/usr/local文件夹下5.使用命令tar zxvf ncurses-6.0.tar.gzcd ncurses-6.0./configuremakemake install这样就安装好了 ncurses,可以使用 make menuconfig命令来配置 linux内核文件。l6.PC机进入 linux-2.6.12路径,在命令行输入如下命令make menuconfigl7.随后根据 linux实验手册 P26页 “配置 CPU”处对 CPU、USB、SD/MMC等设备驱动进行加载,以实现对 linux内核的裁剪。配置完毕后保存退出,在命令行输入命令#make zImage,编译完之后就在linux-2.6.12/arch/arm/boot路径下生成 zImage文件。实验截图:实验结论:为了正确的合理地设置内核编译配置选项,从而只编译系统需要的功能的代码,我们需要对开发板的Linux内核进行配置和编译,主要原因是:(1)自己定制编译的内核运行更快(具有更少的代码)(2)系

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论