搜档网
当前位置:搜档网 › arm开发环境搭建流程.

arm开发环境搭建流程.

arm开发环境搭建流程.
arm开发环境搭建流程.

学院:电子信息学院班级:姓名:学号:指导老师:

ARM开发环境搭建实验流程

经过很多次的实验,还有老师多次的讲解及示范,终于对arm有了初步的了解,对arm交叉开发环境的搭建有了一定的认识,嵌入式Linux是按照嵌入式操作系统的要求而设计的一种小型操作系统。整个开发环境搭建的实验流程记录步骤如下:

一、实验目的

1、熟悉虚拟机 VMware 软件的安装和使用;

2、掌握 Linux 系统软件的安装和使用;

3、掌握交叉编译工具的安装

4、了解 Linux 常用命令的使用及编译过程

二、实验设备

Pentium‖以上的PC机,EL-ARM830+实验箱,Redhat 9.0LINUX操作系统

三、实验步骤

1、安装虚拟机

为了在计算机上运行linux系统,要安装虚拟机,首

先在电脑上找到vmware的安装镜像文件,解压缩文件到linuette文件夹下,安装虚拟机后,还要完成虚拟机与计算机文件的共享,在虚拟机桌面右键点击“网上邻居”,选

择“映射网络驱动器”,在“映射网络驱动器”界面中,把“登陆时重新连接”前面的对勾去掉,以便虚拟机重启时保持与共享文件夹的连接点击“浏览”进入下一步,找到刚才共享的那个文件夹,点“确定”保存,完成映射,现在,在虚拟机上的网络驱动器下可以看到共享的文件夹了至此,完成共享设置,虚拟机可以与主机之间传递文件。

2、安装linux操作系统。

我们做实验得时候,linux系统已经安装完成了,从网上搜到linux系统安装方法,如下:

下载红旗7光盘镜像,把镜像解压到D盘,安红旗linux6.0装grub(或安装dos工具箱),修改menu.lst,增加下面几行内容,title安装红旗7中文版。

root(hd0,4)kernel/isolinux/vmlinuz0root=/dev/sda8roquietliveimgvga=788live_locale= zh_CN.UTF-8initrd/isolinux/initrd0.img保存这个文件后重新启动计算机,选择进入DOS工具箱,然后选择"安装红旗7中文版"

3、

4、在虚拟机上运行linux操作系统,打开.vmx文件。安装交叉编译器。

启动主机,必须以root用户名登录,在主机的根目录下,创建linuette目录,如:mkdir /linuette。在/mnt/cdrom目录下找到光盘,将光盘中/实验软件syrj/tools/目录下的

RPMS文件夹拷贝到/linuette目录下,打开系统工具下的终端,此时,系统将弹出终端框,在里面改变目录到

/linuette/RPMS下,输入如下命令:#rpm-Uvh*.rpm。等待系统安装,如果所有的RPMS内的文件全部正确安装,将会在根目录下的/opt文件夹内生成一个host文件夹,我们所需要的交叉编译库就在该目录下。所以,所需要的交叉编译环境就搭建好了。由于linux系统在编译驱动程序时,可以用模块的形式来动态加载,这样给实验、调试带来了极大的便利,通常的做法是:把编译好的动态模块和应用程序放在主机上的一个共享文件夹内,启动主机的nfs网络文件系统服务,关闭系统的防火墙服务,用交叉以太网把主机和试验系统连接,在终端下启动minicon,在试验系统起来之后,利用ifconfigeth0192.168.0.x命令改变实验系统的ip地址,让该地址的前三段和主机的前三段一致,最后的一段,可以选择和主机不重复的小于255的任意值。之后把主机上的共享文件夹挂载到实验系统上的一个目录上。通过相应的命令进行实验或调试。

5、配置NFS网络文件系统。

首先在linux主机的终端上执行setup,弹出菜单界面后,选中:Firewall configuration,回车,进入选项菜单,选

择NO FIREWALL关闭防火墙。之后选中:System services,回车,进入选项菜单,在其中选中[*]nfs,然后按F12键退出,再选择方向键退出setup界面。

运行:gedit/etc/exports命令设置共享目录,目录设置为/home/nfs

192.168.0.*(rw,sync,no_root,squash)。再改变目录的属性,输入命令:chmod 777 /home/nfs。运行端口映射,输入命令:service portmap start。运行NFS,输入命令:service nfs start。这样就一切都好了,主机linux下的NFS启动起来。

6、配置IP。

Linux系统IP配置,在终端中输入命令:ifconfig eth0 192.168.0.2。设置XP系统的IP为:192.168.0.1。设置:虚拟机/以太网连接为桥接。

之后,用命ping 192.168.0.1和ping 192.168.0.2进行XP系统与Linux系统之间的通信。

连接Linux系统与实验系统。在终端中运行命令:minicom -s。配置minicom为波特率为115200,无奇偶校验,8bit。之后在minicom下给系统上电,用命令:ifconfig eth0 192.168.0.3改变实验系统的IP地址。用命令ping 192.168.0.1和ping 192.168.0.3进行通信。

7、文件挂载。

在终端中输入命令:mount -t nfs 192.168.0.2:/home/nfs

/mnt/yaffs/回车,完成把主机上的/home/nfs下的文件挂载到实验系统的/mnt/yaffs 目录下。运行命令:cd /mnt/yaffs/进入目录。命令:ls打开目录。

使用挂载驱动模块的命令:insmod Lcd_driver.o加载驱动模块。

使用mknod /dev/S3C2410LCD c 60 0创建设备文件。输入命令: ./app_Lcdd运行app_Lcdd。

四、实验过程截图

五、实验心得

