嵌入式技术基础与实践(第2版)第04章_第1页
嵌入式技术基础与实践(第2版)第04章_第2页
嵌入式技术基础与实践(第2版)第04章_第3页
嵌入式技术基础与实践(第2版)第04章_第4页
嵌入式技术基础与实践(第2版)第04章_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、第第4 4章章 基于硬件构件的嵌入式基于硬件构件的嵌入式 系统开发方法系统开发方法 主要内容主要内容v4.1 4.1 嵌入式系统开发所遇到的若干问题嵌入式系统开发所遇到的若干问题v4.2 4.2 嵌入式硬件构件的基本思想与应用方法嵌入式硬件构件的基本思想与应用方法v4.3 4.3 基于硬件构件的嵌入式系统硬件电路设计基于硬件构件的嵌入式系统硬件电路设计v4.4 4.4 基于硬件构件的嵌入式底层软件构件的编基于硬件构件的嵌入式底层软件构件的编程方法程方法4.1 4.1 嵌入式系统开发所遇到的若干问题嵌入式系统开发所遇到的若干问题嵌入式系统开发主要存在以下两大问题:嵌入式系统开发主要存在以下两大问

2、题: 硬件设计缺乏重用支持硬件设计缺乏重用支持 导致硬件设计缺乏重用支持的主要原因是:目前缺少可导致硬件设计缺乏重用支持的主要原因是:目前缺少可供硬件设计工程师们共同遵守的设计规范供硬件设计工程师们共同遵守的设计规范 驱动程序可移植性差驱动程序可移植性差 驱动程序的开发在嵌入式系统的开发中具有举足轻重驱动程序的开发在嵌入式系统的开发中具有举足轻重的地位,长期以来,开发人员在编写驱动程序时缺少软件的地位,长期以来,开发人员在编写驱动程序时缺少软件工程思想的支撑,软、硬件设计过程孤立,造成与硬件密工程思想的支撑,软、硬件设计过程孤立,造成与硬件密切相关的底层软件缺乏通用性,可移植性和可复用性较差,

3、切相关的底层软件缺乏通用性,可移植性和可复用性较差,开发过程中缺少标准化、文档化的管理,给开发人员之间开发过程中缺少标准化、文档化的管理,给开发人员之间的交流以及日后系统的维护带来很大的困难的交流以及日后系统的维护带来很大的困难4.2 4.2 嵌入式硬件构件的基本思想与应用方法嵌入式硬件构件的基本思想与应用方法 什么是嵌入式硬件构件?什么是嵌入式硬件构件? 嵌入式硬件构件是指将一个或多个硬件功能模块、支撑电嵌入式硬件构件是指将一个或多个硬件功能模块、支撑电路及其功能描述封装成一个可重用的硬件实体,并提供一路及其功能描述封装成一个可重用的硬件实体,并提供一系列规范的输入系列规范的输入/ /输出接

4、口输出接口 接口的分类接口的分类 根据接口之间的生产消费关系,接口可分为两类根据接口之间的生产消费关系,接口可分为两类l提供接口提供接口l需求接口需求接口 硬件构件的分类硬件构件的分类 根据所拥有接口类型的不同,硬件构件分为三类根据所拥有接口类型的不同,硬件构件分为三类l核心构件核心构件: :只有提供接口,没有需求接口只有提供接口,没有需求接口l中间构件中间构件: :既有需求接口又有提供接口既有需求接口又有提供接口l终端构件终端构件: :终端构件只有需求接口终端构件只有需求接口类型类型需求接口需求接口提供接口提供接口举例举例核心构件无有AW60最小系统中间构件有有电源控制构件、232电平转换构

5、件终端构件有无LCD构件、LED构件、键盘构件核心构件、中间构件和终端构件的区别核心构件、中间构件和终端构件的区别4.3 4.3 基于硬件构件的嵌入式系统硬件电路设计基于硬件构件的嵌入式系统硬件电路设计4.3.1 4.3.1 设计时需要考虑的基本问题设计时需要考虑的基本问题 MCUMCU的选择的选择lMCUMCU功能、价格、功耗、供电电压、功能、价格、功耗、供电电压、I/OI/O口电平口电平l管脚数目、管脚数目、MCUMCU的封装、电气性能等因素的封装、电气性能等因素 电源电源l考虑系统对电源的需求考虑系统对电源的需求l考虑芯片与器件对电源波动性的需求考虑芯片与器件对电源波动性的需求l考虑工作

6、电源是使用电源模块还是使用外接电源考虑工作电源是使用电源模块还是使用外接电源 普通普通I/OI/O口口l上拉、下拉电阻上拉、下拉电阻l开关量输入。一定要保证高低电压分明开关量输入。一定要保证高低电压分明l开关量输出。高电平接近电源电压,低电平接近地电平开关量输出。高电平接近电源电压,低电平接近地电平 A/DA/D电路与电路与D/AD/A电路电路lA/DA/D电路:要清楚前端采样基本原理,对电阻型、电流型电路:要清楚前端采样基本原理,对电阻型、电流型和电压型传感器采用不同的采集电路和电压型传感器采用不同的采集电路lD/AD/A电路:考虑电路:考虑MCUMCU的引脚通过何种输出电路控制实际对象的引

