版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
任务1:嵌入式系统概述子任务1:嵌入式系统架构嵌入式系统本身是一个外延极广的名词,凡是与产品结合在一起的具有嵌入式特点的控制系统都可以叫嵌入式系统,很难给它下一个准确的定义。总体上嵌入式系统可以划分成硬件和软件两部分,硬件一般由高性能的微处理器和外围的接口电路组成,软件一般由嵌入式操作系统和其上运行的应用软件构成,软件和硬件之间由中间层连接,中间层一般包括板级支持包(BoardSupportPackage,BSP)和硬件抽象层(HardwareAbstractionLayer,HAL)。嵌入式系统架构如图1-1所示。下一页返回任务1:嵌入式系统概述子任务2:嵌入式系统特性1.系统内核小由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以嵌入式系统内核与PC的操作系统相比要小得多。2.专用性强嵌入式系统的个性化很强,其中的软件系统和硬件结合得非常紧密,一般要针对硬件进行系统移植。即使在同一品牌、同一系列的产品中,也需要根据系统硬件的变化和增减不断进行修改。同时,针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全不同的概念。上一页下一页返回任务1:嵌入式系统概述3.系统精简嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。4.高实时性这是嵌入式软件的基本要求,而且软件要求固化存储,以提高速度。软件代码要求高质量和高可靠性、高实时性。5.嵌入式软件开发走向标准化,必须使用多任务操作系统嵌入式系统的应用程序可以没有操作系统,直接在芯片上运行。为了合理地调度多任务、利用系统资源、系统函数以及和专用库函数接口,用户必须自行选配RTOS(Real-TimeOperatingSystem)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。上一页下一页返回任务1:嵌入式系统概述子任务3:嵌入式开发模式———交叉编译开发时往往有主机和目标机的概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。嵌入式开发模式如图1-2所示。由于其本身不具备自主开发能力,即使设计完成以后,用户通常也不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发。什么是交叉编译呢?简单地说,就是在一个平台上生成另一个平台上的可执行代码。因为目的平台上不允许或不能够安装我们所需要的编译器,而我们又需要这个编译器的某些特征;有时是因为目的平台上的资源贫乏,无法运行我们所需要编译器;有时又是因为目的平台还没有建立,连操作系统都没有,根本谈不上运行什么编译器。上一页下一页返回任务1:嵌入式系统概述子任务4:嵌入式系统!单片机系统目前嵌入式系统的主流是以32位嵌入式微处理器为核心的硬件设计和基于实时操作系统(RTOS)的软件设计。单片机系统多为4位、8位和16位机,不适合运行操作系统,难以进行复杂的运算及处理功能。嵌入式系统强调基于平台的设计、软硬件协同设计,单片机大多采用软硬件流水设计。嵌入式系统设计的核心是软件设计(占70%左右的工作量),单片机系统软硬件设计所占比例基本相同。上一页返回任务2:熟悉UP-NET2410-S硬件开发平台子任务1:知道ARMARM全称为AdvancedRISCMachines(高级RISC微处理器设计)。一、ARM公司的业务模式ARM公司不生产芯片,而是采取出售芯片IP(IntellectualProperty)核授权的方式扩大其影响力。世界各大半导体生产厂商从ARM公司购买芯片设计方案以及授权,然后根据各自不同的需要,针对不同的应用领域添加适当的外围电路,从而生产出自己的ARM微处理器芯片。ARM公司提供基于ARM架构的开发设计技术(如图1-3所示)、软件工具、评估板、调试工具、应用软件、总线架构、外围设备单元等。下一页返回任务2:熟悉UP-NET2410-S硬件开发平台二、ARM处理器的应用(1)当前主要应用于消费类电子领域。目前为止,基于ARM技术的微处理器应用约占据了32位嵌入式微处理器80%以上的市场份额。(2)全球90%的GSM/3G手机、99%的CDMA手机以及绝大多数PDA产品均采用ARM体系的嵌入式处理器。(3)“掌上计算”相关领域皆为ARM所主宰。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台三、ARM处理器的特点(1)体积小、低功耗、低成本、高性能;(2)支持Thumb(16位)/ARM(32位)双指令集,能很好地兼容8位/16位器件;(3)大量使用寄存器,指令执行速度更快;(4)大多数数据操作都在寄存器中完成;(5)指令长度固定;(6)寻址方式灵活简单,执行效率高。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台四、ARM芯片选择的一般原则从应用的角度,对在选择ARM芯片时所应考虑的主要因素做详细的说明。1.ARM核芯如果希望使用WinCE或Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带有MMU(MemoryManagementUnit)功能的ARM芯片。2.系统时钟控制器系统时钟决定了ARM芯片的处理速度。ARM7的处理速度为0.9MIPS/MHz,常见的ARM7系统主时钟为20~133MHz;ARM9的处理速度为1.1MIPS/MHz,常见的ARM9系统主时钟为100~233MHz;ARM10最高可以达到700MHz。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台3.内部存储器容量在不需要大容量存储器时,可以考虑选用有内置存储器的ARM芯片。4.USB接口许多ARM芯片内置有USB控制器,有些芯片甚至同时有USBHost和USBSlave控制器。5.GPIO数量在某些芯片供应商提供的说明书中,往往申明的是最大可能的GPIO数量,但是有许多引脚是和地址线、数据线、串口线等引脚复用的。这样,在系统设计时,需要计算实际可以使用的GPIO数量。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台6.中断控制器ARM内核只提供快速中断(FIQ)和标准中断(IRQ)两个中断向量。但各个半导体厂家在设计芯片时加入了自己不同的中断控制器,以便支持诸如串行口、外部中断、时钟中断等硬件中断。外部中断控制是选择芯片必须考虑的重要因素,合理的外部中断设计可以很大程度上减少任务调度的工作量。7.LCD控制器有些ARM芯片内置LCD控制器,有的甚至内置64KB彩色TFTLCD控制器。在设计PDA和手持式显示记录设备时,选用内置LCD控制器的ARM芯片较为适宜。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台8.扩展总线大部分ARM芯片具有外部SDRAM和SRAM扩展接口,不同的ARM芯片可以扩展的芯片数量即片选线数量不同,外部数据总线有8位、16位或32位。某些特殊应用的ARM芯片如德国Micronas的PUC3030A没有外部扩展功能。9.DSP协处理器DSP(DigitalSignalProcessor,数字信号处理器)是一种专门用来处理数字信号的处理器,据有独特的DSP数字处理指令和硬件乘法器,可以加快数据处理速度。DSP通常被用在一些需要做大量数据处理的应用场景中,例如音乐编解码、图像编解码、视频编解码。因此,DSP数字处理器常见于音响、相机、录像机、视频播放、视频会议等产品中。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台有些芯片厂商为了满足市场需求,将ARM和DSP两种核心集成在一个芯片中,制作出双核CPU。因此,选择芯片的时候,需要考虑自己的产品中是否需要DSP数字信号处理器。10.封装主要的封装有QFP、TQFP、PQFP、LQFP、BGA、LBGA等形式。BGA封装具有芯片面积小的特点,可以减小PCB板的面积,但是需要专用的焊接设备,无法手工焊接。另外,一般BGA封装的ARM芯片无法用双面板完成PCB布线,需要多层PCB板布线。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台子任务2:S3c2410处理器概述韩国三星公司推出的基于ARM920T内核和AMBA总线的S3c2410处理器,使用0.18μmCMOS标准宏单元和存储器单元工艺,集成LCD、UART、IIC、SPI、IIS、USB、SD控制器等片内外围设备,支持ROM和NANDFlash引导。其适合面向手持设备应用,功耗较低;适合成本低廉、应用环境较好的消费类电子产品。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台一、S3c2410内部模块———ARM920T内核RM920T内核是ARM公司的16/32位RISC结构处理器,采用ARMV4指令集,体系结构为数据、地址总线分离的哈佛体系结构,16KB指令缓存,16KB数据缓存,支持MMU,可运行WinCE、Linux等操作系统,外部总线采用AMBA总线,集成基于JTAG协议的片内调试(ICE)单元。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台二、S3c2410内部模块———AMBA总线AMBA(AdvancedMicrocontrollerBusArchitecture)总线规范是ARM公司设计的一种用于高性能嵌入式系统的总线标准。它是一个开放标准,可免费从ARM获得;在基于ARM处理器内核的SoC设计中,其已经成为事实上的工业标准;AMBA总线是一个多总线系统。规范定义了三种可以组合使用的不同类型的总线:(1)AHB(AdvancedHigh-performanceBus);(2)ASB(AdvancedSystemBus);上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台(3)APB(AdvancedPeripheralBus),该总线已经逐渐被废弃。AHB主要用以满足CPU和存储器之间的大带宽要求,而系统的大部分低速外部设备则连接在低带宽总线APB上。系统总线和外设总线之间用一个桥接器(AHB-APB-Bridge)进行连接。三、封装与电压、工作温度封装:272脚FBGA,焊盘中心间距0.8mm,如图1-4所示。电压:内核电压:1.8V;存储器和I/O电压:3.3V工作温度:商业级:0℃~70℃;工业级:-40℃~85℃。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台子任务3:UP-NETARM2410-S硬件平台一、UP-NETARM2410-S平台硬件环境架构UP-NETARM2410-S平台硬件环境架构如图1-5所示。UP-NETARM2410-S教学科研系统如图1-6所示。1.核心板(如图1-7所示)(1)CPU:ARM920T结构芯片,工作频率202MHz,SAMSUNG公司的S3c2410X。(2)FLASH:64MBNAND型;SAMSUNG的K9F1208。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台(3)RAM:64MBSDRAM型;HY57V561620AT-H。(4)200管脚精密插座。2.主板(1)USB口:包括1个USB从接口和4个USB主接口。前者直接来自处理器,后者是处理器的主接口经过由AT43301构成的USBHUB电路扩展出来的4个主接口。(2)JTAG调试口:20针标准口,14针简易口。(3)AUDIO:44.1kHz音频,采用UDA1341芯片构成,可放音和录音。通过IIS总线连接到处理器,具有功放电路驱动喇叭、板载MIC和音频IO插座。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台(4)ATMEGA8单片机:2410-s平台上通过一片ATMEGA8单片机作为控制器,驱动PS2接口、IC卡接口和板载KEYPAD。ATMEGA8单片机通过IIC总线和ARM处理器连接。(5)AD电位器:3个电位器控制输入,8个通道经过跳线设置可全部作为外部模拟电压输入,同时,在板上设模拟电压输入专用接口,由S3c2410芯片管脚引出。(6)直流/步进电动机:直流电动机信号来自PWM输出,步进电动机信号来自EXIO扩展,EXIO扩展电路由74HC573构成,分配专用地址段,和IDE接口在同一通道。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台(7)IDE接口:IDE接口直接出自扩展总线,由软件完成驱动控制。(8)CF卡接口:PCMCIA模式的CF卡接口。(9)SD卡接口:直接来自S3c2410的SD控制器。(10)PCMCIA接口:PCMCIA接口挂在扩展总线上,通过EPM3128A100CPLD和HC245芯片等实现总线隔离和控制,并需要配置专用的电源控制芯片TPS2211。采用无线网卡的型号为DWL-650。(11)IrDA/RS485:用的是UART2,分别经过TFDU4100收发器和MAX485芯片完成。要做IrDA实验,必须将UART2设置到IrDA电路上。不能同时做RS485实验。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台(12)CAN总线:由控制器MCP2510和驱动器TJA1050构成,SPI总线接口。(13)双DA电路:设置两个10位DAC端口,采用MAX504接SPI总线,输出两路模拟电压(预留一路)。(14)串口:包括两个RS232接口,处理器的UART0和UART1经过MAX3232芯片电压转换后用DB9插座输出。(15)168Pin扩展插槽:该插槽和计算机的内存条插槽规格一致,用户可以据此设计合适的扩展板。扩展槽上包含扩展总线的所有信号、可复用的系统资源以及开发平台尚未使用的空置资源。(16)以太网口:包括两个相同的网卡电路,芯片型号AX88796,10M/100M自适应(预留一个)上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台3.显示装置(1)LCD:8英寸16bitTFT,640×480像素分辨率,型号是LQ080V3DG01。S3c2410的处理器内含LCD控制器,这使得LCD部分的电路非常简单。LCD控制器的信号线经过驱动电路后即可连接LCD模块。(2)触摸屏:采用2410CPUAD单元的接口方案。4.2410-s电源电压为5V,经LM1085-3.3V和AS1117-1.8V分别得到3.3V和1.8V的工作电压。5.开发板上的芯片多数使用了3.3V电压,而1.8V是供给S3c2410内核使用的,5V电压供给音频功放芯片、LCD、电动机、硬盘、CAN总线等电路使用。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台二、配置目标机1.Windows环境单击“开始”“附件”“通讯”“超级终端或安装超级终端”。配置:波特率115200,数据位8位,停止位1,无奇偶校验,软硬件控制流为无。请大家注意:在WindowsXP操作系统下,当初次建立超级终端的时候,会出现如图1-8所示对话框。在□中打上√,并单击“否”按钮,出现如图1-9所示的对话框,输入自定义的终端名称,选择一个图案,终端就创建成功了。上一页下一页返回任务2:熟悉UP-NET2410-S硬件开发平台2.Linux环境输入命令“minicom”,按Ctrl+A+Z+O组合键。新建超级终端,配置MINICOM,设置波特率115200b/s,数据位8,停止位1,奇偶检验;无,数据流控制:无,软硬件控制流为无,如图1-10所示。MINICOM的作用是作为调试嵌入式开发板信息输出的监视器和键盘输入的工具。上一页返回任务3:搭建嵌入式应用程序开发平台子任务1:安装开发工具及配置一、挂载及安装1.附带开发工具光盘的挂载PClinux开发机:2.安装运行./install.sh安装脚本。下一页返回任务3:搭建嵌入式应用程序开发平台二、编译器的配置确保交叉主编译器armv4l-unknown-linux-gcc在/opt/host/armv4l/bin目录中,如果不在,用vi/root/.bash_profile修改PATH变量为:PATH=!PATH;!HOME/bin;/opt/host/armv4l/bin存盘退出,执行source/root/.bash_profile即可。1.安装目录/arm2410s结构busybox-1.00-pre10:Busybox-1.00源代码。上一页下一页返回任务3:搭建嵌入式应用程序开发平台doc:2410-s使用说明、原理图以及芯片资料。microwindows-0.9microwindows:图形系统源代码。miniguiminigui:应用程序和库的源代码。insight-6.0:Linux下源代码的查看器。root2410-s:根文件系统。kernel-2410:2410-s平台Linux内核源代码。demos:所有实验演示程序。img:vivilinux的bootloader:系统引导程序。上一页下一页返回任务3:搭建嵌入式应用程序开发平台zImagearmlinux2.4:内核压缩映象文件。root.cramfs:根文件系统映象文件。exp:实验例程。sh:mount-dos.sh是Linux下挂载Windows的分区示例脚本。munt_udisk.sh:挂U盘。mkroot.sh:制作根文件系统的脚本。上一页下一页返回任务3:搭建嵌入式应用程序开发平台2.配置网络环境(1)配置IP。目标板:192.168.0.115。PCWindows开发机:192.168.0.100+学号。PCLinux开发机:192.168.0.学号。(2)配置NFS服务。PCLinux开发机/arm2410s目录可以被192.168.0.局域网主机共享。目标板mounttnfs192.168.0.学号:/arm2410s/mnt。上一页下一页返回任务3:搭建嵌入式应用程序开发平台(3)配置smb服务。PCLinux开发机/home/bc目录可以被192.168.0.局域网不同操作系统的主机共享。PCWindows开发机查看工作组计算机。子任务2:熟悉软件开发工具一、gcc编译器gcc是GNU项目的编译器套件,能编译C、C++、Fortran等程序,同时是一个交叉平台编译器。它的软件包包括cpp(C预处理器)、g++:(C++编译器)、gcc(C编译器)、gccbug(创建bug报告的shell脚本)、libgcc(gcc的运行库)、libstdc++(标准C++库),以及常用的函数。表1-1所示是gcc支持编译源文件的后缀及其解释。上一页下一页返回任务3:搭建嵌入式应用程序开发平台编译过程分为四个阶段:预处理、编译、汇编、链接。1.gcc的使用基本用法:gcc[option][filename]。主要选项:mangcc-Werror把所有警告转换为错误,以便于在警告发生时中止编译过程。-w关闭所有警告。(不建议使用)-W允许发出gcc能提供的所有有用的警告,也可用-W(warning)来标记指定的警告。-v显示在编译过程中每一步用到的命令及版本。-static链接静态库。上一页下一页返回任务3:搭建嵌入式应用程序开发平台-pedantic-errors允许发出标准C所列出的所有错误。-pedantic允许发出标准C所列出的所有警告。-ON指定代码优化级别,0≤N≤3。-O优化编译过的代码。-ansi支持标准C的标准语法,取消GNU的语法中与该标准冲突的部分。-E只对文件进行预处理,但不编译、汇编和链接。-S只对文件进行编译,但不汇编和链接。-c只编译,不链接,生成目标文件.o。上一页下一页返回任务3:搭建嵌入式应用程序开发平台-ofilename指定输出文件名,在编译为目标代码时,该项不是必需的,缺省则文件名为a.out。-lFoo链接名为libFoo.so(动态库)或libFoo.a(静态库)的函数库。函数库分为静态库和动态库两种。静态库是指编译链接时,把库文件的代码全部加入可执行文件中,因此生成的文件比较大,但在运行时也就不再需要库文件了。动态库与之相反,在编译链接时,并没有把库文件的代码加入可执行文件中,而是在程序执行时由运行的链接文件加载库,这样可以节省系统的开销。gcc在编译时默认使用动态库。上一页下一页返回任务3:搭建嵌入式应用程序开发平台-LDirname将目录名加入库文件的搜索目录列表中,缺省情况下gcc只链接共享库。-IDirname将目录名加入头文件搜索目录列表中。-g在可执行程序中包含标准调试信息。-DFOO=BAR在命令行定义预处理宏FOO,其值为BAR。二、gdb调试器调试是所有程序员都会面对的问题。如何提高程序员的调试效率,更好、更快地定位程序中的问题,从而加快程序开发的进度,是大家共同面对的问题。gdb调试器是一款GNU开发并发布的UNIX/Linux下的程序调试工具。虽然它没有图形化的友好界面,但是它强大的功能也足以与微软的VisualC++工具等媲美。上一页下一页返回任务3:搭建嵌入式应用程序开发平台1.gdb使用流程下面以一个程序test.c来熟悉gdb的使用流程和方法。上一页下一页返回任务3:搭建嵌入式应用程序开发平台步骤:(1)gcc-gtest.c-otest。首先使用gcc对test.c进行编译,注意一定要加上选项-g,这样编译出的可执行代码中才包含调试信息,否则之后gdb无法载入该可执行文件。(2)gdbtest。可以看出,在gdb的启动画面中指出了gdb的版本号、使用的库文件等信息,接下来进入了由(gdb)开头的命令行界面。注意:gdb进行调试的是可执行文件。(3)查看文件(gdb)l。输入l(list)就可以查看所载入的文件。列出的源码中给出了对应的行号,可以方便代码的定位。上一页下一页返回任务3:搭建嵌入式应用程序开发平台(4)设置断点(gdb)b6。设置断点可以使程序到一定的位置暂停它的运行,因此,程序员在该位置处可以方便地查看变量的值、堆栈情况等,从而找出代码的症结所在。在gdb中,在b后加入行号是最常用的方式,是指代码运行到对应行之前将停止,并没有运行相应行。(5)查看断点情况(gdb)infob。在设置完断点之后,可以查看设置断点情况,在gdb中可以设置多个断点。(6)运行代码(gdb)r。gdb默认从首行开始运行代码,若想从程序指定行开始运行,可在r后面加行号。可以看到,程序运行到断点处就停止了。上一页下一页返回任务3:搭建嵌入式应用程序开发平台(7)查看变量值(gdb)p+变量值即可。在程序停止运行之后,程序中所要做的工作是查看断点处的相关变量值,分别查看断点处变量n和i的值。(8)单步运行(gdb)n或s。它们之间的区别为:若有函数调用,s会进入该函数,而n不会进入该函数。(9)恢复程序运行(gdb)c。在查看完所需变量及堆栈情况后,就可以恢复程序的正常运行了。这时,它会把剩余还未执行的程序执行完,并显示剩余程序中的执行结果,可以看到,程序在运行完后退出,之后程序处于停止状态。上一页下一页返回任务3:搭建嵌入式应用程序开发平台2.gdb基本命令gdb的命令可以通过查看help进行查找,由于gdb的命令很多,因此gdb的help将其分成了很多种类,分为以下几类:工作环境相关命令、设置断点与恢复命令、源代码查看命令、查看运行数据相关命令及修改运行参数命令。用户可以通过进一步查看相关class找到相应命令。(gdb)help种类或(gdb)help命令名通过进一步查找命令得到。(1)工作环境相关命令。gdb不仅可以调试所运行的程序,还可以对程序相关的工作环境进行相应的设定,甚至还可以使用shell中的命令进行相关的操作,其功能极其强大。表1-2为gdb常见的工作环境相关命令。上一页下一页返回任务3:搭建嵌入式应用程序开发平台(2)设置断点与恢复命令。gdb中常见的设置断点与恢复命令见表1-3。(3)gdb中源码查看相关命令。gdb中源码查看常见相关命令见表1-4。(4)gdb中查看运行数据相关命令。gdb中查看运行数据是指程序处于运行或暂停状态时,可以查看的变量及表达式的信息,其常见的命令见表1-5。(5)gdb中修改运行参数相关命令。gdb还可以修改运行时的参数,并使该变量按照用户当前输入的值继续运行。它的设置方法为:在单步执行的过程中,输入set变量=设定值,在此之后,程序就会按照该设定的值运行了。上一页下一页返回任务3:搭建嵌入式应用程序开发平台三、make管理工具1.make工具简介make作用:首先,包含多个源文件的项目在编译时都有长而复杂的命令行,使用make可以通过把这些命令保存在一个makefile文件中而简化这个工作。其次,使用make可以减少重新编译所需要的时间,因为它可以识别出那些被修改的文件,并且只编译这些文件。最后,make在一个数据库中维护了当前项目中各文件的相互关系,从而可以在编译前检查是否可以找到所需要的文件。2.makefile文件这是一个文本形式的数据库文件,其中包含的规则指明make编译哪些文件以及怎样编译这些文件。一条规则包含三个内容:make要创建的目标文件;编译目标文件所需的依赖文件列表;通过依赖文件创建目标文件所需要执行的命令。上一页下一页返回任务3:搭建嵌入式应用程序开发平台3.make命令建立makefile文件后,就可以make命令生成和维护和目标文件。格式如下:宏定义指定执行makefile文件时的宏值。目标文件列表是要更新的文件列表,参数之间用空格隔开。选项:-C目录:指出make开始运行之后的工作目录为指定目录。-f文件:使用指定的文件为makefile。-i忽略运行makefile文件时命令行产生的错误,不退出make。上一页下一页返回任务3:搭建嵌入式应用程序开发平台-I目录:指定搜索被包含的makefile的目录。-s执行但不显示执行的命令。-t修改每个目标文件的创建日期,但不真正重新创建文件。-v输出make工具的版本号,然后正常执行。如果只输出版片号,不执行命令,可使用make-v-f/dev/null。4.makefile文件的规则(1)伪目标。伪目标没有依赖文件存在。由于没有依赖文件,make命令伪目标就是最新版本,不需要创建,要想启动伪目标,必须使用命令:make伪目标。上一页下一页返回任务3:搭建嵌入式应用程序开发平台特殊的伪目标.PHONY,这个依赖文件含义与通常的一样,但make不会检查是否存在它的依赖文件,而会直接执行.PHONY所对应规则的命令。(2)变量。变量名一般大写。赋值:变量名=变量值。上一页下一页返回任务3:搭建嵌入式应用程序开发平台引用:变量的分类:环境变量、自动变量、预定义变量。①环境变量,就是系统环境变量。make命令执行后,读取系统环境变量并创建与其同名的变量。但如果自定义与环境变量同名,则会覆盖环境变量。②自动变量,类似于系统特殊变量。③预定义变量,主要用于定义程序名,以及传给这些程序的参数及标志值。上一页下一页返回任务3:搭建嵌入式应用程序开发平台(3)隐式规则。每个名为file.o的目标文件,make后寻找对应的file.c文件,并用gcc-cfile.c-ofile.o编译生成目标文件。上一页下一页返回任务3:搭建嵌入式应用程序开发平台(4)模式规则。模式规则是指用户自定义的隐式规则,与普通格式一致,但是目标和依赖文件必须带有符号%。上一页返回任务4:熟悉嵌入式Linux应用程序开发环境子任务1:嵌入式Linux开发环境的建立一、开发主机(宿主机PC)安装Linux操作系统此部分内容见附录三。二、开发工具软件的安装1.挂载目标板配套光盘
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年济宁市市中区社区工作者招聘考试备考题库及答案解析
- 2026年伊春市新青区社区工作者招聘笔试模拟试题及答案解析
- 2026年潍坊市寒亭区社区工作者招聘考试备考题库及答案解析
- 2026年辽宁省朝阳市社区工作者招聘考试备考题库及答案解析
- 2026年武汉市新洲区城管协管招聘考试备考题库及答案解析
- 2026年宜昌市点军区社区工作者招聘考试参考题库及答案解析
- 2026年西安市灞桥区社区工作者招聘考试备考题库及答案解析
- 抗菌药物分级管理制度
- 2026年高职(会展策划与管理)综合技能测试试题及答案
- 梯度功能设计项目可行性研究报告
- 2025年公安机关基本级执法资格考试真题试卷(含答案)
- 新高考教学教研联盟(长郡二十校)2026届高三年级4月第二次联考生物试卷(含答案详解)
- 大健康福州行业分析报告
- (2026年课件合集)教科版三年级科学下册全册教案
- 2026年上海市静安区高三下学期二模化学试卷和答案
- 2026年中央一号文件考公50道核心考点题目及解析(附:答案)
- 部队内部物业管理制度
- 2024人教版八年级英语下册Unit 1-8作文16篇范文
- 口岸知识教学课件
- 2026年广东省茂名市高三年级第一次综合测试英语(含答案)
- 《建筑施工安全检查标准》JGJ59-2025
评论
0/150
提交评论