首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

嵌入式经验分享

嵌入式经验分享

关键词: 嵌入式
嵌入式体系的开展现已进入了飞速开展的时代,嵌入式体系与一般pc机比起来有着体积小,构成更简略却能够完结想的的使命。在嵌入式操作体系中,首要的是Linux操作体系,它具有对各种设备的支撑性,被广泛运用于各个范畴。其特色包含软件需求固态化存储,软件代码高质量、高可靠性,体系软件(OS)的高实时性是根本需求。
1嵌入式体系简介
      跟着计算机技能和微电子技能的敏捷开展,嵌入式体系运用范畴越来越广泛。当今,嵌入式体系已变成一个时尚的名词,就像开始的计算机热潮,好像比开始的计算机热潮触及的范畴更广泛,运用技能人员更多,有关国民经济产量也更巨大。报纸、杂志、网络都把嵌入式体系当作讨论的热门话题。
      嵌入式体系一般指非PC体系,有计算机功用但又不称之为计算机的设备或器材。它是以运用为中间,软硬件可裁减的,习惯运用体系对功用、可靠性、本钱、体积、功耗等综合性严格需求的专用计算机体系。嵌入式体系首要由嵌入式微处置器、外围硬件设备、嵌入式操作体系以及用户的运用程序等4个有些构成,它是集软硬件于一体的可独立工作的"器材"。嵌入式体系的软件有些包含操作体系软件(需求实时和多使命操作)和运用程序编程。操作体系操控着运用程序编程与硬件的交互效果,而运用程序操控着体系的运作和行为。
      嵌入式操作体系是一种支撑嵌入式体系运用的操作体系软件,它是嵌入式体系(包含硬、软件体系)极为重要的构成有些,一般包含与硬件有关的底层驱动软件、体系内核、设备驱动接口、通讯协议、图形界面、规范化浏览器等。嵌入式操作体系具有通用操作体系的根本特色,如能够有用办理越来越杂乱的体系资本;能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和保护中摆脱出来;能够供给库函数、驱动程序、东西集以及运用程序。与通用操作体系相比较,嵌入式操作体系在体系实时高效性、硬件的有关依赖性、软件固态化以及运用的专用性等方面具有较为杰出的特色。
1.1嵌入式开发环境:
    一个嵌入式体系的开发环境一般包含嵌入式方针板、开发用的宿主PC机和硬件调试器,他们之间经过串口、JTAG或BDM等调试接口和网络等接口相互衔接。其间,嵌入式软件体系运转于嵌入式方针板上,这些软件所对应的程序开发和编译在宿主机上运转,程序的调试则由宿主机经过硬件调试器操控方针机履行相应的操作完结。
     在运转嵌入式Linux的体系时,硬件调试器只在Bootloader程序开发以及Linux内核移植时有能够需求运用。运用程序的开发一般是Linux操作体系在嵌入式方针机上运转起来今后进行。此刻,更多的是在宿主机上运用GDB经过网络与方针板通讯,进行程序的调试。也即是硬件调试器多在底层软件开发调试时运用,关于运用程序的开发调试一般运用其他手法。
      嵌入式Linux操作体系开发的第一步即是在宿主机上树立穿插开发所需的穿插编译环境。穿插编译环境的树立首要是在宿主机上安装穿插编译东西Cross-gcc。Cross-gcc东西链一般是运用他人现已编译好的穿插编译的GCC东西链。
      在穿插编译环境树立好今后,就能够在宿主机上运用穿插编译环境结构一个嵌入式Linux体系。Linux操作体系是由Linux内核和运用程序两大有些构成。Linux内核的开发首要是依据实践的需求进行内核裁剪和装备,然后用穿插编译器编译生成内核的二进制文件映像。关于许多自行规划的嵌入式体系,内核的开发还包含依据实践的硬件体系进行内核和外设驱动程序的移植开发。运用程序

一般都放在Linux的根文件体系中。根文件体系首要存放了嵌入式的装备文件、设备文件、运用程序、动态链接库以及其他一些有关的程序和文件。一般开始的根文件体系仅仅一个根本的根文件体系,只包含了一些必要的体系支撑程序。
      在宿主机PC机上完结嵌入式Linux软件体系的构建今后,就在嵌入式硬件体系上测验、运转结构好的嵌入式Linux软件体系。其间,测验工作需求在宿主机上经过长途终端操控嵌入式开发板完结。一般在嵌入式开发板上存在一个内核的引导加载程序,它用于硬件的初始化,给用户供给一个操作界面,将嵌入式Linux加载到内存中运转。除此之外,它关于嵌入式Linux体系的开发调试也起到很大的效果。一个根本的嵌入式Linux体系在方针板上运转起来今后,就要进行程序移植开发和调试。