7、脚通过何种输出电路控制实际对象 控制电路控制电路4.3.2 4.3.2 硬件构件化电路原理图绘制的简明规则硬件构件化电路原理图绘制的简明规则硬件构件设计的通用规则硬件构件设计的通用规则l元器件命名格式:对于核心构件,其元器件直接编号命名,元器件命名格式:对于核心构件,其元器件直接编号命名,同种类型的元件命名时冠以相同的字母前缀同种类型的元件命名时冠以相同的字母前缀l为硬件构件添加详细的文字描述,包括中文名称、英文名称、为硬件构件添加详细的文字描述,包括中文名称、英文名称、功能描述、接口描述、注意事项等,以增强原理图的可读性功能描述、接口描述、注意事项等,以增强原理图的可读性l将前两步产生的内容

8、封装在一个虚线框内,组成硬件构件的将前两步产生的内容封装在一个虚线框内,组成硬件构件的内部实体内部实体l为该硬件构件添加与其它构件交互的输入为该硬件构件添加与其它构件交互的输入/ /输出接口标识输出接口标识核心构件设计规则核心构件设计规则l核心构件设计的目标是:凡是使用该核心构件设计的目标是:凡是使用该MCUMCU进行硬件系统设计进行硬件系统设计时,核心构件可以直接时,核心构件可以直接“组装组装”到系统中,无须任何改动到系统中,无须任何改动电源控制构件电源控制构件可变频率产生构件可变频率产生构件LCDLCD构件构件键盘构件键盘构件中间构件设计规则中间构件设计规则l中间构件是核心构件与终端构件之

9、间通信的桥梁。中间构件是核心构件与终端构件之间通信的桥梁。l既要有接受其它构件提供的服务的接口,又要有为其他既要有接受其它构件提供的服务的接口,又要有为其他构件提供服务的接口构件提供服务的接口l将构件的需求接口放置在构件实体的左侧,提供接口放将构件的需求接口放置在构件实体的左侧,提供接口放置在右侧置在右侧终端构件设计规则终端构件设计规则l终端构件是嵌入式系统中最常见的构件。终端构件是嵌入式系统中最常见的构件。l有与上一级构件交互的需求接口,因而接口标识均为斜有与上一级构件交互的需求接口,因而接口标识均为斜体标注的接口注释。体标注的接口注释。l例如例如LCDLCD、LEDLED、指示灯构件、指示

10、灯构件使用硬件构件组装系统的方法使用硬件构件组装系统的方法 使用硬件构件化思想设计嵌入式硬件系统的过程是:使用硬件构件化思想设计嵌入式硬件系统的过程是:l根据系统的功能划分出若干个硬件构件根据系统的功能划分出若干个硬件构件l将所有硬件构件原理图将所有硬件构件原理图“组装组装”在一起在一起l为中间构件和终端构件添加接口网标为中间构件和终端构件添加接口网标4.3.3 PCB4.3.3 PCB设计基本原则设计基本原则布局规划布局规划l首先要打印出相应的原理图,确定整个首先要打印出相应的原理图,确定整个PCBPCB板的板的大体布局,即各个硬件构件的位置安排大体布局,即各个硬件构件的位置安排lPCBPC

11、B板的形状如无其他要求,一般为矩形,长宽板的形状如无其他要求,一般为矩形,长宽比为比为4:34:3或或3:23:2l考虑面板上元件的放置要求。考虑边缘接口考虑面板上元件的放置要求。考虑边缘接口元件放置元件放置l芯片尽可能正放。元件放置整齐。同一硬件构件芯片尽可能正放。元件放置整齐。同一硬件构件内的元件尽可能排放在一起内的元件尽可能排放在一起l电源模块的滤波电容要求靠近电源,考虑元件间电源模块的滤波电容要求靠近电源,考虑元件间的距离的距离lPLLPLL滤波电路应尽量靠近滤波电路应尽量靠近MCUMCU有关设定有关设定l导线尽可能宽,这样既可以减小阻抗,又可以防导线尽可能宽,这样既可以减小阻抗,又可

12、以防止由于制造工艺的原因导致导线断路止由于制造工艺的原因导致导线断路l导线间距离以及导线与元件间距离要尽可能地大,导线间距离以及导线与元件间距离要尽可能地大,这样可以有效解决焊接时短路的问题这样可以有效解决焊接时短路的问题l过孔大小设定要适中过孔大小设定要适中布线布线l布线时,应该首先对时钟和高速信号进行布线,布线时,应该首先对时钟和高速信号进行布线,以确保它们的走线尽可能直接以确保它们的走线尽可能直接l石英晶振和对噪声特别敏感的器件下面不要走线石英晶振和对噪声特别敏感的器件下面不要走线l布板完成后一定要进行自动与人工检查布板完成后一定要进行自动与人工检查测量点测量点l原理图中模块的输入输出引