这次arm的课程,实验课比教室上课的次数多,由于初次接触嵌入式系统,整体感觉是很难的,学的时候没有下劲学,所以收获不是很大,很多的概念都比较模糊,经过这很多次的实验,才对ARM有了一定的了解,对ARM开发环境的搭建的整个流程有了具体的认识,虽然实验的时候没做出来,但是由于老师要求的比较严厉,写报告的时候又对实验的整个过程进行了从头至尾的认真思考,算是有了一些提高,通过本次实验,我也学会了如何去分析问题,继而去排除解决问题,这就是一个自我学习的过程,例如:在终端上的很多操作命令我们都不知道,都是从网上查过之后再做的,当我们通过实验后再去学习理论知识时,就会有侧重点,知道哪些东西是要用到的,不仅能加深我们对嵌入式的理解,更能加深我们对开发环境搭建流程的熟悉,当然,在这其中,我也发现自己的许多不足之处,由于学期伊始我没有好好学习,才落到如此地步,让老师对我很失望,这也可以说是一个教训吧!我相信在以后的学习工作中,我一定会端正自己的学习态度,一丝不苟的去对待每一件事。只有做好足够的准备,才能在解决问题的时候不出现严重卡壳的现象,以后一定会注意的。

ARMlinux嵌入式开发环境安装参考手册

基础是你已经安装了Ubuntu,以及相关软件:超级终端minicom 及C/C++ compiler environment。在Ubuntu上可使用下面终端命令安装 minicoom和编译环境。 #sudo apt-get install minicom #sudo apt-get install build-essential Step 1: 将光盘Linux 目录中的arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz 复制到Lubuntu的当前目录下,执行解压命令: #sudo tar xvzf arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz –C / 注意:C 后面有个空格,并且 C 是大写的,它是英文单词“Change”的第一个字母,在此是改变目录的意思。 这样 arm-linux-gcc 的相关文件就Copy到root用户的Opt目录中 Step 2: 把编译器路径加入系统环境变量,运行命令 #sudo gedit ~/.bashrc 编辑~/.bashrc 文件, 注意“ bashrc ” 前面有一个“ . ” ,修改最后一行为 export PATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/bin 注意路径一定要写对,否则将不会有效。 如图,保存退出。

入arm-linux-gcc –v,会出现如下信息,这说明交叉编译环境已经成功安装。

编译链接 arm-qte-4.7.0 1) 解压包到自己制定的目录,例如 arm-qte-4.7.0 2) 终端中运行 ./build-all (首先,注意不能双击运行,必须在终端中运行;其次,不使用 sudo) 大约要安装2个小时 当运行到出现如下提示后: cd src/tools/bootstrap/ && make -f Makefile install make[1]: 正在进入目录`/home/administrator/arm-qte-4.7.0/qt-everywhere-opensource-src-4.7.0/src/tools/bootstrap' make[1]: 没有什么可以做的为 `install'。 make[1]:正在离开目录`/home/administrator/arm-qte-4.7.0/qt-everywhere-opensource-src-4.7.0/src/tools/bootstrap' cd src/tools/moc/ && make -f Makefile install make[1]: 正在进入目录`/home/administrator/arm-qte-4.7.0/qt-everywhere-opensource-src-4.7.0/src/tools/moc' mkdir: 无法创建目录“/usr/local/Trolltech”: 权限不够 make[1]: *** [install_target] 错误 1 make[1]:正在离开目录`/home/administrator/arm-qte-4.7.0/qt-everywhere-opensource-src-4.7.0/src/tools/moc' make: *** [sub-moc-install_subtargets-ordered] 错误 2 ./build-all: 第 12 行: cd: /usr/local/Trolltech/QtEmbedded-4.7.0-arm: 没有那个文件或目录 在终端中运行: cd qt-everywhere-opensource-src-4.7.0 sudo make install 加入环境变量(步骤类似Step2,在最后一行再加入) #sudo gedit ~/.bashrc export PATH=$PATH: /usr/local/Trolltech/QtEmbedded-4.7.0-arm/bin

实验三 搭建嵌入式系统开发环境

实验三搭建嵌入式系统开发环境 一、实验目的: 1.掌握嵌入式开发环境的配置; 2.掌握开发工具链的安装与配置; 3.掌握嵌入式系统内核和根文件系统的烧写的过程。 二、实验内容: 1)安装配置嵌入式开发环境; 2)安装与配置工具链; 3)内核和根文件系统的烧写 三、实验设备及工具: 硬件:UP-NETARM2410-S嵌入式实验仪、PC机pentumn500以上、硬盘40G以上、内存大于256M。 软件:PC机操作系统Red Hat Enterprise Linux 4、MINICOM 、AMRLINUX开发环境。 四、实验步骤: 1.共享windows下内核文件至linux环境下,并将文件复制至个人开发目录中 2.进入目录,输入make menuconfig,对内核进行裁剪配置 3.编译内核之前输入make clean清理编译环境 4.输入make dep 编译相关依赖文件 5.输入make zImage 输出最终编译后的镜像文件 6.将镜像文件共享至windows环境下 7.在windows打开超级终端,进入vivi,将镜像文件烧录至实验箱开发板中 五、实验总结: 通过本次实验,熟悉了Linux 开发环境,学会了如何进行linux内核的烧写。在实验

