单片机设计实例
4
耦电容器。若一个单片机系统中有很多块线路板,则一般应在电源和地线的引入处附近并接一 个 10µf~100µf 的电解电容和一个 0.01µf~0.lµf 无极性电容。大功率器件和逻辑器件使用 不同的电源。对直流输出驱动器来说,大电流直流信号线应采用外接线,采用独立的直流电源 来提供电流。
这步一般由外协单位完成。 ● 安装元器件并调试
当器件安装和调试成功后,单片机应用系统的硬件设计就算基本完成了。 (2) 软件设计 ● 软件结构设计 当硬件设计完成后,就能够具体明确软件的设计要求。软件结构设计的任务就是划分程序 功能模块,把功能相对独立的程序划分成一个功能模块是一种常用的方法,如数据采集、数字 滤波、标度转换、数码显示出现模块等。模块划分后,进一步明确各模块之间的关系。考虑一 个系统的最后归档也需要详细的流程图,所以无论模块简单还是复杂,都有必要画出各模块的 流程图。 ● 选择开发平台(语言) 程序设计语言对程序设计效率有重大影响。汇编语言是最为常用的一种程序设计语言,用 它编写的程序代码精简,直接面向硬件。但汇编语言的编程效率低下,不易缩短产品或系统的 开发周期。现在普遍采用的单片机系统开发语言是 C51,如 Keil C51 或 Franklin C51 等,其中
1
述某些步骤,直至满足需求。 ⑥ 产品验收和维护 单片机应用系统设或产品开发结束后,必须经过用户的验收。属于国家或部委的科研项目,
还应通过有关部门的鉴定。产品投入市场用户生产现场后,维护工作就开始了,这步工作一 直要持续到该产品退出市场。
⑦ 文档编制和技术归档 为了维护单片机系统,或将目前的设计成果作为资源用于以后的设计,有必要编制相应的 文档。提供给用户的安装手册、操作手册和维护手册等,是技术文档的重要组成部分之一。技 术文档必须按国家标准对其进行标准化,经相关人员审核后存入技术档案室进行统一管理。
7.1.3 硬件设计和软件设计
(1) 硬件设计 ● 选择合适的器件 选择器件时应考虑其性能是否满足设计需求,是否具有良好的技术支持和文档支持,是否 具有良好的性价比等,其核心是单片机的选型。在大多情况下,理应选择性价比高的单片机及 其它器件,但在某些特殊场合,当性能成为决定因素时,应以性能优先原则选择所需的单片机 或其它器件。单片机应用系统中需要用到较多的芯片,如 A/D、D/A、EEPROM 等,所以应 优先考虑选用高集成度的单片机,这样可以从总体上降低系统的成本。如果所选的单片机没有 集成这些部件,在选择 A/D、D/A 等芯片时应考虑其性能是否满足需求,还应考虑他和 CPU 的接口关系等。 ● 内存配置设计 内存配置应遵循宁大勿小的原则,因为不同容量的内存在价位上比较接近。对于 MCS-51 单片机系统,要么不外扩内存,要么就扩展 32KB/64KB 程序 ROM 或数据 RAM。 ● 接口设计 包括输入/输出通道的设计、人机接口设计、通信接口设计等。 ● 原理图设计 完成上述各项设计后,应使用 Protel 或其它类似软件将文字设计变换成原理图设计,必要 时还应使用仿真功能对原理图进行仿真,以确保原理图的正确性。 ● 板图设计 完成原理图设计后,可以使用 Protel 将原理图转换成 PCB 图,并根据 PCB 设计规则和系 统的布线要求对自动生成的 PCB 作必要的调整,形成一个可用的 PCB 图。 ● 加工 PCB
7.1.2 需求分析与总体方案设计
确定单片机应用系统的需求分析和总体方案设计,是单片机系统设计的重要环节。 (1) 需求分析 需求分析包括的主要内容如下: ● 输入信号:系统所要检测的信号类型、精度要求、信号的变换速率以及信号的量程大 小等,以便在方案设计中确定检测元件、检测方法、输入通道的结构和技术等。 ● 输出信号:系统所要输出的信号类型、精度要求、信号制式、功率大小等,以便在方 案设计中确定模拟量、开关量输出通道的结构和输出方式。 ● 系统结构:确定是设计的标准产品还是非标产品,是单 CPU 结构还是多 CPU 结构, 是否可以构成通信网路,是否挂靠某种网络标准或现场总线标准等。 ● 控制精度:如果系统具有控制功能,应明确系统的控制精度,以便于在方案设计确定 所要采用的数字滤波算法、控制算法和各类校正算法等。 ● 系统接口:选择菜单接口还是图形接口,按键输入还是触摸屏输入,以便在方案设计 中确定操作方式、参数设置和存储方式、手/自动方式及其切换等。 ● 扩充设计:确定系统是否需要扩充,扩充的形式等。 ● 可靠性设计:确定系统达到何种可靠性指标,以便在方案设计时确定采取何种可靠性 设计手段、抗干扰设计技术等。 在工业控制领域应用的单片机系统可以称为单片机控制系统,这类控制系统的设计还应考 虑实时性需求、生产设备、生产工艺过程和配套电气设备等因素。 (2) 总体方案设计 总体方案设计要从宏观上解决“怎样做”的问题。按照由简到繁的原则,一般先进行总体 设计。系统的总体设计方案要解决的是:系统采用何种方法、以怎样的结构组成,以及功能模 块的具体划分,彼此间的关系,指标的分解等问题等。 ● 确定技术途径:单片机应用系统也有大小之分,不同层次的应用系统可以采用委托设 计、自行设计或二者结合等设计途径。 ● 确定技术方法:技术方法是指为实现单片机系统功能目标而准备采用的可行的技术手 段,包括高性能器件、合适的开发平台、开发语言、软件算法等。 ● 划分子系统和主要功能块:确定了系统的技术途径和主要技术方法后,就可针对系统 的需求,逐步确立系统的体系结构,进行主要功能的划分,确定完成各主要功能的系统,确定 各系统的相应功能技术指标和各子系统之间的接口关系。 ● 确定系统组成框图:用结构框图表示系统(硬件、软件)的体系结构,图中要标明系统 各部分的组成结构、各部分之间的接口方式、系统与外界的接口等。 ● 系统的综合与检查:当系统的指标逐项得到分解、各子系统的功能指标均已落实、系
2
统体系已经建立之后,设计者有必要从系统总体的角度出发,对各子系统进行综合性分析,检 查各模块的功能合成后能否达到系统的功能需求。
系统的总体方案反映了整个系统的综合情况,要从正确性、可行性、先进性、可用性和经 济性等角度来评价系统的总体方案。只有当拟定的总体方案能满足上述基本要求后,设计好的 目标系统才有可能符合这样的基本要求。总体方案通过之后,才能为各子系统的设计与开发提 供一个指导性的文件。
3
前者的使用人员较多,有较好的技术支持。 ● 软件设计的一些重要原则 适当地使用软件陷阱、指令冗余等可靠性设计技术;对开关量的输出/输出尽量使用 PLC
普遍采用的扫描技术;使用数字滤波技术、先进成熟的控制算法提高信号抗扰能力和系统的控 制精度;采用合理的数据结构来简化数据的存储和检索;充分利用好系统的资源,特别是单片 机的内部功能部件;软件模块的划分力求做到模块内部的高内聚和模块之间的低偶合。
声;按传导方式可以将噪声分为串模噪声和共模噪声。按噪声信号的波形及性质可以将噪声分 为持续正弦波噪声、偶发脉冲波噪声和脉冲序列噪声三种。
(2) 噪声信号的偶合方式 干扰信号主要有 6 种耦合方式。一是直接偶合方式:干扰信号直接经过线路传导到工作电 路中。例如,干扰信号经过电源线进入单片机系统是最常见的直接偶合现象。二是公共阻抗耦 合方式:是噪声源与信号源具有公共阻抗时的传导耦合。三是电容耦合方式:是电位变化在干 扰源与干扰对象之间引起的静电感应,如组件之间、导线之间、导线与组件之间存在的分布电 容所引起的噪声传导通路。四是电磁感应耦合方式:交变电流在载流导体周围产生磁场,会对 周围的闭合电路产生感应电动势。五是辐射耦合方式:当高频电流流过导体时,在该导体周围 便产生高频交变的电力线或磁力线,从而形成电磁波。六是漏电耦合方式:当相邻的组件或导 线之间的绝缘阻抗降低时,有些信号便经过绝缘电阻耦合到逻辑组件的输入端形成干扰。 无论何种干扰源,一般是通过传导和直接辐射两种途径进入单片机系统中的。例如,通过 容性耦合或感性耦合把电磁场干扰直接辐射到单片机系统中;通过输入输出信号线、电源线和 地线,再把干扰传导到单片机系统中。 (3) 串模干扰的抑制措施 若串模干扰频率比被测信号频率高,则采用低通滤波器来抑制高频串模干扰。如果串模干 扰频率比被测频率低,则采用高通滤波器来抑制低频率串模干扰。如果干扰频率处于被测信号 频谱的两侧,则使用带通滤波器较为适宜。当尖峰型串模干扰成为主要干扰源,系统对采样速 率要求不高时,使用双斜率积分式模/数转换器可以削弱串模干扰的影响。在电磁感应成为串 模干扰的主要干扰源的情况下,对被测信号应尽可能早地进行前置放大,或尽可能早地完成模 /数变换,或采用隔离和屏蔽等措施。如果串模干扰的变化速度与被测信号相当,则应消除产 生串模干扰的根源,并在软件中使用数字滤波技术。 (4) 共模干扰的抑制措施 共模干扰的抑制可以采用变压器或光电耦合器把各种模拟信号与数字信号隔离开来,也就 是把“模拟地”与“数字地”断开。也可以采用浮空输入和屏蔽放大器来抑制共模干扰。使用 差分输入前置放大器、仪表放大器、较好稳压电源等也有利于提高共模抑制比。 (5) 电源回路的抗干扰措施 板卡上的每块集成电路芯片的电源与地线引入端之间接一个容量为 0.01µf~0.lµf 的去
7.2 单片机系统的可靠性设计
单片机系统的可靠性可以用平均无故障时间 MTBF 和平均修复时间 MTTR 来度量,MTBF 应尽可能大,而 MTTR 应尽可能小。系统的可靠性设计包括的内容十分广泛,其中系统的抗 干扰设计是可靠性设计的主要内容。
7.2.1 单片机系统的抗干扰设计 (1) 干扰源及分类 干扰源又称为噪声。按产生噪声的原因可以将噪声分为放电噪声、高频振荡噪声和浪涌噪
第7章 单片机应用系统设计与开发
本章基本要求:通过对本章的学习主要了解一个单片机系统设计的全过程,包括:提出要求、 方案确定、硬件设计、软件设计、系统可靠性设计及最后的调试通过、产品定型等。
7.1 单片机应用系统设计概述
7.1.1 设计要求与设计步骤
(1) 设计要求 单片机应用系统大多数用于工业环境、嵌入到其它设备或作为部件组装到某种产品中,所 以单片机应用系统的设计应满足以下要求: ● 高可靠性 ● 较强的环境适应能力 ● 较好的实时性 ● 易于操作和维护 ● 具有一定的可扩充性 ● 具有通信功能 (2) 设计步骤 单片机不同应用系统的开发过程基本相似,其一般步骤可以分为需求分析,总体方案设计、 硬件设计与调试、软件设计与调试、系统功能调试与性能测试、产品验收和维护、文件编制和 技术归档等。 ① 需求分析 需求分析就是要明确所设计的单片机应用系统要“做什么”和“做的结果怎样”。需求分 析阶段的结果是形成可操作的设计需求任务书。任务书应包含单片机应用系统所应具有的功能 特性和性能指标等主要内容。如果是自主开发产品,还应附有市场调研和可行性论证等内容; 如果是委托开发,则应该与委托方讨论拟制的需求任务书是否满足对方的需求。 ② 总体方案设计 总体方案设计就是要从宏观上解决“怎么做”的问题。其主要内容应包括:技术路线或设 计途径、采用的关键技术、系统的体系结构、主要硬件的选型和加工技术、软件平台和开发语 言、测试条件和测试方法、验收标准和条文等。如果是委托开发,设计需求任务书和总体方案 设计的主要内容往往以技术文件的形式附于合同书之后。 ③ 硬件设计 硬件设计的主要内容是基于总体方案设计,选择系统所需的各类元器件、设计系统的电子 线路图和印刷电路板、安装元器件的调试硬件线路。硬件设计应确保功能设计和接口设计满足 系统的需求,并且充分考虑和软件的协调工作关系,注重选用高集成度的器件和采用硬件软化、 软件硬化等设计技术。 ④ 软件设计 本阶段的主要任务是:基于软件工程的思想,拟制出本系统的软件设计方案,划分出主要 的软件模块、根据需要绘制部分软件模块的流程图、调试程序和测试软件的基本功能。 ⑤ 系统功能调试与测试 本阶段的重点是:基于系统的设计需求,进行系统功能调试和性能指标的测试,形成测试 报告,核对用户需求或设计需求和系统现有功能、指标的一致性程度,提出修改意见,循环上