嵌入式Linux操作体系的运用
      因为Linux具有对各种设备的广泛支撑性,因而,能方便地运用在机顶盒、IA设备、PDA、掌上电脑、WAP手机、寻呼机、车载盒以及工业操控等智能信息商品中。
嵌入式工业操控网络的完结计划
      依据嵌入式Linux的工控体系以嵌入式微处置器为中间来运转嵌入式Linux操作体系。运用程序可经过网络进行更新,并可经过键盘进行人机对话,数据可经过LCD现场显现,重要数据可用文件方式保存在Flash等闪存存储器中;数据和报警信息可经过串口向上位机传输,也能够经过以太网向工业以太网或Internet发布,用户还可经过网络完结长途监控和长途保护。更为要害的是,可充分运用Internet上已有的软件和协议运用程序敏捷建立前台数据收集体系,以完结测控体系和后台办理体系的通讯。
1.2  实时多使命操作体系
      RTOS(Real Time multi-tasking Operation System),即实时多使命操作体系是嵌入式运用软件的根底和开发渠道。目前在我国大多数嵌入式软件开发仍是依据处置器直接编写,没有选用商品化的RTOS,不能将体系软件和运用软件分隔处置。RTOS是一段嵌入在方针代码中的软件,用户的其它运用程序都树立在RTOS之上。不但如此,RTOS仍是一个可靠性和可信性很高的实时内核,将CPU时刻、中止、I/O、定时器等资本都包装起来,留给用户一个规范的API,并依据各个使命的优先级,合理地在不一样使命之间分配CPU时刻。
     TOS是关于不一样处置器优化规划的高功率实时多使命内核,优异商品化的RTOS能够面临几十个系列的嵌入式处置器MPU、MCUDSP、SOC等供给类同的API接口,这是RTOS依据设备独立的运用程序开发根底。因而依据RTOS上的C言语程序具有极大的可移植性。据专家测算,优异RTOS上跨处置器渠道的程序移植只需求修正1~5%的内容。在RTOS根底上能够编写出各种硬件驱动程序、专家库函数、职业库函数、商品库函数,和通用性的运用程序一同,能够作为商品销售,推进职业界的常识产权沟通,因而RTOS又是一个软件开发渠道。
    RTOS是嵌入式体系的软件开发渠道。RTOS最要害的有些是实时多使命内核,它的根本功用包含使命办理、定时器办理、存储器办理、资本办理、事情办理、体系办理、消息办理、行列办理、旗语办理等, 这些办理功用是经过内核效劳函数方式交给用户调用的,也即是RTOS的API。
     RTOS的引进,处理了嵌入式软件开发规范化的难题。跟着嵌入式体系中软件比重不断上升、运用程序越来越大,对开发人员、运用程序接口、程序档案的安排办理变成一个大的课题。引进RTOS相当于引进了一-
种新的办理方式,关于开发单位和开发人员都是一个进步。
     依据RTOS开宣布的程序,具有较高的可移植性,完结90%以上设备独立,一些老练的通用程序能够作为专家库函数商品推向社会。嵌入式软件的函数化、商品化能够推进职业沟通以及社会分工专业化,削减重复劳动,进步常识立异的功率。
     嵌入式工业的根底是以运用为中间的芯片规划和面向运用的软件开发。实时多使命操作体系(RTOS)进入嵌入式工业的含义不亚于历史上机械工业选用三视图的(网学)奉献,对嵌入式软件的规范化和加快常识立异是一个里程碑。   
    1.4 嵌入式体系软件的特色
      嵌入式处置器的运用软件是完结嵌入式体系功用的要害,对嵌入式处置器体系软件和运用软件的需求也和通用计算机有所不一样。