过程中了解到Linux内核模块的组成结构,通过本次实验,初步了解嵌入式开发的基本过程。 实验四嵌入式驱动程序设计 一、实验目的: 1.学习在LINUX 下进行驱动设计的原理 2.掌握使用模块方式进行驱动开发调试的过程 二、实验内容: 在PC 机上编写简单的虚拟硬件驱动程序并进调试,实验驱动的各个接口函数的实现,分析并理解驱动与应用程序的交互过程。 三、实验设备及工具: 硬件:UP-NETARM2410-S嵌入式实验仪、PC机pentumn500以上、硬盘40G以上、内存大于256M。 软件:PC机操作系统Red Hat Enterprise Linux 4、MINICOM 、AMRLINUX开发环境。 四、预备知识: 1.有 C 语言基础。 2.掌握在Linux 下常用编辑器的使用。 3.掌握Makefile 的编写和使用。 4.掌握Linux 下的程序编译与交叉编译过程。 5.有驱动开发的基本知识。 五、实验步骤: 1.进入/arm2410cl/exp/drivers/01_demo,使用vi 编辑器或其他编辑器阅读理解源代码 2.使用makefile编译驱动模块与测试程序,编译器采用armv4l-unknown-linux-gcc 3.将编译后的驱动模块demo.o和测试程序test_demo挂载到实验箱上 4.插入驱动模块demo.o 执行命令insmod demo.o 5.查看驱动是否插入成功,执行命令lsmod demo.o 6.运行测试程序,查看执行结果

嵌入式Linux开发环境搭建

第一章Ubuntu 8.10的安装和网络配置 1.安装虚拟机软件Vmware 6.0.2 虚拟机安装版本Vmware 6.0.2的版本 在winxp操作系统下用鼠标双击VMware-workstation-6.0.2-59824图标,开始安装虚拟机Vmware,如下图所示: 双击VMware-workstation-6.0.2-59824图标,出现vmware的安装界面,所有的选项都采用默认值,用鼠标点【下一步】,然后出现安装进度条,系统开始安装vmware,等待安装完成后,出现如下安装完成界面: 用鼠标点【Finish】,虚拟机安装完成。系统提示重新启动计算机,选择【是】重新启动计算机,电脑重新启动后,虚拟机安装完成。 2.新建虚拟机 打开Vmware虚拟机软件,选【File】->【New】->【Virtual Machine】,弹出新建虚拟机向导对话框,注意以下几个重要的选项,其他都采用默认选项即可。 选择操作系统和版本,如下图所示:

选择虚拟机名称和存放的路径,如下图所示: 设置虚拟机硬盘大小为20G ,如下图所示:

点击【完成】按钮,这样我们就新建了一个虚拟机,下面我们设置一下虚拟机的内存,步骤如下: 点击虚拟机Vmware的【VM】->【settings】时菜单,弹出虚拟机设置对话框,设置虚拟机使用的内存为512M或1024M,如下图所示:

点击【OK】按钮,这样我们就新建了一个虚拟机,该虚拟机的硬盘为20G, 内存为512M .接着我们就可以在该虚拟机上安装ubuntu操作系统了。 注: 键盘和鼠标控制权在虚拟机和Windows系统之间的切换是通过组合键【Ctrl】+【Alt】来实现的。 3 安装Linux操作系统ubuntu Ubuntu安装版本ubuntu 8.10 点击vmware软件工具栏上的【绿色箭头】启动虚拟机,如下图所示:

建立嵌入式linux开发环境实验

嵌入式linux开发环境的建立 一、创建文件:vi hello.c如下: 二、安装交叉编译器: arm-linux-gcc-3.4.6-glibc-2.3.6.tar 步骤1、把交叉编译链考贝到任意目录下,并解压:tar zxvf arm-linux-gcc-3.4.6-glibc-2.3.6.tar –C / 2、把以上路径添加到/etc/profile文件的最后:export PATH=$PATH:/gcc-3.4.6-glibc-2.3.6/arm-linux/bin 3、输入命令使环境变量立即生效:source /tec/profile 4、测试是否安装成功:arm-linux-gcc–v 如果显示版本号,则安装成功。 5、编译C文件:arm-linux-gcc hello.c–o hello 三、配置tftp服务步骤

1、检查系统有无安装包:用命令:rpm –aq | grep tftp,如有安装包的版本号,说明系统已有相应的安装包; 2、配置服务器,打开文件:vi /etc/xinetd.d/tftp,显示如下桌面service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot disable = yes } 然后编辑将disable改为no,其他不变 3、重启xinetd服务:service xinetd restart, 停止 xinetd: [ 确定 ] 启动 xinetd: [ 确定 ] 4、输入如下命令:netstat –a | grep tftp,如果出现如下画面

Fedora10下搭建ARM开发环境QTE及移植过程

Fedora10下搭建ARM开发环境QTE及移植过程 QT 2010-09-09 17:40:48 阅读311 评论0 字号:大中小订阅 说明:之前也做过QTE的安装及移植,参考网上很多例子,大部分采用的是友善之臂开发板提供的 arm-linux-g++ 4.3.2编译器,这样在运行Qt可执行程序的时候经常会遇到一个致命问题就是:Segmentation Fault(段错误)而采用arm920t-eabi.tgz可以解决段错误问题,本次移植主要采用arm920t-eabi.tgz编译器。 一、安装环境: 系统平台:Fedora 10,内核2.6,图形界面 二、软件需求及下地地址: Qt版本qt-everywhere-opensource-src-4.6.2.tar.gz 下载地址:https://www.sodocs.net/doc/a98329462.html,/downloads-cn 编译器:arm920t-eabi.tgz(即arm-linux-gcc-4.1.2) 下载地址: https://www.sodocs.net/doc/a98329462.html,/downloads/toolchains/arm920t-eabi.tgz 触摸屏软件:tslib1.4 下载地址:略 三、环境安装过程: 1、安装arm920t-eabi.tgz

