数字电压表课程设计.doc_第1页
数字电压表课程设计.doc_第2页
数字电压表课程设计.doc_第3页
数字电压表课程设计.doc_第4页
数字电压表课程设计.doc_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

东 北 石 油 大 学 课 程 设 计 2009 年 7 月 10 日 课 程 硬件课程设计 题 目 数字电压表设计 院 系 计算机与信息技术学院 专业班级 计算机科学与技术 10 6 班 学生姓名 张乃元 学生学号 100702140614 指导教师 李 冰 东北石油大学课程设计任务书 课程 硬件课程设计 题目 数字电压表设计 专业 计算机科学与技术 姓名 张乃元 学号 100702140614 主要内容 基本要求等 一 主要内容 利用 EL 教学实验箱 微机和 Quartus 软件系统 使用 VHDL 语言输入方法 设计数字钟 可以利用层次设计方法和 VHDL 语言 完成硬件设计设计和仿真 最后在 EL 教学实验箱中实现 二 基本要求 1 A D 转换接口电路的设计 负责对 ADC0809 的控制 2 编码转换电路设计 负责把从 ADC0809 数据总线中读出的电压转换成 BCD 码 3 输出七段显示电路的设计 负责将 BCD 码用 7 段显示器显示出来 三 扩展要求 1 当测量结束后 蜂鸣器鸣响 10 声 四 参考文献 1 李朝清 单片机原理及技术接口 M 出版社 北京航空航天大学出版社 出版 时间 2011 年 6 月第 17 次印刷 2 康华光 邹寿彬等 电子技术基础数字部分 M 出版社 高等教育出版社 3 康华光 张林 电子技术基础模拟部分 M 出版社 高等教育出版社 4 吴金戌 郭庭吉 8051 单片机实践与应用 M 北京 清华大学出版社 2002 5 张国勋 缩短 ICL7135A D 采样程序时间的一种方法 J 电子技术应用 1993 完成期限 2 周 指导教师 李冰 专业负责人 富宇 2012 年 6 月 10 日 摘 要 本文阐述了 EDA 技术的基本特征及关键技术 介绍了 EDA 工具软件和硬件 描述语言 分析了 EDA 技术的现状及发展趋势 EDA 是电子设计自动化 Electronic Design Automation 的缩写 由于它是一门刚刚发展起来的新技术 涉 及面广 内容丰富 理解各异 所以目前尚无一个确切的定义 但从 EDA 技术 的几个主要方面的内容来看 可以理解为 EDA 技术是以大规模可编程逻辑器件 为设计载体 以硬件描述语言为系统逻辑描述的主要表达方式 以计算机 大规 模可编程逻辑器件的开发软件及实验开发系统为设计工具 通过有关的开发软件 自动完成用软件的方式设计电子系统到硬件系统的一门新技术 本文设计主要利用 VHDL 语言在 EDA 平台上设计一个数字电压表 本实验 中所要求设计的数字电压表为 4 位 由三大部分组成 每一部分又包含了若干子 电路 将各电路组合起来 就构成了一个整体 1 A D 转换接口电路的设计 负责对 ADC0809 的控制 2 编码转换电路设计 负责把从 ADC0809 数据总线 中读出的电压转换成 BCD 码 3 输出七段显示电路的设计 负责将 BCD 码用 7 段显示器显示出来 数字电压表是诸多数字化仪表的核心与基础 以数字电压 表为核心扩展成的各种数字化仪表 几乎覆盖了电子电工测量 工业测量 自动 化系统等各个领域 并且使用 Quartus7 2 II 软件进行电路波形仿真 下载到 EDA 实验箱进行验证 关键词关键词 EDA 电子设计自动化 VHDL 硬件描述语言 数字钟 目 录 第 1 章 概 述 1 1 1EDA 的概念 1 1 2 EDA 技术及应用 1 1 3EDA 技术发展前景 3 第 2 章 设计基础知识 4 2 1FPGA 知识介绍 4 2 2VHDL 硬件描述语言 6 2 3QUARTUS II 及其他第三方开发工具 8 第 3 章 数字电压表电路设计 11 3 1 设计规划 11 3 2 设计内容 11 3 3 电路程序 13 第 4 章 系统软件程序的设计 18 4 1 主程序 18 4 2 转换电子程序 18 4 3 中断显示程序 19 第 5 章 电压表的调试及性能分析 21 5 1 调试与测试 21 5 2 性能分析 22 结 论 23 参考文献 24 东北石油大学本科生课程设计 论文 1 第第 1 章章 概概 述述 1 1 EDA 的概念 20 世纪 90 年代 国际上电子和计算机技术较先进的国家 一直在积极探索 新的电子电路设计方法 并在设计方法 工具等方面进行了彻底的变革 取得了 巨大成功 在电子技术设计领域 可编程逻辑器件 如 CPLD FPGA 的应用 已得到广泛的普及 这些器件为数字系统的设计带来了极大的灵活性 这些器件 可以通过软件编程而对其硬件结构和工作方式进行重构 从而使得硬件的设计可 以如同软件设计那样方便快捷 这一切极大地改变了传统的数字系统设计方法 设计过程和设计观念 促进了 EDA 技术的迅速发展 由于它是一门刚刚发展起来的新技术 涉及面广 内容丰富 理解各异 所 以目前尚无一个确切的定义 但从 EDA 技术的几个主要方面的内容来看 可以 理解为 EDA 技术是以大规模可编程逻辑器件为设计载体 以硬件描述语言为系 统逻辑描述的主要表达方式 以计算机 大规模可编程逻辑器件的开发软件及实 验开发系统为设计工具 通过有关的开发软件 自动完成用软件的方式设计电子 系统到硬件系统的一门新技术 可以实现逻辑编译 逻辑化简 逻辑分割 逻辑 综合及优化 逻辑布局布线 逻辑仿真 完成对于特定目标芯片的适配编译 逻 辑映射 编程下载等工作 最终形成集成电子系统或专用集成芯片 利用 EDA 工具 电子设计师可以从概念 算法 协议等开始设计电子系统 大量工作可以通过计算机完成 并可以将电子产品从电路设计 性能分析到设计 出 IC 版图或 PCB 版图的整个过程的计算机上自动处理完成 现在对 EDA 的概念或范畴用得很宽 包括在机械 电子 通信 航空航天 化工 矿产 生物 医学 军事等各个领域 都有 EDA 的应用 目前 EDA 技术 已在各大公司 企事业单位和科研教学部门广泛使用 例如在飞机制造过程中 从设计 性能测试及特性分析直到飞行模拟 都可能涉及到 EDA 技术 硬件描述语言 硬件描述语言 HDL Hardware Description Language 是一种 用于设计硬件电子系统的计算机语言 它用软件编程的方式来描述电子系统的逻 辑功能 电路结构和连接形式 与传统的门级描述方式相比 它更适合大规模系 统的设计 1 2 EDA 技术及应用 Electronic Document Authorization 指电子文件授权 是工作流软件系统最常 东北石油大学本科生课程设计 论文 2 用的一种功能 它超越文电鉴别和数字签名来对电子表格或信息的接受者提供保证 其发送 者具有特许权或适当的费用限制来签署和发送文件 EDA 技术是在电子 CAD 技 术基础上发展起来的计算机软件系统 是指以计算机为工作平台 融合了应用电 子技术 计算机技术 信息处理及智能化技术的最新成果 进行电子产品的自动 设计 利用 EDA 工具 电子设计师可以从概念 算法 协议等开始设计电子系统 大量工作可以通过计算机完成 并可以将电子产品从电路设计 性能分析到设计 出 IC 版图或 PCB 版图的整个过程的计算机上自动处理完成 现在对 EDA 的概念或范畴用得很宽 包括在机械 电子 通信 航空航天 化工 矿产 生物 医学 军事等各个领域 都有 EDA 的应用 目前 EDA 技术 已在各大公司 企事业单位和科研教学部门广泛使用 例如在飞机制造过程中 从设计 性能测试及特性分析直到飞行模拟 都可能涉及到 EDA 技术 本文所 指的 EDA 技术 主要针对电子电路设计 PCB 设计和 IC 设计 EDA 设计可分为系统级 电路级和物理实现级 EDA 常用软件 EDA 工具 层出不穷 目前进入我国并具有广泛影响的 EDA 软件有 multiSIM7 原 EWB 的 最新版本 PSPICE OrCAD PCAD Protel Viewlogic Mentor Graphics Synopsys LS IIogic Cadence MicroSim ISE modelsim 等等 这些工具都有较强的功能 一般可用于几个方面 例如很多软件都可以进行电路设计与仿真 同进还可以进 行 PCB 自动布局布线 可输出多种网表文件与第三方软件接口 从目前的 EDA 技术来看 其发展趋势是政府重视 使用普及 应用文泛 工具多样 软件功能强大 在信息通信领域 要优先发展高速宽带信息网 深亚 微米集成电路 新型元器件 计算机及软件技术 第三代移动通信技术 信息管 理 信息安全技术 积极开拓以数字技术 网络技术为基础的新一代信息产品 发展新兴产业 培育新的经济增长点 要大力推进制造业信息化 积极开展计算 机辅助设计 CAD 计算机辅助工程 CAE 计算机辅助工艺 CAPP 计算机机辅助制造 CAM 产品数据管理 PDM 制造资源计划 MRPII 及企业资源管理 ERP 等 有条件的企业可开展 网络制造 便于合作设计 合作制造 参与国内和国际竞争 开展 数控化 工程和 数字化 工程 自动 化仪表的技术发展趋势的测试技术 控制技术与计算机技术 通信技术进一步融 合 形成测量 控制 通信与计算机 M3C 结构 在 ASIC 和 PLD 设计方面 向超高速 高密度 低功耗 低电压方向发展 东北石油大学本科生课程设计 论文 3 1 3EDA 技术发展前景 进入二十一世纪以来 电子科技对于我们的生活越来越重要 我们的生活无 时无刻不与电子科技相联系 而我们对于电子产品的国内功能与速度的要求越来 越高 这就促进了不知是软件工程的发展 我们同时更加注重硬件工程的发展 EDA 作为其中一门学科有着很好的发展前景 一门学科永远不可能有研究皆知的时候 每当人类有新的发现是科技总会给 我们新的惊喜 EDA 同样是一门有趣而有意义的科学 所以我们有理由相信他会 有很好的发展前景 而当下的时代中 我们所应用的外部设备也越来越先进 外 设技术与 EDA 工程相结合的市场前景看好 如组合超大屏幕的相关连接 多屏 幕技术也有所发展 东北石油大学本科生课程设计 论文 4 第第 2 章章 设计基础知识设计基础知识 2 1FPGA 知识介绍 现场可编程门阵列 FPGA Field Programmable Gate Array 的出现是超大规模集 成电路 VLSL 技术和计算机扶助设计 CAD 技术发展的结果 它一般都采用 SRAM 工艺 也有一些专用器件采用 Flash 7 艺或反熔丝 Anti Fuse 工艺等 FPGA 器件集成度很高 其器件密度从数万系统门到数千万系统门不等 可以完 成极其复杂的时序与组合逻辑电路功能 适用于高速 高密度的高端数字逻辑电 路设计领域 具有通过用户编程实现专门应用的功能 它允许电路设计者利用基 于计算机的开发平台 经过设计输入 仿真 测试和校验 直至达到预期的结果 使用 FPGA 器件可以大大缩短系统的研制周期 减少资金的投入 更吸引人的是 采用 FPGA 器件可以将原来的电路板级产品集成为芯片级产品 从而降低了功耗 提高了可靠性 同时还可以很方便地对设计进行在线修改 FPGA 器件成为研制 开发的理想器件 特别适用于产品的样机开发和小批量的生产 因此有人也把 FPGA 称为可编程的 ASIC 如今 FPGA 器件广泛应用于通信 自动控制 信息 处理等诸多领域 越来越多的电子设计人员在使用 FPGA 熟练掌握 FPGA 设计 技术已经是对电子设计工程师的基本要求 FPGA 的逻辑门数己达 1 千万 内核速度达到 400MHz 能提供高达 11Gbps 的芯片间通信速度 随着工艺微缩 当前的 FPGA 已经能够内嵌 DSP 核心的方式 在诸多高端应用中实现传统 DSP 的工作 且可编程特性将大幅压低成本 并加快 设计周期 现在的 FPGA 芯片中不只是包含可编程逻辑功能模块 可编程输入输 出模块和可编程内部互连资源等基本的资源 还集成了存储器 Block RAM 和 Disturbed RAM 数字时钟管理但愿 完成分频 倍频 数字锁相和延迟功能的 DLL 和 DCM 算术运算单元 生发起 加法器 以及特殊功能模块 MAC 微处理 器等硬 IP 核 等更丰富的资源 与过去 FPGA 仅仅用作胶合逻辑不同 现在 FPGA 已经被用来实现主要系统功能 而与此同时 它仍然保持着非常合理的成 本 因此 与 ASIC 和定制 IC 相比 FPGA 是一种更具有吸引力的选择 FPGA 设计具有以下优点 1 硬件设计软件化 这是 FPGA 开发的最大优势 传统硬件电路设计先要进行功能设计 然后进 东北石油大学本科生课程设计 论文 5 行电路板级设计并做称电路板后进行调试 如果电路中有什么错误 整个电路板 都将作废 这是很不经济的 FPGA 的开发在功能层面上可以完全脱离硬件而在 EDA 软件上做软仿真 当功能确定无误后可以进行硬件电路板的设计 最后将设 计好的 由 EDA 软件生成的烧写文件下载到配置设备中去 进行在线调试 如 果这时的结果与要求不一致 可以立即更改设计软件 并再次烧写到配置芯片中 而不必改动外接硬件电路 2 高度集成化 高工作频率 一般的 FPGA 内部都集成有上百万的逻辑门 可以在其内部规划出多个与传 统小规模集成器件功能相当的模块 这样将多个传统器件集成在同一芯片内部的 方法不但可以改进电路板的规模 还可以减少 PCB 布线的工作 由于各个模块都 是集成在 FPGA 芯片内部 这就很大程度地解决了信号的干扰问题 使得 FPGA 的工作频率可以大幅度的提高 另外 一般的 FPGA 内部都有 PLL 倍频的时钟 这进一步解决了电磁干扰和电磁兼容问题 可编程逻辑器件的设计是利用 EDA 开发软件和编程土具对器件开发的过程 高密度复杂可编程逻辑器件的设计流程如图 2 1 所示 它包括设计准备 设计输 入 功能仿真 设计处理 时序仿真和器件编程及测试等七个步骤 1 设计准备 在系统设计之前 首先要进行方案论证 系统设计和器件选择等准备工作 一般采用自上而下的设计方法 也可采用传统的自下而上的设计方法 图 2 1 可编程逻辑器件设计流程 2 设计输入 设计输入将所设计的系统或电路以开发软件要求的某种形式表示出来 并送 东北石油大学本科生课程设计 论文 6 入计算机的过程称为设计输入 设计输入通常有以下集中形式 1 原理图输入方式 2 硬件描述语言输入方式 3 波形输入方式 3 功能仿真 功能仿真也叫做前仿真 用户所设计的电路必须在编译之前进行逻辑功能验证 此时的仿真没有延时信息 对于初步的功能检测非常方便 仿真中如发现错误 则返回设计输入中修改逻辑设计 4 设计处理 设计处理是器件设计中的核心环节 在设计处理过程中 编译软件将对设计 输入文件进行逻辑化简 综合优化和适配 最后产生编程用的编程文件 主要有 1 语法检查和设计规则检查 2 逻辑优化和综合 3 适配和分割 4 布局和布线 5 时序仿真 时序仿真又称后仿真或延时仿真 由于不同器件的内部延时不一样 不同的 布局布线方案也给延时造成不同的影响 因此在设计处理以后 对系统和各模块 进行时序仿真 分析其时序关系 估计设计的性能 以及检查和消除竟争冒险等 是非常有必要的 6 器件编程测试 时序仿真完成后 软件就可产生供器件编程使用的数据文件 2 2VHDL 硬件描述语言 2 2 1 VHDL 语言简介 硬件描述语言 hardware description language HDL 是电子系统硬件行为描述 结构描述 数据流描述的语言 目前 利用硬件描述语言可以进行数字电子系统 的设计 随着研究的深入 利用硬件描述语言进行模拟电子系统设计或混合电子系 统设计也正在探索中 国外硬件描述语言种类很多 有的从 Pascal 发展而来 也有一些从 C 语言发 展而来 有些 HDL 成为 IEEE 标准 但大部分是企业标准 VHDL 来源于美国军 东北石油大学本科生课程设计 论文 7 方 其他的硬件描述语言则多来源于民间公司 可谓百家争鸣 百花齐放 这些 不同的语言传播到国内 同样也引起了不同的影响在我国比较有影响的有两种硬 件描述语言 VHDL 语言和 Verilog HDL 语言 这两种语言已成为 IEEE 标准语 言 2 2 2 VHDL 语言的主要优势 VHDL 语言能够成为标准并且获得广泛的应用 一定有它自身的主要优势 或者说是与众不同的特点 强大的功能和灵活性 VHDL 语言具有功能强大的 语言结构 可以用简洁明确的程序来描述复杂的逻辑控制 独立于器件的设计 设计人员采用 VHDL 语言进行硬件电路的设计时 并不需要首先选择完成此项设 计的逻辑器件 这样 设计人员就可以集中精力来进行设计的构思 可进行程 序移植 VHDL 语言的移植能力是允许设计人员对需要综合设计描述进行模拟 在综合前对一个数千门的设计描述进行模拟可以节约大量的时间 由于 VHDL 语言是一种标准化的硬件描述语言 因此同一个设计的 VHDL 语言描述可以被不同的 EDA 工具支持 从而使得 VHDL 语言程序的移植成为可 能 性能评估能力 独立于器件的设计和可进行程序移植允许设计人员可以采 用不同的器件结构和综合工具来对自己的设计进行评估 易于 ASIC 移植 VHDL 语言效率高的重要体现之一就是如果设计人员的设计是被综合到一个 CPLD 器件或 FPGA 器件 那么就可以使设计的产品以最快的的速度上市 当产 品的数量达到相当的规模时 采用 VHDL 语言能够很容易地帮助设计人员实现转 成 ASIC 的设计 VHDL 语言标准 规范 易于共享和复用 VHDL 语言的语 法规范 标准 可读性强 由于 VHDL 语言是一种 IEEE 的工业标准硬件描述语 言 具有严格的语法规范和统一的标准 因此它可以使设计人员之间进行交流和 共享 2 2 3 VHDL 语言的设计流程 采用 VHDL 语言设计硬件电路系统的设计流程一般可以分为以下几个步骤 硬件电路系统设计要求的定义 编写描述硬件电路系统功能的 VHDL 语言 程序 VHDL 语言程序的模拟 VHDL 语言的综合 优化和布局布线 布局布线后的设计模拟 器件的编程 设计人员在从事硬件电路系统的合计过 程中 编写 VHDL 语言程序之前必须对硬件电路系统的设计目的有一个非常明确 的认识才行 东北石油大学本科生课程设计 论文 8 2 3Quartus II 及其他第三方开发工具 2 3 1 Quartus II 开发平台简介 Quartus II 是 Altera 提供的 FPGA CPLD 开发集成环境 Altera 是世界最大可 编程逻辑器件供应商之一 Quartus II 在 21 世纪初推出 是 Altera 前一代 FPGA CPLD 集成开发环境 MAX plus II 的更新换代产品 其界面友好 使用便 捷 在 Quartus II 上可以完成设计输入 HDL 综合 布线布局 适配 仿真和下 载和硬件测试等流程 它提供了一种与结构无关的设计环境 使设计者能方便地 进行设计输入 快速处理和器件编程 Altera 的 Quartus II 提供了完整的多平台设计环境 能满足各种特定设计的需 要 也是单芯片可编程系统 SOPC 设计的综合性环境和 SOPC 开发的基本设 计工具 并为 Altera DSP 开发包进行系统模型设计提供了集成综合环境 Quartus II 设计工具完全支持 VHDL Verilog 的设计流程 其内部嵌有 VHDL Verilog 逻辑综合器 Quartus II 也可以利用第三方的综合工具 如 Leonardo Spectrum Synplify Pro FPGA Complier II 并能直接调用这些工具 同样 Quartus II 具备仿真功能 同时也支持第三方的仿真工具 如 ModelSim 此外 Quartus II 与 MATLAB 和 DSP Builder 结合 可以进行基于 FPGA 的 DSP 系统开发 是 DSP 硬件系统实现的关键 EDA 工具 Quartus II 包括模块化的编译器 编译器包括的功能模块有分析 综合器 Analysis use IEEE STD LOGIC 1164 ALL use IEEE STD LOGIC UNSIGNED ALL 东北石油大学本科生课程设计 论文 15 entity voltmeter is port D in std logic vector 7 downto 0 CLK INT RESET in std logic CS RD WR out std logic DATOUT out std logic vector 11 downto 0 end voltmeter architecture doit of voltmeter is signal datain std logic vector 7 downto 0 signal data1 data2 std logic vector 15 downto 0 signal dout1 dout2 dout3 dout4 std logic vector 11 downto 0 signal do1 do2 do3 do4 c1 c2 c3 doo1 doo2 doo3 doo4 std logic vector 4 downto 0 type statetype is idle write swait read disp1 disp2 disp3 disp4 signal present state next state statetype begin P1 process present state next state INT begin case present state is when idle CS 1 WR 0 RD 0 next state CS 1 WR 1 RD 0 next state CS 0 WR 0 RD 0 if INT 1 then next state read else next state CS 1 WR 0 RD 1 next state CS 0 WR 0 RD 0 DATOUT dout1 next state CS 0 WR 0 RD 0 DATOUT dout2 next state CS 0 WR 0 RD 0 DATOUT dout3 next state CS 0 WR 0 RD 0 DATOUT dout4 next state write end case end process P1 P2 process CLK RESET begin if RESET 0 then present state idle datain 00000000 elsif CLK event and CLK 1 then present state next state if present state read then datain D end if end if end process P2 data1 0000000000000000 when datain 7 downto 4 0000 else 0000001100010011 when datain 7 downto 4 0001 else 0000011000100101 when datain 7 downto 4 0010 else 0000100100111000 when datain 7 downto 4 0011 else 0001001001010000 when datain 7 downto 4 0100 else 0001010101100011 when datain 7 downto 4 0101 else 0001100001110101 when datain 7 downto 4 0110 else 0010000110001000 when datain 7 downto 4 0111 else 0010010100000000 when datain 7 downto 4 1000 else 0010100000010011 when datain 7 downto 4 1001 else 0011000100100101 when datain 7 downto 4 1010 else 0011010000111000 when datain 7 downto 4 1011 else 0011011101010000 when datain 7 downto 4 1100 else 0100000001100011 when datain 7 downto 4 1101 else 0100001101110101 when datain 7 downto 4 1110 else 0100011010001000 when datain 7 downto 4 1111 else 0000000000000000 data2 0000000000000000 when datain 3 downto 0 0000 else 0000000000100000 when datain 3 downto 0 0001 else 0000000000111001 when datain 3 downto 0 0010 else 0000000001011001 when datain 3 downto 0 0011 else 0000000001111000 when datain 3 downto 0 0100 else 东北石油大学本科生课程设计 论文 17 0000000010011000 when datain 3 downto 0 0101 else 0000000100010111 when datain 3 downto 0 0110 else 0000000100110111 when datain 3 downto 0 0111 else 0000000101010110 when datain 3 downto 0 1000 else 0000000101110110 when datain 3 downto 0 1001 else 0000000110010101 when datain 3 downto 0 1010 else 0000001000010101 when datain 3 downto 0 1011 else 0000001000110100 when datain 3 downto 0 1100 else 0000001001010100 when datain 3 downto 0 1101 else 0000001001110011 when datain 3 downto 0 1110 else 0000001010010011 when datain 3 downto 0 1111 else 0000000000000000 do1 0 c1 00000 when do1 01010 else 00001 do2 0 c2 00000 when do2 01010 else 00001 do3 0 c3 00000 when do3 01010 else 00001 do4 0 doo1 do1 when do1 01010 else do1 01010 doo2 do2 when do2 01010 else do2 01010 doo3 do3 when do3 01010 else do3 01010 doo4 do4 when do4 01010 else do4 01010 dout1 111111000100 when doo1 0000 else 011000000100 when doo1 0001 else 110110100100 when doo1 0010 else 111100100100 when doo1 0011 else 011001100100 when doo1 0100 else 101101100100 when doo1 0101 else 101111100100 when doo1 0110 else 111000000100 when doo1 0111 else 111111100100 when doo1 1000 else 111101100100 when doo1 1001 else 东北石油大学本科生课程设计 论文 18 000000001111 dout2 111111000101 when doo2 0000 else 011000000101 when doo2 0001 else 110110100101 when doo2 0010 else 111100100101 when doo2 0011 else 011001100101 when doo2 0100 else 101101100101 when doo2 0101 else 101111100101 when doo2 0110 else 111000000101 when doo2 0111 else 111111100101 when doo2 1000 else 111101100101 when doo2 1001 else 000000001111 dout3 111111000110 when doo3 0000 else 011000000110 when doo3 0001 else 110110100110 when doo3 0010 else 111100100110 when doo3 0011 else 011001100110 when doo3 0100 else 101101100110 when doo3 0101 else 101111100110 when doo3 0110 else 111000000110 when doo3 0111 else 111111100110 when doo3 1000 else 111101100110 when doo3 1001 else 000000001111 dout4 111111010111 when doo4 0000 else 011000010111 when doo4 0001 else 110110110111 when doo4 0010 else 111100110111 when doo4 0011 else 011001110111 when doo4 0100 else 101101110111 when doo4 0101 else 101111110111 when doo4 0110 else 111000010111 when doo4 0111 else 111111110111 when doo4 1000 else 111101110111 when doo4 1001 else 000000001111 end doit 东北石油大学本科生课程设计 论文 19 第第 4 章章 系统软件程序的设计系统软件程序的设计 多路数字电压表系统软件程序主要有主程序 A D 转换子程序和中断显示程 序组成 4 1 主程序 主程序包含初始化部分 调用 A D 转换子程序和相应外部 0 中断显示电压 数值程序 初始化部分包含存放通道的缓冲区初始化和显示缓冲区初始化 另外 对于单路显示和循环显示 系统设置了一个标志位 00H 控制 初始化时 00H 位设置为 0 默认为循环显示 当它为 1 时改变为单路显示控制 00H 位通过单 路 循环按键控制 流程图如图 4 1 所示 4 2 转换电子程序 A D 转换子程序用于对 ADC0809 的 4 路输入模拟电压进行 A D 转换 并将转换的数值存入 4 个相应的存储单元中 A D 转换子程序每隔一定时间 调用一次 即隔一段时间对输入电压采样一次 如图4 2 所示 开始 显示子程序 A D 转换子程序 初始化 图 4 1 主程序流程图 东北石油大学本科生课程设计 论文 20 判断是否为 0 进行十六进制调整 开始 A D 转换 调用延时 存转换后的十六进制 数 数据指针加一 入栈保护 4 路转换次数减 一 显示电压值 N Y 图 4 2 转换子程序流程图 东北石油大学本科生课程设计 论文 21 4 3 中断显示程序 设计中采用中断的方式来读取转换完成的数据能节省 CPU 的资源 当系统设 置好后 一旦数据转换完成 便会进入外部中断 0 然后在中断中读取转换的数 值 处理数据并送数码管显示输出 LED 数码管采用软件译码动态扫描的方式 在中断程序中包含多路循环 显示程序和单路显示程序 多路循环显示程序把4 个存储单元的数值依次取 出送到 4 个数码管上显示 每一路显示一秒 单路显示程序只对当前选中的一 路数据进行显示 每路数据显示时需经过转换变成十进制BCD 码 放于 4 个数码管显示缓冲区中 单路或多路循环显示通过标志位00H 控制 在显示 控制程序中加入了对单路或多路循环按键的判断 数字量送 P1 口 取段码地址 P3 1 1 调用循环显示程序 调用单路显示程序 显示的是第 4 路 重新调用显示程序 N Y N Y 图 4 3 中断显示程序流程图 东北石油大学本科生课程设计 论文 22 第 5 章 电压表的调试及性能分析 5 1 调试与测试 时钟 CLK 接时钟模块输出 使频率为 4 5MHZ左右 INT 接 ADC0809 中 断输出 INT D 7 0 接 ADC0809 数据输出 D 7 0 CS RD WR 分别接 ADC0809 的控制输入 CS RD WR BCDOUT 接 12 个发光二极管 关于这个 软件的使用通过查一些资料和自己的摸索学习 然后我们对所编写的程序进行编 译 链接 如果没有错误和警告便可生成程序的 hex 文件 将此文件加到电路图 上使软硬件结合运行 最后进行端口引脚进行连接 连接如图 5 1 中所示 图 5 1 引脚连线 东北石油大学本科生课程设计 论文 23 图 5 2 数字显

温馨提示

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

最新文档

评论

0/150

提交评论