文档 - 副本单片机七人表决器.doc_第1页
文档 - 副本单片机七人表决器.doc_第2页
文档 - 副本单片机七人表决器.doc_第3页
文档 - 副本单片机七人表决器.doc_第4页
文档 - 副本单片机七人表决器.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

精品文档 I欢迎下载 摘摘 要要 单片机又称单片微控制器 它不是完成某一个逻辑功能的芯片 而是把一 个计算机系统集成到一个芯片上 它体积小 质量轻 价格便宜 为学习 应 用和开发提供了便利条件 近几年来 开发推出单片机的公司很多 各种高性能单片机芯片市场也异 常活跃 新技术不断采用 更加是单片机的种类 性能及应用领域不断扩大和 提高 单片机已经在各个领域受到广泛应用 本题就是基于单片机的一个七人表决器设计 本题以 AT89C52 单片机为主 控芯片 与 LED 显示灯 开关 七段数码管等共同构成七人表决器 使用单片 机可以使整个系统结构灵活 构成简单 且功能可以扩展或者裁减 而且现在 单片机已经很便宜 整个系统构成成本也不高 在现实会议中使用电子表决器表决 可以使表决结果更加精确 表决效率 大大提高 而且更能体现评为们的意志 表决器设有赞成 反对开关 开始表 决后 只要主持人按结果现实按键 结果就能实时显示出来 在单片机的教学 中 这也是一个很好的案例 七人表决器包括 C51 单片机运行程序 表决器电 路设计 按键设定 LED 显示等模块 关键词关键词 表决器 单片机 KEIL proteus 仿真 精品文档 II欢迎下载 AbstractAbstract Single chip microcomputer and says monolithic micro controller it is not a complete a logical function chips but put a computer system integration to a chip it is small light quality the price is cheap for learning application and development provides the convenience In recent years the development of single chip company launched many all kinds of high performance microprocessor chip market is very active new technology is constantly even more is the single chip microcomputer type performance and application field to expand and improve microcontroller has been widely applied in all fields Ontology based on single chip computer is one of the seven Voter design Subject to the microcontroller of AT89C52 main control chip and LED display lights switch seven period of digital tube to form a Voter seven people Using single chip can make the whole system flexible structure a simple and function can expand or cuts And now microcontroller is cheap the whole system construction cost is not high also In reality Voter use electronic voting in the meeting can make the voting results more accurate voting efficiency greatly improved and more can reflect the will of the as Voter has agreed against switch began after a vote as long as the host the buttons in reality the results can real time display In the teaching of the single chip microcomputer this is also a very good case Seven people Voter including C51 operation procedures Voter circuit design key setting LED display and other modules KeywordsKeywords Voter System singlechip simulation 精品文档 III欢迎下载 目目 录录 1 1 前前 言言 1 1 2 2 设计目的与任务设计目的与任务 2 2 2 1设计目的 2 2 2设计任务要求 2 3 3 方方 案案 3 3 3 1 方案 3 3 1 1 方案一 3 3 1 2 方案二 4 3 2 方案论证 5 4 4 设计具体设计具体 6 6 4 1 硬件设计 6 4 2 软件设计 7 5 5 说明说明 9 9 6 6 总结总结 1111 致致 谢谢 1212 参考文献参考文献 1313 精品文档 1欢迎下载1欢迎下载 1 1 前前 言言 此处加入本课题的意义等内容 在计算机出现以前 有不少能工巧匠做出了不少精巧的机械 进入电器 时代后 人们借助电气技术实现了自动控制机械 自动生 产线甚至自动工厂 并且大大地发展了控制理论 然而 在一些大 中型系统中自动化结果均不理 想 只有在计算机出现后 人们才见 到了希望的曙光 如今借助计算机逐渐 实现了人类的梦想 但是 计算机出现后的相当长的时间里 计算机作为科 学武器 在科学的 神圣殿堂里默默地工作 而工业现场的测控领域并没有得 到真正的应用 只有在单片机 Microcontroller 出现后 计算机才真正 地 从科学的神圣殿堂走入寻常百姓家 成为广大工程技术人员现代 化技术革新 技术革命的有利武器 目前 单片机在民用和工业测 控领域得到最广泛的应 用 彩电 冰箱 空调 录像机 VCD 遥 控器 游戏机 电饭煲等无处不见 单片机的影子 单片机早已深深 地溶入我们每个人的生活之中 在现实会议中使用电子表决器表决 可以使表决结果更加精确 表决效 率大大提高 而且更能体现评为们的意志 表决器设有赞成 反对开关 开始 表决后 只要主持人按结果现实按键 结果就能实时显示出来 而且本题在单 片机的教学中 这也是一个很好的案例 常规的电子表决器 如应用数字逻辑电子元件设计的固定功能的表决器 虽然也能实现基本功能 但是要是想实现稍微复杂一点的功能 往往设计工作 量会大大提高 而且系统功能固定 不可以随意定制 如果要修改器功能则要 对整个系统进行重新设计 难以满足对功能要求越来越高的各行业客户需求 本设计以 AT89C52 单片机为核心 以 switch 开关做为输入实现表决器的 控制 完成了基本设计要求 在设计中 采用了按键扫描的方法来实现表决器 的实时输 按键扫描就是把按键控制代码直接嵌入到单片机程序执行的循环中 这样做可以实时的响应按键的操作 具有很好的实时性 表决器的输出结果由 LED 灯的点亮与熄灭来指示出来 设计中设有一个黄色 LED 灯和一个绿色 LED 灯 黄灯点亮表示结果不通过 绿色点亮表示结果通过 设计中还设有一个 LED 7 段数码管来统计表决状况即投赞成票的人的个数 表决状况可以由开关 来控制其是否显示统计结果 精品文档 2欢迎下载2欢迎下载 2 2 设计目的与任务设计目的与任务 2 12 1设计目的设计目的 毕业设计在培养大学生探求真理 强化社会意识 进行科学研究基本训 练 提高综合实践能力与素质等方面 具有不可替代的作用 是教育与生产劳 动和社会实践相结合的重要体现 是培养大学生的创新能力 实践能力和创业 精神的重要实践环节 1 巩固和提高学过的基础理论和专业知识 2 提高运用所学专业知识进行独立思考和综合分析以解决实际生活中的 问题的能力 3 掌握正确的思维方法和利用软件和硬件解决实际问题的基本技能 4 通过参与实际开发工作过程 了解本行业工作的特点 为以后工作打 下扎实专业素质基础 2 22 2设计任务要求设计任务要求 本题要求设计一个基于单片机的七人表决器 1 实现功能 A 用七个开关作为表决器的七个输入变量 输入变量为逻辑 1 时 表示表决者 赞同 输入变量为 0 时 表示表决者 不赞同 B 当表决器的七个输入变量有四个以上 含四个 为 1 时 则表 决器输出为 1 既表决 通过 否则表决器输出为 0 C 可用绿 黄灯分别表示 通过 和 未通过 专门设置一个表决命令开关 当表决命令开关为逻辑 1 时 表决 器输出最后结果 当表决命令开关为逻辑 0 时 表决器无输出 这时绿 黄灯均暗 2 收集资料并进行整理 了解相关领域的研究现状 3 根据任务的要求制定出合理可行的工作计划 4 完成七人表决器的方法和器件很多 制定适当的技术方案 并且通过 与其他方案比较加以论证 5 独立完成系统或模块的设计 软件硬件的设计符合规范 6 做出设计说明书 7 根据拟定的计划来设计毕业论文 精品文档 3欢迎下载3欢迎下载 3 3 方方 案案 3 13 1 方案方案 3 1 13 1 1 方案一 使用 VHDL 语言设计出七人表决器的数字逻辑电路 VHDL 语言是一种用于电路设计的高级语言 VHDL 翻译成中文就是超高速 集成电路硬件描述语言 主要是应用在数字电路的设计中 目前 它在中国的 应用多数是用在 FPGA CPLD EPLD 的设计中 VHDL 主要用于描述数字系统的结构 行为 功能和接口 除了含有许多具 有硬件特征的语句外 VHDL 的语言形式 描述风格以及语法是十分类似于一般 的计算机高级语言 VHDL 的程序结构特点是将一项工程设计 或称设计实体 可以是一个元件 一个电路模块或一个系统 分成外部 或称可视部分 及 端口 和内部 或称不可视部分 既涉及实体的内部功能和算法完成部分 在 对一个设计实体定义了外部界面后 一旦其内部开发完成后 其他的设计就可 以直接调用这个实体 这种将设计实体分成内外部分的概念是 VHDL 系统设计 的基本点 设计思路 1 使用 Altera 的 Cyclone II 器件 FPGA 型号为 EP2C35F672C6N 开发 平台为 Quartus II 8 0 2 使用 6 个拨动开关用以进行表决 开关闭合时表示同意 断开时表示 不同意 3 使用 6 个 LED 用以显示表决的个人结果 用以显示记名时的情况 LED 亮起表示表决人同意 否则表示不同意 4 使用一个七段数码管用以显示表决结果 通过显示 P 否则显示 E 另外使用两个数码管用以分别显示同意与不同意的人数 5 使用两个拨动开关控制是否记名 是否显示表决的人数结果 6 其他电路按需要搭建 VHDL 方案设计框图如图 3 1 精品文档 4欢迎下载4欢迎下载 图 3 1 3 1 23 1 2 方案二方案二 以 AT89C52 单片机为核心 加上适当外围电路 构成七人表决器系统 设计思路 1 以 AT89C52 单片机为核心 以 switch 开关做为输入达到表决器的控 制 完成了基本设计要求 2 在设计中 采用了按键扫描的方法来实现表决器的实时输 按键扫描 就是把按键控制代码直接嵌入到单片机程序执行的循环中 这样做可 以实时的响应按键的操作 具有很好的实时性 3 表决器的输出结果由 LED 灯的点亮与熄灭来指示出来 设计中设有一 个红色 LED 灯和一个绿色 LED 灯 红灯点亮表示结果不通过 绿色点 亮表示结果通过 4 设计中还设有一个 LED 7 段数码管来统计表决状况即投赞成票的人的 个数 表决状况可以由开关来控制其是否显示统计结果 单片机方案设计框图如图 3 2 开关 数码管显示 LED 灯显示 AT89C52 单片机单片机 LED 灯显示灯显示 数码管显示数码管显示 开关按钮开关按钮 电源系统电源系统 F P GA 精品文档 5欢迎下载5欢迎下载 图 3 2 3 23 2 方案论证方案论证 方案一采用 VHDL 语言来设计电路 做出来的表决器 虽然功耗低 实时 性较好 但是结构相对复杂 且功能固定 虽然能实现基本功能 但是要是想 增加稍微复杂一点的功能 往往设计工作量会大大提高 而且系统功能固定 不可以随意定制 如果要修改器功能则要对整个系统进行重新设计 难以满足 对功能要求越来越高 不断变化的各行业客户的需求 方案二以 AT89C52 单片机为核心 以 switch 开关做为输入实现表决器的 控制 完成了基本设计要求 此方案采用按键扫描的方法来实现表决器的实时 输 按键扫描就是把按键控制代码直接嵌入到单片机程序执行的循环中 这样 做可以实时的响应按键的操作 具有很好的实时性 表决器的输出结果由 LED 灯的点亮与熄灭来指示出来 设计中设有一个黄色 LED 灯和一个绿色 LED 灯 黄灯点亮表示结果不通过 绿色点亮表示结果通过 设计中还设有一个 LED 7 段数码管来统计表决状况即投赞成票的人的个数 表决状况可以由开关来控制 其是否显示统计结果 整个系统比较简单并且具有启动功耗小 运行稳定的特 点 还有很重要的一点是 使用单片机可以使灵活的控制系统的功能 只需要 对系统做一些简单的修改就可以增加或者去掉系统的一些功能 综上所述 本设计将采用方案二 用单片机实现表决器 精品文档 6欢迎下载6欢迎下载 4 4 设计具体设计具体 4 14 1 硬件设计硬件设计 4 1 14 1 1 原件原件 七人表决器需要用到的原件有 原件数量用途 AT89C52 单片机 1 主控芯片 绿色 LED 灯 8 显示表决赞成 黄色 LED 等 1 表决不通过 7 段数码管 1 显示赞成人数 300 欧电阻 8 限流电阻 7 x 1k 排阻 1 上拉电阻 晶体振荡器 1 为单片机提供时钟 30PF 电容 1 时钟电路 开关 10 各种按键 导线若干连接器件 4 1 24 1 2 电路电路 电路设计使用 proteus 设计实现 简化设计工作 同时还可以仿真 使 开发和调试工作更简单方便 电路图如图 4 1 精品文档 7欢迎下载7欢迎下载 图 4 1 4 24 2 软件设计软件设计 4 2 14 2 1 概要设计概要设计 单片机程序设计中 通过定义个管脚参数来实现输入输出的控制 在程 序中设置循环和统计参数 count 初值为 0 扫描按键状态 若按键按下则 count 自加 1 否则不加 扫描完所有按键后 判断统计值 count 大小 若大 于等于 4 则将结果置为通过 否则置为不通过 1 P1 0 P1 6 表决赞成确认 LED 灯 2 P3 0 P3 6 表决赞成输入 3 P1 7 表决结果 4 P3 7 表决结果显示允许 5 P0 0 P 6 赞成人数显示 6 P2 0 赞成人数显示允许 7 P2 6 结果显示开关 8 P2 7 赞成人数显示开关 4 2 24 2 2 详细设计详细设计 一 主程序使用 keil 用单片机 C 语言编写 精品文档 8欢迎下载8欢迎下载 1 Keil C51 生成的目标代码效率非常之高 多数语句生成的汇编代码很紧 凑 容易理解 在开发大型软件时更能体现高级语言的优势 2 与汇编相比 C 语言在功能上 结构性 可读性 可维护性上有明显的 优势 因而易学易用 用过汇编语言后再使用 C 来开发 体会更加深刻 Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具 全 Windows 界面 3 本题程序通过 while 实现主程序的循环 4 在主程序循环中 通过不断扫描按键来实现按键的实时监控 在按键值 发生变化时可以及时作出响应 5 设置统计参数 count 初值为 0 扫描按键状态 若按键按下则 count 自 加 1 否则不加 6 扫描完所有按键后 判断统计值 count 大小 若大于等于 4 则将结果 端口 LED 灯点亮 否则熄灭 7 根据 count 值 在 7 段数码管上输出赞成人数 二 部分程序 include sbit K1 P3 0 sbit K2 P3 1 sbit K3 P3 2 sbit K4 P3 3 sbit K5 P3 4 sbit K6 P3 5 sbit K7 P3 6 sbit RP P3 7 sbit L1 P1 0 sbit L2 P1 1 sbit L3 P1 2 sbit L4 P1 3 sbit L5 P1 4 sbit L6 P1 5 sbit L7 P1 6 sbit L8 P1 7 sbit CP P2 0 sbit KC P2 7 sbit KR P2 6 int count 0 unsigned char code t 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x 6d 0 x7d 0 x07 0 x7f 0 x6f 0 x01 void main void while 1 精品文档 2欢迎下载2欢迎下载 count 0 if K1 1 L1 0 count else L1 1 if K2 1 L2 0 count else L2 1 if K3 1 L3 0 count else L3 1 if K4 1 L4 0 count else L4 1 if K5 1 L5 0 count else L5 1 if K6 1 L6 0 count else L6 1 if K7 1 L7 0 count else L7 1 if KC 1 CP 0 else CP 1 if KR 1 RP 1 else RP 0 if count 4 L8 0 else L8 1 switch count case 0 P0 t 0 break case 1 P0 t 1 break case 2 P0 t 2 break case 3 P0 t 3 break case 4 P0 t 4 break case 5 P0 t 5 break case 6 P0 t 6 break case 7 P0 t 7 break default P0 0 x00 5 5 说明说明 1 表决器设有七个表决开关 表决开关按下去 闭合 表示赞成 开关 打开表示不赞成 在每一个开关旁边都设有一个 LED 灯来确认表决 灯亮表示赞成已经确认 灯不亮表示不赞成 2 另外两个开关分别为表决结果显示开关和表决统计显示开关 按下时 为显示 不按下为不显示 3 表决结果由两个 LED 灯来显示 黄灯亮表示表决未通过 绿灯亮表示 表决未通过 4 表决统计由一个 7 段数码管显示出来 由统计人数开关控制 5 开始表决时 主持人打开表决器 然后表决人开始表决 表决完毕后 由主持人控制显示表决结果和表决结果统计 见下图 精品文档 10欢迎下载 精品文档 11欢迎下载 6 6 总结总结 在本项目硬件部分 我们采用了 AT89C52 高性能 CMOS8 位微处理器作为 主控芯片 使电路具有较高的运行效率

温馨提示

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

评论

0/150

提交评论