然后直接将arm920t-eabi.tgz解压缩到根目录,把编译器路径加入系统环境变量,以便编译时找到相关的库,运行命令: #gedit /root/.bashrc 编辑/root/.bashrc文件,在最后一行加上 # export CPLUS_INCLUDE_PATH=/opt/toolchains/ arm920t-eabi/arm-angstrom-linux-gnueabi/include/c++:/opt/toolchain s/arm920t-eabi/arm-angstrom-linux-gnueabi/include/c++/arm-none-li nux-gnueabi #export PATH=/opt/toolchains/arm920t-eabi/bin:$PATH 2、编译tslib对触摸屏支持下载,tslib1.4.tar.gz,解压到根目录后,运行autogen.sh后生成configure文件。 # ./configure --prefix=/usr/local/tslib/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes # make # make install 3、qt-everywhere-opensource-src-4.6.2安装及配置 将qt-everywhere-opensource-src-4.6.2.tar.gz解压到/opt/目录下得到文件qt-everywhere-opensource-src-4.6.修改 qt-everywhere-opensource-src-4.6.2/mkspecs/qws/linux-arm-g++/qm ake.conf 文件(添加lts参数): QMAKE_CC = arm-linux-gcc -lts QMAKE_CXX = arm-linux-g++ -lts

实验三(ARM编程环境的熟悉及寻址方式实验)

实验三ARM编程环境熟悉及寻址方式实验 注意:本实验在模拟环境下进行!! 一、实验目的: 1、进一步熟悉ARM的编程工具MDK; 2、深刻理解ARM汇编指令中标号的本质; 3、熟悉ARM寻址方式(寄存器寻址、寄存器间接寻址等); 二、实验步骤: 1、参照实验二的步骤,建立工程exp 2、设置工程、建立源文件 exp2.s并将其添加到工程,在exp2.s中输入如下代码(可复制):;广州大学华软软件学院 ;文件名:exp2.s ;功能: ;作者: ;日期: ;修改: area init,code,readonly entry ldr r0,=data1;将标号data1的值送给r0 ldr r1,=data2; ldr r2,=data3 ldr r0,[r0]

ldr r1,[r1] add r0,r0,r1 str r0,[r2] b .;相当于while(1) data1 dcd 12;定义一个字,初值为12 data2 dcd 13;定义一个字,初值为13 data3 dcd 0;定义一个字,初值为0 end 2、编译正确后调试(可参照实验二),注意Ro_Base设置为 0x30000000,点击下图菜单中的菜单项,调出内存单元观察窗口。

会弹出如下界面:

点击current,就会看到当前模式下的寄存器 按F10进行单步调试,同时观察寄存器中的变化; 反汇编界面: 出现如下界面:鼠标右键,如图选中,即可看到源代码的反汇编窗口。

我们发现data1代表的地址是0x30000020,data2代表的地址是0x30000024,data3代表的地址是0x30000028。好,我们现在通过memory窗口来查看这些内存单元的内容: 在存储单元窗口输入0x30000020(如下图所示),观察存储单元中的 值,是不是我们程序所运行的结果呢?

嵌入式开发环境搭建步骤

嵌入式开发,通常都是在Linux环境下编译Uboot、Linux和android代码。编译uboot/Linux可以选择任何的Linux发行版,如redhat,suse,ubuntu,fedora,debian等,只要你配置好ARM交叉工具编译工具就可以了。 编译android,搭建环境最容易的就是ubuntu。google的官方网站上,也有搭建编译android的简单介绍,可以搜索下,网络上有相当多这方面的说明。 考虑到我们学习嵌入式的平台是Fast Models,以及自动的Realview EB模型硬件平台。而ARM官方推荐是在Redhat Enterprise(4,5,6)下安装Fast Models。所以,我们采用Redhat Enterprise 6作为开发环境。我们可以直接在电脑上安排RHEL6,也可以先安装vmware,然后在vmware中创建一个虚拟机,在虚拟机上安装RHEL6。在这里,小编是采用后者方式。 搭建Redhat Enterprise 6开发环境,建议做以下配置: 1)设置静态IP。在之前使用vmware的经历,发现如何网站采用dhcp方式,那么rhel6的IP地址有可能会发现改变。而我们需要网络IP最好是固定的,所以需要设置静态IP。RHEL6的静态IP的设置方法,可以搜索到。 2)开启ssh,samba服务 ARM嵌入式开发,基本上都是在命令(shell)方式下进行的,不需要图形界面。所以,在windows上运行vmware,vmware上虚拟机再运行rdel6的情况下,为了不增加windows系统的负荷,可以把vmware放在后台运行,使用ssh服务登陆到rdel6就可 以进行嵌入式开发了。 小编在开发嵌入式时,通常都是使用sourceinsight阅读、修改代码,然后在shell运 行命令进行编译。所以,开通samba服务,然后使用windows已安装的sourceinsight 工具,阅读放在rdel6上的Linux/uboot代码。 在Redhat发行版下,有关服务器的开启或关闭,可以在root用户下,使用setup命 令进入配置选项的“System Services”菜单下进行设置。 samba服务在菜单选项为:“smb”;ssh服务在菜单选项为:“sshd” 需要注意的是:windows下,要使用ssh服务/samba服务登陆vmware虚拟机上的rhel6,必须把rhel6上的防火墙关掉。setup命令--->Firewall Configuration--->去掉Enable。

ARM开发环境搭建 eclipse for arm实验报告

实验报告 实验题目 ARM开发环境搭建 eclipse for arm 姓名: 学号: 课程名称: 所在学院: 专业班级: 任课教师:

一、实验目的与要求: 1、掌握 ARM 汇编语言的基本使用和一些伪指令的使用; 2、熟悉 eclipse 开发工具建立汇编工程和仿真;

四、实验过程、步骤及内容 1、win7环境安装FS_JTAG工具 (1)安装GCC 编译工具 双击安装“华清远见-CORTEXA9 资料\工具软件\Windows\FS-JTAG\Yagarto 工具包”目录下的文件:yagarto-bu-2.21_gcc-4.6.2-c-c++_nl-1.190_gdb-7.3.1_eabi_20111119.exe (2)装Yagarto 工具包 双击安装“华清远见-CORTEXA9 资料\工具软件\Windows\FS-JTAG\Yagarto 工具包”目录下的文件:yagarto-tools-20100703-setup.exe (3)安装FS_JTAG调试软件 双击“x包”下的setup.exe安装 FS_JTAG工具 (4)安装FS_JTAG驱动