1.软件需求固态化存储。 为了进步履行速度和体系可靠性,嵌入式体系中的软件一般都固化在存储器芯片或单片机自身中,而不是存贮于磁盘等载体中。
2.虽然半导体技能的开展使处置器速度不断进步、片上存储器容量不断添加,但在大多数运用中,存储空间仍然是名贵的,还存在实时性的需求。为此需求程序编写和编译东西的质量要高,以削减程序二进制代码长度、进步履行速度。
3.体系软件(OS)的高实时性是根本需求。 在多使命嵌入式体系中,对重要性各不相同的使命进行顾全大局的合理调度是确保每个使命及时履行的要害,单纯经过进步处置器速度是无法完结没有用率的,这种使命调度只能由优化编写的体系软件来完结,因而体系软件的高实时性是根本需求。
4.多使命操作体系是常识集成的渠道和走向工业规范化路途的根底。
2 嵌入式开发概述
    2.1 嵌入式体系开发需求开发东西和环境
      通用计算机具有完善的人机接口界面,在上面添加一些开发运用程序和环境即可进行对自身的开发。而嵌入式体系自身不具备自举开发才干,即便规划完结今后用户一般也是不能对其间的程序功用进行修正的,有必要有一套开发东西和环境才干进行开发,这些东西和环境一般是依据通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。
    2.2 嵌入式体系软件需求RTOS开发渠道
      通用计算机具有完善的操作体系和运用程序接口(API),是计算机根本构成不行别离的一有些,运用程序的开发以及完结后的软件都在OS渠道上面运转,但一般不是实时的。嵌入式体系则不一样,运用程序能够没有操作体系直接在芯片上运转;可是为了合理地调度多使命、运用体系资本、体系函数以及和专家库函数接口,用户有必要自行选配RTOS开发渠道,这样才干确保程序履行的实时性、可靠性,并削减开发时刻,保证软件质量。
     2.3 嵌入式Linux体系的开发流程
  嵌入式体系的开发与一般PC机上的软件开发有很大的差异,原有的PC机的软件开发进程从编写程序、编译和运转等进程全在同一个PC机渠道上完结;嵌入式开发的程序编写和编译还在PC机上完结,但编译发生的成果要在嵌入式方针渠道上运转。一般将这种在主机上开发编译,在方针渠道上调试运转的开发方式称为穿插开发。运转在主机上的编译器(如GCC)编译程序发生方针机上运转的可履行程序的编译进程称为交易编译。嵌入式体系选用这种穿插开发、穿插编译的开发方式首要是因为嵌入式体系是种专用的计算机体系,选用因地制宜、量身定制的办法制作,它的这种特色使其与通用PC机的开发与运用特色有很大的不一样。一个嵌入式体系的开发环境一般包含嵌入式方针板、开发用的宿主PC机和硬件调试器,他们之间经过串口、JTAG或BDM等调试接口和网络等接口相互衔接。其间,嵌入式软件体系运转于嵌入式方针板上,这些软件所对应的程序开发和编译在宿主机上运转,程序的调试则由宿主机经过硬件调试器操控方针机履行相应的操作完结。
在运转嵌入式Linux的体系时,硬件调试器只在Bootloader程序开发以及Linux内核移植时有能够需求运用。运用程序的开发一般是Linux操作体系在嵌入式方针机上运转起来今后进行。此刻,更多的是在宿主机上运用GDB经过网络与方针板通讯,进行程序的调试。也即是硬件调试器多在底层软件开发调试时运用,关于运用程序的开发调试一般运用其他手法。
  在穿插编译环境树立好今后,就能够在宿主机上运用穿插编译环境结构一个嵌入式Linux体系。Linux操作体系是由Linux内核和运用程序两大有些构成。Linux内核的开发首要是依据实践的需求进行内核裁剪和装备,然后用穿插编译器编译生成内核的二进制文件映像。关于许多自行规划的嵌入式体系,内核的开发还包含依据实践的硬件体系进行内核和外设驱动程序的移植开发。运用程序一般都放在Linux的根文件体系中。根文件体系首要存放了嵌入式的装备文件、设备文件、运用程序、动态链接库以及其他一些有关的程序和文件。一般开始的根文件体系仅仅一个根本的根文件体系,只包含了一些必要的体系支撑程序。
3 嵌入式Linux操作体系的运用
  因为Linux具有对各种设备的广泛支撑性,因而,能方便地运用在机顶盒、IA设备、PDA、掌上电脑、WAP手机、寻呼机、车载盒以及工业操控等智能信息商品中。
3.1 嵌入式工业操控网络的完结计划
  依据嵌入式Linux的工控体系以嵌入式微处置器为中间来运转嵌入式Linux操作体系。运用程序可经过网络进行更新,并可经过键盘进行人机对话,数据可经过LCD现场显现,重要数据可用文件方式保存在Flash等闪存存储器中;数据和报警信息可经过串口向上位机传输,也能够经过以太网向工业以太网或Internet发布,用户还可经过网络完结长途监控和长途保护。更为要害的是,可充分运用Internet上已有的软件和协,敏捷建立前台数据收集体系,以完结测控体系和后台办理体系的通讯。


返回列表