13、脚原理图中模块的输入输出引脚l最小系统模块中最小系统模块中MCUMCU的引脚的引脚l各硬件功能模块单元的输入、输出口各硬件功能模块单元的输入、输出口模块标示模块标示lPCBPCB板上用矩形框将各个硬件构件区分开板上用矩形框将各个硬件构件区分开l并用汉字标出构件名(与原理图一致),并注意字体字号并用汉字标出构件名(与原理图一致),并注意字体字号铺地铺地l在铺地前,要设定地与导线、地与引脚之间的距离,并要在铺地前,要设定地与导线、地与引脚之间的距离,并要求该距离尽可能大求该距离尽可能大l如果电路板中有数字地和模拟地,应将它们隔离开,两者如果电路板中有数字地和模拟地,应将它们隔离开,两者间使用磁珠相

14、连间使用磁珠相连空余位置的利用空余位置的利用l电源、地,空白处多留几排电源和地电源、地,空白处多留几排电源和地l双排孔,留出几排两孔相连的排孔,以用来扩展双排孔,留出几排两孔相连的排孔,以用来扩展或试验时焊接其他元件或试验时焊接其他元件l固定孔,在固定孔,在PCBPCB上画固定板的固定孔,一般在板上画固定板的固定孔,一般在板的四个角落的四个角落标注相关信息标注相关信息l在完成在完成PCBPCB板的铺地之后,要在板的正面适当位板的铺地之后,要在板的正面适当位置标出以下信息置标出以下信息l单位、日期、责任人、单位、日期、责任人、PCBPCB板的名称、编号等板的名称、编号等4.4 4.4 基于硬件构

15、件的嵌入式底层软件构件的编程方法基于硬件构件的嵌入式底层软件构件的编程方法4.4.1 4.4.1 嵌入式硬件构件和软件构件的层次模型嵌入式硬件构件和软件构件的层次模型 嵌入式软件构件(嵌入式软件构件(Embedded Software Component, Embedded Software Component, ESCESC)是实现一定嵌入式系统功能的一组封装的、规)是实现一定嵌入式系统功能的一组封装的、规范的、可重用的、具有嵌入特性的软件单元,是组织范的、可重用的、具有嵌入特性的软件单元,是组织嵌入式系统的功能单位嵌入式系统的功能单位 嵌入式软件构件分为高层软件构件和底层软件构件嵌入式软件

16、构件分为高层软件构件和底层软件构件u高层构件与硬件无关高层构件与硬件无关u底层构件与硬件密不可分,是硬件驱动程序的封装底层构件与硬件密不可分,是硬件驱动程序的封装 中间构件和终端构件是核心构件的中间构件和终端构件是核心构件的“外设外设” “外设外设”的驱动程序封装而成的软件构件称为底层外的驱动程序封装而成的软件构件称为底层外设构件设构件嵌入式硬件构件与软件构件的层次模型嵌入式硬件构件与软件构件的层次模型4.4.2 4.4.2 底层构件的实现方法与编程思想底层构件的实现方法与编程思想头文件和源程序文件两部分组成头文件和源程序文件两部分组成对构件的共性和个性进行分析,抽取出构件的属性和对对构件的共

17、性和个性进行分析,抽取出构件的属性和对外接口函数外接口函数在编写构件时,主要注意以下几方面的内容在编写构件时,主要注意以下几方面的内容: :l构件的头文件和源程序文件的主文件名一致,且为构件名构件的头文件和源程序文件的主文件名一致,且为构件名l属性和操作的命名统一以构件名开头属性和操作的命名统一以构件名开头l对对MCUMCU内的模块寄存器名和端口名进行重定义内的模块寄存器名和端口名进行重定义l内部函数与外部函数要设计合理,函数参数个数及类型要内部函数与外部函数要设计合理,函数参数个数及类型要考虑全面考虑全面l应用程序在使用底层构件时,严格禁止通过全局变量来传应用程序在使用底层构件时,严格禁止通

18、过全局变量来传递参数,所有的数据传递都要通过函数的形式参数来接收递参数,所有的数据传递都要通过函数的形式参数来接收4.4.3 4.4.3 硬件构件及底层软件构件的重用与移植方法硬件构件及底层软件构件的重用与移植方法移植是指将一个系统中使用到的构件应用到另外一个系统移植是指将一个系统中使用到的构件应用到另外一个系统中。中。硬件构件的重用与移植硬件构件的重用与移植l以终端构件以终端构件LCDLCD为例,介绍硬件构件的移植方法为例,介绍硬件构件的移植方法底层构件的移植底层构件的移植l以以SCISCI和和LCDLCD为例介绍底层构件的移植方法为例介绍底层构件的移植方法在进行软硬件移植时,设计人员所做的改动要尽量小,而在进行软硬件移植时,设计人员所做的改动要尽量小,而不是不作任何改动不是不作任何改动第第4 4章习题章习题1 1简要阐述嵌入式硬件构件的基本思想及优点。简要阐述嵌入式硬件构件的基本思想及优点。2 2硬件构件如何分类?给出各类硬件构件的定义及原理图设计硬件构件如何分类?给出各类硬件构件的定义及原理图设计 要点。要点。3 3为什么要将某些寄存器名和寄存器位在头

温馨提示

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

评论

0/150

提交评论