将FS_JTAG通过USB线与PC连接,右键点击“我的电脑”选择“管理”,在左侧栏里选择“设备管理”选择“其他设备”右键点击选择“更新驱动” 选择“浏览计算机以查询驱动程序软件(R)”; 点击浏览选择“FS-JTAG 调试工具(安装包)\DRIVER”目录主要“包括子文件夹”必须选择,点击“下一步”。 安装过程出现上图提示,点击“始终安装此驱动程序软件(I)“继续安装

点击“关闭“完成安装 注意:此安装过程需要进行 3 次,直到设备管理器中没有叹号标记或未知设备。这是设备管理器中会出现如下选项:如果下面选项没有全部出现,右键点击有黄色叹号的选项更新驱动,过程同上。 (5)安装JRE 双击安装“华清远见-CORTEXA9 资料\ 工具软件\Windows\FS-JTAG\JRE ”目录下的文件: jre-6u7-windows-i586-p-s.exe

实验1(嵌入式开发环境实验)

实验1:嵌入式Linux开发环境 一、实验目的 熟悉Linux开发环境,学会基于S3C2410的Linux开发环境的配置和使用。使用Linux的armv4l-unknown-linux-gcc编译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程。 二、实验内容 1、在linux系统下,利用C语言来编写应用程序,并进行交叉编译,生成可在目标实验台上运行的目标文件。 2、建立宿主机与目标实验台仿真终端连接,为目标实验台建立Linux系统终端窗口。 3、建立宿主机与目标实验台的共享连接,以便下载和运行最终可执行文件。 三、预备知识 C语言的基础知识、程序调试的基础知识和方法,Linux的基本操作。 四、实验设备及工具(包括软件调试工具) 硬件:UP-NETARM2410-S嵌入式实验平台、PC机Pentium 500以上, 硬盘10G以上。 软件:PC机操作系统REDHAT LINUX 9.0+MINICOM+ARM-LINUX开发环境 五、主要实验步骤: 1、打开PC宿主机电源,选择进入Linux系统。在PC宿主机的/arm2410s/exp/Basic目录中创建用户个人工作目录,例如“cao”。 2、单击鼠标右键选择“新建终端”,建立宿主机Linux命令终端窗口,在[root@localhost root]#命令提示符下进入个人工作目录“cao”中。 即:[root@localhost root]#cd /arm2410s/exp/basic/cao 3、利用“vi”编辑hello应用程序,并保存为hello.c文件。 即:#cd /arm2401s/exp/Basic/cao #vi hello.c 进入vi编辑窗口,编辑hello.c文件…… 4、利用“gcc –o”命令对hello.c文件进行编译,生成可在PC宿主机上执行的目标文件hello.pc。 即:#gcc –o hello.pc hello.c, 为了验证结果正确性,可在PC宿主机上执行hello.pc文件。 即:#./hello.pc 5、为了在实验台上下载运行hello文件,需要对hello源文件进行交叉编译,以便生成能够在实验台上运行的目标文件。利用“armv4l-unknown–Linux-gcc –o命令”进行交叉编译,生存目标文件hello.o。 即:# armv4l-unknown-Linux-gcc -o hello.o hello.c (注意:这里的“armv4l-unknown–Linux-gcc –o”交叉编译命令输入方法是使用键盘输

ARM实验报告

湖南科技学院ARM嵌入式设计实验报告题目:基于ARM嵌入式系统跑马灯的设计 专业:电子信息工程 班级:电信1102班 姓名:段相辉 学号:201106002232 指导教师:陈光辉 2014年11 月

目录 摘要............................................. 错误!未定义书签。ABSTRACT .......................................... Ⅰ错误!未定义书签。 1 题目要求 (1) 2 设计软件的安装 (2) 3 开发平台的搭建 (22) 4 项目设计 (23) 4.1 设计思路概述 (2) 4.1.1 设计层次介绍 (2) 4.1.2 设计模块介绍 (3) 5总结 (6) 致谢 (25) 参考文献 (26) 附录 (27)

引言 随着生活水平的提高和IT技术的进步,8位处理器的处理能力已经不能满足嵌入式系统的需要了;而16位处理器在性能和成本上都没有很大的突破。并且在8位机的开发中,大多使用汇编语言来编写用户程序。这使得程序的可维护性、易移植性等都受到了极大的挑战。正是基于此,ARM公司适时的推出了一系列的32位嵌入式微控制器。目前广泛使用的是ARM7和ARM9系列,ARM7TDMI内核的ARM7处理器广泛应用于工业控制、仪器仪表、汽车电子、通讯、消费电子等嵌入式设备。

1、题目要求 构建嵌入式Linux开发环境,熟悉linux的命令操作,并在嵌入式Linux 开发环境中设计跑马灯。 2、设计软件的安装 2.1 VMware Player简介 (a) VMware Workstation是一个“虚拟机”软件.它使用户可以在一台机 器上同时运行多个操作系统. (b) VMware Player是VMware Workstation的精简版,最初只是虚拟机的“播放机”, 但最新版本的已经具有创建虚拟机的功能.具有体积小,使用灵活,免费等特点. (c) 多个操作系统在主系统的平台上,可像Windows应用程序那样切换.而且每个操作系统都可以进行虚拟的分区、配置而不影响真实硬盘的数据. (d) 利VMware Player创建虚拟机

嵌入式软件开发流程图

