




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第13章应用系统的设计与调试 通常 开发一个单片机应用系统需要经过以下几个过程 系统需求调查 可行性分析 系统方案设计 系统建造 系统调试 系统方案局部修改 再调试 生成正式产品 1 系统需求调查做好详细的系统需求调查是对研制新系统准确定位的关键 当你建造一个新的单片机应用系统时 首先要调查市场或用户的需求 了解用户对未来新系统的希望和要求 通过对各种需求信息进行分析综合 得出市场或用户是否需要新系统的结论 其次 应对国内外同类系统的状况进行调查 调查的主要内容包括 原有系统的结构 功能以及存在的问题 国内外同类系统的最新发展情况以及与新系统有关的各种技术资料 同行业中哪些用户已经采用了新的系统 它们的结构 功能 使用情况以及所产生的经济效益 经过需求调查 整理出需求报告 作为系统可行性分析的主要依据 显然 需求报告的准确性将左右可行性分析的结果 2 可行性分析可行性分析将对新系统开发研制的必要性及可实现性给出明确的结论 根据这一结论决定系统的开发研制工作是否进行下去 可行性分析通常从以下几个方面进行论证 市场或用户需求 经济效益和社会效益 技术支持与开发环境 现在的竞争力与未来的生命力 3 系统方案设计系统方案设计是系统实现的基础 这项工作要十分仔细 考虑周全 方案设计的主要依据是市场或用户的需求 应用环境状况 关键技术支持 同类系统经验借鉴及开发人员设计经验等 主要内容包括 系统结构设计 系统功能设计 系统实现方法 4 系统建造这一阶段的工作是将前面产生的系统方案付诸实施 将硬件框图转化为具体电路 软件流程用程序加以实现 设计硬件电路时 单片机的选用对电路结构及复杂度有较大影响 一个合适的单片机将会最大限度地降低其外围连接电路 从而简化整个系统的硬件 5 系统调试系统调试检验所设计系统的正确与可靠 从中发现组装问题或设计错误 这里所指的设计错误 是指设计过程中所出现的小错误或局部错误 决不允许出现重大错误 6 系统方案局部修改 再调试对于系统调试中发现的问题或错误以及出现的不可靠因素要提出有效的解决方法 然后对原方案做局部修改 再进入调试 7 生成正式系统 或产品 作为正式系统 或产品 不仅要提供一个能正确可靠运行的系统 或产品 而且还应提供关于该系统 或产品 的全部文档 这些文档包括系统设计方案 硬件电原理图 软件程序清单 软 硬件功能说明 软 硬件装配说明书 系统操作手册等 在开发产品时 还要考虑到产品的外观设计 包装 运输 促销 售后服务等商品化问题 一 单片机系统设计的基本要求 二 单片机应用系统的组成 三 应用系统的研制开发过程 四 综合设计实例 一 单片机系统设计的基本要求 1 可靠性要高 应选用可靠性高的元器件 以防止器件的损坏影响系统的可靠运行 选用典型电路 排除电路的不稳定因素 采用必要的冗余设计或增加系统的故障自检测和自处理功能 采取必要的抗干扰措施 以防止环境干扰 2 操作维修要方便 系统结构要规范化 模块化 系统的控制开关不能太多 不能太复杂 操作顺序简单明了 操作功能简明直观 易于查找故障和排除故障 3 性能价格比要高优化系统设计 简化外围硬件电路 或采用硬件软化技术提高系统的性能价格比 4 具有自我保护意识应考虑软件具有加密功能 使固化到单片机内的用户程序不能被非法读出或复制 9 2 2单片机的选型原则 1 单片机的系统适应性所谓系统适应性是指能否用这个单片机完成对应用系统的控制任务 主要考虑以下几点 是否有所需的I O端口数 是否有所需的中断源及定时器 是否有所需的外围端口部件 是否有合适的计算处理能力 是否有足够的极限性能 Q 单片机的选购 2 单片机的可开发性开发环境包括汇编程序 编译 连接程序 调试工具包括在线仿真器 逻辑分析工具 调试监控程序 在线BBS服务包括实时执行 应用案例 缺陷故障报告 实用软件 样本源码 应用支持包括是否存在专职的应用支持机构 是否存在应用工程师及销售人员的支持 支持人员的学识水平如何 是否有便利的通信工具 是否及时得到支持 3 制造商历史及可购买性 产品的性价比以及是否可靠 购买途径是否顺畅 供货量是否充足稳定 是否停产 是否在改进之中 总结依据上述三个原则进行单片机的选型 应可以选择出最能适用于具体应用系统的单片机 同时可以保证应用系统具有高可靠性 高性价比 高使用寿命及可升级换代性 Q 抗干扰技术 所谓干扰 一般是指有用信号以外的噪声 在信号输入 传输和输出过程中出现的一些有害的电气变化现象 这些变化迫使信号的传输值 指示值或输出值出现误差 出现假像 干扰对电路的影响 轻则降低信号的质量 影响系统的稳定性 重则破坏电路的正常功能 造成逻辑关系混乱 控制失灵 供电系统及过程通道的抗干扰措施 在印制电路板设计中体现的抗干扰措施 软件陷阱及看门狗电路 1 供电系统及过程通道的抗干扰措施 供电系统的干扰电源开关的通断 电机和大的用电设备的启停会使供电电网发生波动 受这些因素的影响 电网上常常出现几百伏 甚至几千伏的尖峰脉冲干扰 这就会使同一电网供电的单片机控制系统无法正常运行 这种干扰是危害最严重也是最广泛的一种干扰形式 抗干扰措施 单片机输入电源与强电设备动力电源分开 采用具有静电屏蔽和抗电磁干扰的隔离电源变压器 交流进线端加低通滤波器 可滤掉高频干扰 安装时外壳要加屏蔽并使其良好接地 滤波器的输入 输出引线必须相互隔离 以防止感应和辐射耦合 直流输出部分采用大容量电解电容进行平滑滤波 对于功率不大的小型或微型计算机系统 为了抑制电网电压起伏的影响 可设置交流稳压器 采用独立功能块单独供电 并用集成稳压块实现两级稳压尽量提高接口器件的电源电压 提高接口的抗干扰能力 例如用光耦合器输出端驱动直流继电器 选用直流24V继电器比6V继电器效果好 过程通道的干扰过程通道是系统输入 输出以及单片机之间进行信息传输的路径 由于输入输出对象与单片机之间的连接线长 容易串入干扰 必须采用隔离技术 双绞线传输 阻抗匹配等措施抑制 在开关量输入时 采集某一状态信号时 可多次重复采集 直到连续两次或多次采集结果完全一致时才可视为有效 在开关量输出时 重复输出同一数据 只要有可能 重复周期应尽量短 外部设备接收到一个被干扰的错误信息后 还来不及作出有效的反映 一个正确的输出信息又到来 就可以及时地防止错误动作的产生 空间电磁波的干扰 单片机应用系统电磁干扰与抗干扰技术 北京航空航天大学出版社王幸之王雷钟爱琴王闪 2 在印制电路板设计中体现的抗干扰措施 印制电路板大小要适中噪声元件与非噪声元件要离得远一些 易产生噪声的器件 小电流电路 大电流电路等应尽量远离计算机逻辑电路 如有可能 应另做电路板 I O驱动器件 功率放大器件尽量靠近印制电路板的边缘 靠近引出接插件 器件的布置上也应考虑到散热 最好把ROM RAM 时钟发生器等发热较多的器件布置在印制板的偏上方部位 当印制板竖直安装时 或易通风散热的地方正确处理电源线根据印制线路板电流的大小 尽量加粗电源线宽度 减少环路电阻 同时 使电源线 地线的走向和数据传递的方向一致 电源线和地线最好分别设计在不同的版面上 以防杂物引起短路 正确处理地线 3 软件陷阱及看门狗电路 所谓软件陷阱 是指一些可以使混乱的程序恢复正常运行或使 跑飞 的程序恢复到初始状态的 系列指令NOPNOPLJMPERP适用范围 双字节指令和3字节指令之后 0003H 0030H地址未使用的中断区 跳转指令及子程序调用和返回指令之后 程序段之间的未用区域 数据表格及散转表格的最后 每隔一些指令 一般为十几条指令 后 软件陷阱 当未使用的中断因干扰而开放时 在对应的中断服务程序中设置软件陷阱 就能及时捕捉到错误的中断 未使用的中断区 ORG0000HSTART LJMPMAINORG0003HLJMPINT0 PRG 转中断服务子程序NOP 抗干扰处理NOPLJMPERR 转错误处理子程序ORG000BHLJMPT0 PRG 转T0中断服务子程序NOP 抗干扰处理NOPLJMPERR 转错误处理子程序 单片机系统中使用的EPROM很少能够全部用完 这些非程序区可用0000020030或020030填满 假设ERP安排在0030开始的地方 当程序 跑飞 进入此区后 便会迅速自动入轨 未使用的EPROM空间 单片机系统寻址空间为64K 如果系统仅选用了一片2764 其地址空间为8K 那么还有56K地址空间闲置 当程序 跑飞 到这些空间时 读入数据将为FFH 这是 MOVR7 A 指令的机器码 此代码的执行将修改R7中的内容 因此 可采用图所示电路来避免 图中74LS08为四二与门 当PC落入2000H FFFFH这段闲置空间时 定有为高电平 当执行取指令操作时 为低电平 从而引起中断 在中断服务程序中设置软件陷阱可将 跑飞 的程序迅速拉入正轨 非EPROM芯片空间 由于程序是采用模块化的设计方法 因此 程序也是以模块方式运行的 此时可以将陷阱指令组分散放置在用户程序各模块之间空余的单元里 一般每1K字节有几个陷阱就够了 在正常程序中不执行这些陷阱指令 保证用户程序正常运行 但当程序 跑飞 时 一旦落入这些陷阱区 马上就可将 跑飞 的程序拉到正确轨道 运行程序区 设用户主程序运行区间为add1 add2 且定时器T0产生10ms定时中断 当程序 跑飞 落入add1 add2以外的区间 此时又发生了定时中断 则可在中断服务程序中判定中断断点地址addx是否在add1 add2之间 若不在则说明发生了程序 跑飞 应使程序返回到复位入口地址0000H 使跑飞程序纳入正轨 中断服务程序区 看门狗 程序运行监视系统又称 看门狗 WATCHDOG 看门狗 可以用硬件电路实现 也可采用软件技术通过内部定时 计数器实现 目前 大多数单片机片内都集成有程序运行监视系统 在MAX706内部有一个定时器 它独立工作于单片机之外 若单片机正常工作 每隔一段时间就通过P1 1向 看门狗 输出一个脉冲 使 看门狗 电路复位 看门狗 从0开始重新计数 但当单片机由于干扰等原因不能正常向 看门狗 电路输出复位脉冲时 如果 看门狗 的定时时间已到 MAX706的端就会输出一个脉冲给单片机 使单片机复位 使其从故障状态恢复正常 硬件 看门狗 软件 看门狗 基本思路是 在主程序中对定时器T0中断服务程序进行监视 在定时器T1中断服务程序中对主程序进行监视 定时器T0中断监视定时器T1中断 对T0设定一定的定时时间 当产生定时中断的时候对一个变量进行赋值 而这个变量在主程序运行的开始已经有了一个初值 在这里我们要设定的定时值要小于主程序的运行时间 这样在主程序的尾部对变量的值进行判断 如果值发生了预期的变化 就说明T0中断正常 如果没有发生变化则使程序复位 对于T1我们用来监控主程序的运行 我们给T1设定一定的定时时间 在主程序中对其进行复位 如果不能在一定的时间里对其进行复位 T1的定时中断就会使单片机复位 在这里T1的定时时间要设的大于主程序的运行时间 给主程序留有一定的的裕量 而T1的中断正常与否我们再由T0定时中断子程序来监视 任何单片机应用系统都由硬件和软件两大部分组成 1 硬件组成硬件由单片机 存储器 若干I O接口及外围设备等组成 二 单片机应用系统的组成 整个系统的核心部件 能运行程序和处理数据 用于存储单片机程序 程序存储器 及数据 数据存储器 I O接口是单片机与外部被控对象的信息交换通道 包括以下几部分 数字量 频率 脉冲等 I O接口开关量 继电器开关 无触点开关 电磁阀等 I O接口模拟量I O接口 A D或D A转换电路 通用外部设备是进行人 机对话的联系纽带 包括以下几部分 键盘用于输入数据及修改系统参数等 显示器用于显示控制系统工作状态及各种被测参数 打印机用于打印各种待分析及处理的数据或图表 检测与执行机构检测单元用于将各种被测参数转变成电量信号 供计算机处理 一般采用传感器实现 执行机构用于驱动外部被控对象 一般有电动 气动和液压等驱动方式 2 软件组成软件主要由应用软件和开发软件两大类构成 1 应用软件是由软件设计者提供的 针对不同单片机控制系统功能所编写的软件 专门用于对整个单片机系统的管理和控制 2 开发软件是指在开发 调试控制系统时使用的软件 如汇编程序 编译程序 调试和仿真程序 固化程序等 三 应用系统的研制开发过程 1 确定总体设计方案 1 硬件设计 任务 根据总体设计要求 设计系统的硬件电路原理图 并初步设计印制电路板等 主要内容 单片机系统扩展 如存储器扩展 I O接口扩展 中断系统扩展等 系统配置 如键盘 显示器 打印机 A D或D A转换等 单片机系统扩展及配置应遵循的原则 尽量选用典型通用的电路 系统扩展及配置应留有余地 以便于今后的系统扩充 硬件结构应结合软件考虑 尽可能用软件代替硬件 简化硬件结构 应选用性能匹配且功耗低的器件 适当考虑CPU的总线驱动能力 注意可靠性及抗干扰设计 2 软件设计 系统定义定义各输入 输出端口地址及工作方式 分配主程序 中断程序 表格 堆栈等存储空间 软件结构设计常用的程序设计方法有模块化程序设计 自顶向下逐步求精程序设计 结构化程序设计三种 建立数学模型用于描述各输入变量和输出变量之间的数学关系并确定算法 绘制程序流程图根据系统功能 操作过程 软件结构及算法进行绘制 编写程序依据流程图选择适合的语言来编写主程序及各功能模块程序 汇编与调试将编写好的用户程序汇编成机器码 并利用仿真器进行调试和修改 硬件调试是利用开发系统 基本测试仪器 万用表 示波器等 通过执行开发系统有关命令或测试程序 检查用户系统硬件中存在的故障 它又可分为静态调试和动态调试两步 静态调试即用户系统未工作时的一种硬件检查 一般采用目测 万用表测试 加电测试等方法对印制电路板及各芯片 器件进行检查 动态调试是在用户系统工作时发现和排除硬件故障的一种硬件检查 其一般方法是先进行各单元电路调试再进行全系统调试 2 仿真调试仿真调试分硬件调试 软件调试和系统联调三个阶段 1 硬件调试 2 软件调试软件调试是通过对用户程序的汇编 连接 执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程 软件调试的一般方法是先独立后联机 先分块后组合 先单步后连续 3 系统联调系统联调是指让用户系统的软件在其硬件上实际运行 并进行软 硬件联合调试 3 程序固化及独立运行4 文件编制阶段文件应包括 任务描述 设计的指导思想及设计方案论证 性能测定及现场试用报告与说明 使用指南 软件资料 流程图 子程序使用说明 地址分配 程序清单 硬件资料 电路原理图 元件布置图及接线图 接插件引脚图 印制线路板图 注意事项等 四 综合设计实例 水温控制是经常遇到的过程控制 下面介绍以89C51为核心的水温控制系统的设计 本系统采用3位LED显示器显示水温度 温度控制采用改进的PID数字控制算法 具有如下基本功能 1 温度控制的设定范围为25 50 最小分辨率为0 1 2 偏差 0 6 静态误差 0 4 3 实时显示当前的温度值 4 命令按键5个 复位键 功能转换键 加1键 减1键 1 硬件电路设计硬件电路从功能模块上来划分有 主机电路数据采集电路键盘 显示电路控制执行电路 键盘共有4个键 采用软件查询和外部中断相结合的方法来设计 当某个键按下时 低电平有效 4个键K1 K4的定义 2 软件设计模块化设计 三大模块 主程序模块 功能实现模块和运算控制模块 2 功能实现模块 T1中断子程序 键盘中断子程序 T0中断子程序 3 运算控制模块 标度变换子程序 PID算法子程序 1 主程序模块 Q 通常采用什么方法来测试单片机系统的可靠性 单片机系统可以分为软件和硬件两个方面 我们要保证单片机系统可靠性就必须从这两方面入手 首先在设计单片机系统时 就应该充分考虑到外部的各种各样可能干扰 尽量利用单片机提供的一切手段去割断或者解决不良外部干扰造成的影响 当一个单片机系统设计完成 对于不同的单片机系统产品会有不同的测试项目和方法 但是有一些是必须测试的 测试单片机软件功能的完善性 这是针对所有单片机系统功能的测试 测试软件是否写的正确完整 上电掉电测试 在使用中用户必然会遇到上电和掉电的情况 可以进行多次开关电源 测试单片机系统的可靠性 老化测试 测试长时间工作情况下 单片机系统的可靠性 必要的话可以放置在高温 高压以及强电磁干扰的环境下测试 ESD和EFT等测试 可以使用各种干扰模拟器来测试单片机系统的可靠性 例如使用静电模拟器测试单片机系统的抗静电ESD能力 使用突波杂讯模拟器进行快速脉冲抗干扰EFT测试等等 当然如果没有此类条件 可以模拟人为使用中 可能发生的破坏情况 例如用人体或者衣服织物故意摩擦单片机系统的接触端口 由此测试抗静电的能力 用大功率电钻靠近单片机系统工作 由此测试抗电磁干扰能力等 Q 在开发单片机的系统时 具体有那些是衡量系统的稳定性的标准 从工业的角度来看 衡量系统稳定性的标准有很多 也针对不同的产品标准不同 下面我们大概介绍单片机系统最常用的标准 电试验 ESD 参考标准 IEC61000 4 2本试验目的为测试试件承受直接来自操作者及相对对象所产生之静电放电效应的程度 空间辐射耐受试验 RS 参考标准 IEC61000 4 3本试验为验证试件对射频产生器透过空间散射之噪声耐受程度 测试频率 80MHz 1000MHz快速脉冲抗扰测试 EFT B 参考标准 IEC61000 4 4本试验目的为验证试件之电源线 信号线 控制线 遭受重复出现之快速瞬时丛讯时之耐受程度 雷击试验 Surge 参考标准 IEC61000 4 5本试验为针对试件在操作状态下 承受对于开关或雷击瞬时之过电压 电流产生突波之耐受程度 传导抗扰耐受性 CS 参考标准 IEC61000 4 6本试验为验证试件对射频产生器透过电源线传导之噪声耐受程度 测试频率范围 150kHz 80MHzImpulse脉冲经由耦合注入电源线或控制线所作的杂抗扰性试验 Q 在很多情况下 以单片机为主控制器的测量系统要长时间保持无故障运行 因此其自诊断就成为关键 要保证系统可以长时间故障运行 防止干扰是很重要的 最有效的方法是去除干扰源 隔断干扰路径 但往往很难做到 所以只能看单片机抗干扰能力够不够强了 单片机干扰最常见的现象就是复位 至于程序跑飞 其实也可以用软件陷阱和看门狗将程序拉
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论