嵌入式软件开发流程 一、嵌入式软件开发流程 1.1 嵌入式系统开发概述 由嵌入式系统本身的特性所影响,嵌入式系统开发与通用系统的开发有很大的区别。嵌入式系统的开发主要分为系统总体开发、嵌入式硬件开发和嵌入式软件开发3大部分,其总体流程图如图1.1所示。 图1.1 嵌入式系统开发流程图 在系统总体开发中,由于嵌入式系统与硬件依赖非常紧密,往往某些需求只能通过特定的硬件才能实现,因此需要进行处理器选型,以更好地满足产品的需求。另外,对于有些硬件和软件都可以实现的功能,就需要在成本和性能上做出抉择。往往通过硬件实现会增加产品的成本,但能大大提高产品的性能和可靠性。 再次,开发环境的选择对于嵌入式系统的开发也有很大的影响。这里的开发环境包括嵌入式操作系统的选择以及开发工具的选择等。比如,对开发成本和进度限制较大的产品可以选择嵌入式Linux,对实时性要求非常高的产品可以选择Vxworks等。

1.2 嵌入式软件开发概述 嵌入式软件开发总体流程为图4.15中“软件设计实现”部分所示,它同通用计算机软件开发一样,分为需求分析、软件概要设计、软件详细设计、软件实现和软件测试。其中嵌入式软件需求分析与硬件的需求分析合二为一,故没有分开画出。 由于在嵌入式软件开发的工具非常多,为了更好地帮助读者选择开发工具,下面首先对嵌入式软件开发过程中所使用的工具做一简单归纳。 嵌入式软件的开发工具根据不同的开发过程而划分,比如在需求分析阶段,可以选择IBM的Rational Rose等软件,而在程序开发阶段可以采用CodeWarrior(下面要介绍的ADS 的一个工具)等,在调试阶段所用的Multi-ICE等。同时,不同的嵌入式操作系统往往会有配套的开发工具,比如Vxworks有集成开发环境Tornado,WindowsCE的集成开发环境WindowsCE Platform等。此外,不同的处理器可能还有对应的开发工具,比如ARM的常用集成开发工具ADS、IAR和RealView等。在这里,大多数软件都有比较高的使用费用,但也可以大大加快产品的开发进度,用户可以根据需求自行选择。图4.16是嵌入式开发的不同阶段的常用软件。 图1.2 嵌入式开发不同阶段的常用软件 嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分,其中又可以分为编译和调试两部分,下面分别对这两部分进行讲解。 1.交叉编译 嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。在第3章中已经提到,编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指令系统。因此,不同的CPU需要有相应的编译器,而交叉编译就如同翻译一样,把相同的程序代码翻译成不同CPU的对应可执行二进制文件。要注意的是,编译器本身也是程序,也要在与之对应的某一个CPU平台上运行。嵌入式系统交叉编译环境如图4.17所示。

ARM ads1.2开发环境的搭建&使用

ARM开发环境的搭建 安装平台(ads_1.2(arm 开发工具).iso,目前存放在D:\汇文\arm\工具及软件),在windows下安装。 步骤1:双击打开:ads_1.2(arm 开发工具).iso-》双击setup.exe,此软件安装完成后需要注册,注册文件在ads_1.2(arm 开发工具).iso中的crack文件夹的license.dat中,将此文件导入完成后即安装完毕。步骤2:打开AXD进行配置 (1): 点击进入(2):

(3) (4):ADD 完成后点击进入 configure

(5)先选择TCP/IP,然后填入127.0.0.1的本地回环,过后还要修改回来。进入JTAG,修改JTAG为4800KHZ;

(6)完后后会提示出错,

(7)完成以上步骤后保存设置:file-》save session (保存地址最好在根目录下,最好不要有中文(目前我的安装版本保存在:D:\AXD_session 下;)) (8)以上完成后开始OXD-》option-》configure interface ,导入完成

后从新保存并覆盖上一步的保存信息。下次使用的时候需要将这些保存信息导入才能使用。以上过程可打开jlink的GDB工具,用于监视单板的连接情况。(打开SEGGER->jlink GDB) (9)完成以上步骤后,开始进入《metroworks codewarrior for ARM Developer suite v1.2》进行设置 1.首先在file 内open一个已经ok的程序(在D:\AXD_session\YC2440_LED中的YC2440_LED.mcp),进入以下界面: 备注:metroworks codewarrior for ARM Developer suite v1.2同AXD 的关系,metroworks codewarrior for ARM Developer suite v1.2用于编 辑,AXD用于调试

嵌入式系统开发环境实验

嵌入式系统开发环境实验 一实验目的与要求 1.熟悉Linux系统环境。 2.了解实验板的结构组成。 3.了解嵌入式系统开发的基本知识。 4. 熟悉嵌入式Linux交叉编译环境的建立过程,并通过一个HelloWorld程序的编写、编译、下载运行及调试过程,了解嵌入式开发的基本方法和流程。 二实验设备与软件环境 1.硬件:SemitARM9200开发板,PC机PIII800MHz,256MB以上,串口线(公母)1条,网线1条,7.5V 电源1个。 2.软件:RedHat 9.0以上Linux操作系统. 三实验原理 1.宿主机开发环境 绝大多数的Linux软件开发都是以Native方式进行的,即本机(Host)开发、调试,本机运行的方式。这种方式通常不适合于嵌入式系统的软件开发,因为嵌入式系统没有足够的资源在本机(即板子上系统)运行开发工具和调试工具。通常的嵌入式系统的软件开发采用一种交叉编译调试的方式,交叉编译调试环境建立在宿主机(即一台PC机)上,对应的开发板叫做目标板。如下图所示。 开发时使用宿主机上的交叉编译、汇编及链接工具形成可执行的二进制代码,(这种可执行代码不能在宿主机上执行,而只能在目标板上执行)然后把可执行文件下载到目标机上运行。一般调试的方法包括串口调试和以太网口调试。对于本实验板,目前可采用串口调试,操作系统经过修改可以实现以太网口调试。宿主机和目标板的处理器一般都不相同,宿主机为Intel或AMD处理器,而目标板如本实验板的处理器为ATMEL AT91RM9200 。GNU编译器提供这样的功能,在编译时可以选择开发所需的宿主机和目标机从而建立开发环境。所以在进行嵌入式开发前第一步的工作就是要安装一台装有指定操作系统的PC机作宿主开发机,宿主机上的操作系统一般要求安装Linux,但Linux由多个发行版本,在此,我们推荐使用Redhat 9.0作为本实验板的宿主机PC操作系统(https://www.sodocs.net/doc/a98329462.html,可以下载)。然后要在宿主机上建立交叉编译调试的开发环境。环境的建立需要许多的软件模块协同工作,这将是一个比较繁杂的工作,但现在只要安装我们提供的光盘,开发软件包及GNU编译工具已完全自动完成了。 当开发环境安装完毕后,会在根目录下生成两个目录:工作目录/home/arm和交叉编译环境目录/usr/local/arm。

ARM的嵌入式Linux应用程序开发设计

ARM的嵌入式Linux应用程序开发设计 嵌入式系统已经渗透到人们工作、生活中的各个领域,嵌入式处理器已占分散处理器市场份额的94%。而嵌入式Linux系统也蓬勃发展,不仅继承了Linux 源码开放、内核稳定高效、软件丰富等优势,还具备支持广泛处理器结构和硬件平台、占有空间小、成本低廉、结构紧凑等特点。1ARM处理器及开发板在嵌入式领域,ARM已取得了极大的成功,造就了IP核商业化、市场化的神话。据统计,全球有103家巨型IT公司在采用ARM技术,20家最大的半导体,一 嵌入式系统已经渗透到人们工作、生活中的各个领域,嵌入式处理器已占分散处理器市场份额的94%。而嵌入式Linux系统也蓬勃发展,不仅继承了Linux源码开放、内核稳定高效、软件丰富等优势,还具备支持广泛处理器结构和硬件平台、占有空间小、成本低廉、结构紧凑等特点。 1 ARM处理器及开发板 在嵌入式领域,ARM已取得了极大的成功,造就了IP核商业化、市场化的神话。据统计,全球有103家巨型IT公司在采用ARM技术,20家最大的半导体,一商中有19家是ARM的用户。ARM系列芯片已经被广泛的应用于移动电活、手持式计算机以及各种各样的嵌入式应用领域,成为世界上销量最大的32位微处理器。ARM已成为业界实际的RISC芯片标准。 ARM系列处理器根据各自特点应用于不同领域。从应用的角度上ARM芯片选择的一般原则:MMU;处理器速度;内置存储器容量;USB接口;GPIO数量;中断控制器;IIS(integrate interface ofsound)音频接口;nWAIT信号; RTC(real timeclock);LCD控制器;PWM输出等各项指标。 本文使用的是ARM9,其性能远远高过ARM7。开发板使用的是广州斯道信息技术有限公司的开发板,中央处理器是三星公司的S3C2410。ARM9具有以下特点:5级流水线;采用哈佛结构;高速缓存和写缓存的引入;支持MMU。 2 嵌入式Linux系统 嵌入式操作系统是嵌入式应用软件的基础和开发平台,它的出现解决了嵌入式软件开发标准化的难题。嵌入式系统具有操作系统的最基本的功能。目前主流的嵌入式系统有以下儿种:Linux、VxWorks、QNX、Windows CE、Palm OS。 嵌入式Linux操作系统具有一些独特的优势:层次结构及内核完全开放;强大的网络支持功能;具备一整套工具链;广泛的硬件支持特性。 嵌入式Linux系统有很多种。本文使用的是Red Hat9操作系统。 在安装有Windows和Linux双系统的PC上,系统会以Linux的GRUB作为引导装入器来选择启动二者。此时若直接删除Linux分区,会导致系统无法启动

嵌入式Linux应用软件开发流程

从软件工程的角度来说,嵌入式应用软件也有一定的生命周期,如要进行需求分析、系统设计、代码编写、调试和维护等工作,软件工程的许多理论对它也是适用的。 但和其他通用软件相比,它的开发有许多独特之处: ·在需求分析时,必须考虑硬件性能的影响,具体功能必须考虑由何种硬件实现。 ·在系统设计阶段,重点考虑的是任务的划分及其接口,而不是模块的划分。模块划分则放在了任务的设计阶段。 ·在调试时采用交叉调试方式。 ·软件调试完毕固化到嵌入式系统中后,它的后期维护工作较少。 下面主要介绍分析和设计阶段的步骤与原则: 1、需求分析 对需求加以分析产生需求说明,需求说明过程给出系统功能需求,它包括:·系统所有实现的功能 ·系统的输入、输出 ·系统的外部接口需求(如用户界面) ·它的性能以及诸如文件/数据库安全等其他要求 在实时系统中,常用状态变迁图来描述系统。在设计状态图时,应对系统运行过程进行详细考虑,尽量在状态图中列出所有系统状态,包括许多用户无需知道的内部状态,对许多异常也应有相应处理。 此外,应清楚地说明人机接口,即操作员与系统间地相互作用。对于比较复杂地系统,形成一本操作手册是必要的,为用户提供使用该系统的操作步骤。为使系统说明更清楚,可以将状态变迁图与操作手册脚本结合起来。

在对需求进行分析,了解系统所要实现的功能的基础上,系统开发选用何种硬件、软件平台就可以确定了。 对于硬件平台,要考虑的是微处理器的处理速度、内存空间的大小、外部扩展设备是否满足功能要求等。如微处理器对外部事件的响应速度是否满足系统的实时性要求,它的稳定性如何,内存空间是否满足操作系统及应用软件的运行要求,对于要求网络功能的系统,是否扩展有以太网接口等。 对于软件平台而言,操作系统是否支持实时性及支持的程度、对多任务的管理能力是否支持前面选中的微处理器、网络功能是否满足系统要求以及开发环境是否完善等都是必须考虑的。 当然,不管选用何种软硬件平台,成本因素都是要考虑的,嵌入式Linux 正是在这方面具有突出的优势。 2、任务和模块划分 在进行需求分析和明确系统功能后,就可以对系统进行任务划分。任务是代码运行的一个映象,是无限循环的一段代码。从系统的角度来看,任务是嵌入式系统中竞争系统资源的最小运行单元,任务可以使用或等待CPU、I/O设备和内存空间等系统资源。 在设计一个较为复杂的多任务应用系统时,进行合理的任务划分对系统的运行效率、实时性和吞吐量影响都极大。任务分解过细会不断地在各任务之间切换,而任务之间的通信量也会很大,这样将会大大地增加系统的开销,影响系统的效率。而任务分解过粗、不够彻底又会造成原本可以并行的操作只能按顺序串行执行,从而影响系统的吞吐量。为了达到系统效率和吞吐量之间的平衡折中,在划分任务时应在数据流图的基础上,遵循下列步骤和原则:

windows下搭建ARM开源开发环境

Windows下搭建ARM开源开发环境 1.安装java环境: 到sun网站下载最新的JRE,目前最新的是JRE 6 Update 12。 https://www.sodocs.net/doc/a98329462.html,/javase/downloads/index.jsp 下载后安装。 2.下载E clipse IDE for C/C++ Developers : 下载地址:https://www.sodocs.net/doc/a98329462.html,/downloads/ E c lipse IDE for C/C++ Developers (68 MB)该版本已经集成了C/C++开发插件(CDT 5.x),不需要单独 下载CDT。 下载后解压到合适的目录即可,例如:d:/ide/eclipse_for_ar m。 3.下载WinARM(95M): WinARM是以在windows系统下开发ARM 嵌入式软件的GNU和其他工具集合。 下载后解压,然后设置PATH环境变量,例如: 在Path中添加:C:\WinARM\bin;C:\WinARM\utils\bin; 下载地址:WinARM 20060606 zip http://gandalf.arubi.uni-kl.de/avr_projects/arm_projects/WinARM-20060606. zip 或者自解压包(7z格式):WinARM-20060606.exe http://gandalf.arubi.uni-kl.de/avr_projects/arm_projects/WinARM-20060606. exe

详细内容:http://gandalf.arubi.uni-kl.de/avr_projects/arm_projects/#winarm 详细安装方法: http://gandalf.arubi.uni-kl.de/avr_projects/arm_projects/WinARM_20060606_ readme.html 4.下载Yagarto包:http://www.yagarto.de/ 需要下载一下包: Zylin plugin安装方法: A:启动Eclipse IDE for C/C++程序 到第2步中Eclipse IDE for C/C++安装目录,eclipse双击eclipse.exe 启动Eclipse IDE for C/C++:

关于嵌入式系统软件的全过程质量保证精

关于嵌入式系统软件的全过程质量保证 质量是产品的生命 当今随着软、硬件技术的发展,嵌入式系统广泛应用于航空航天、国防军事、电子通信等行业,其中软件也越来越复杂。而这些领域应用特点,决定了嵌入式系统往往是高安全、任务关键的系统,软件的微小瑕疵就可能严重威胁到生命和国家的安全、天文数字的巨额财产损失。这就使得保证嵌入式软件的质量和可靠性,变得至关重要。而在这些领域,对产品质量从来就保持着高度的重视,有将“质量视为产品的生命”的传统。这样,相关行业的高层管理人员和开发人员对于软件的质量也逐渐提高了重视程度。近年来,在组织上,建立了完善的软件测试体系;在开发和测试方法上,建立了中国的软件过程成熟度的评价体系GJB5OO0在自动化工具方面,投入了大量的经费和人员在测试设备的开发、购置和建设方面。应该说,软件作为嵌入式产品主要的组成部分之一,对其质量的重视是目前相关行业的一个共识。 IBM Rational多年来在软件工程和质量保证方面积累了丰富的方法和经验。本文依据部分嵌入式开发机构对软件质量保证工作的一些理解,分析相应开发机构工作中可能的问题,并提出以RUP为核心的全过程质量管理的思想和具体的实现方式,提出不同单位的过程改进方法,以一种渐进的方式,从简单的工作开始,逐渐深入地改进组织的软件质量管理水平。 定义质量 对于任何一个组织,定义共同的对质量的理解是重要的第一步。软件开发组织经常按照一种不精确的、概括的质量观念来运转。 在IBM Rational统一过程中,质量定义如下: 满足或超出认定的一组需求; 使用经过认可的评测方法和标准来评估; 使用认定的流程来生产。 在这个定义中,我们首先看需求,IBM Rati onal的软件质量在用户需求方面的定义分为五个方面:易用性、可靠性、性能、可支持和功能。 质量保证,归根结底就是为客户提供更高品质的产品,更好地满足客户的需求。另一方面,这个质量定义中明确指出,质量更体现在软件开发的整个过程和一个标准的评价方式上。 软件开发过程质量就是指为了生成工件而对可接受流程的实施和遵守程度,体现在三个层次: 产品本身和用来生产、组装软件产品的零部件质量; 在软件开发过程的标准化、流程化、自动化程度和团队基本协作平台的效率,各个过程对质量的承诺; 软件产品验收的评测手段应该是被业界广泛认可和接受的方法,所构筑的质量评价标准。 一个软件生产企业的过程质量一般可以用它的软件过程成熟度等级来评估。 RUP全过程质量保证 Rational Unified Process (RUP是一个可以通过Web来使用的软件工程过程。作为软件工业事实上的标准,它回答了我们以下问题:在整个软件开发的各个过程中,谁(角色)应该在什么时候(详细工作流程)做什么(任务)和产生什

相关主题