电子时钟实验报告_第1页
电子时钟实验报告_第2页
电子时钟实验报告_第3页
电子时钟实验报告_第4页
电子时钟实验报告_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

单片机原理及应用设计报告 题 目 电子时钟的设计 专 业 物理学 院 部 物理与电子工程学院 学 号 姓 名 指 导 教 师 答 辩 时 间 二 0 一二年五月 工作时间 2012 年 5 月 基于单片机的电子时钟系统的设计 指导教师 学生 关键词 单片机 电子时钟 键盘控制器 目录目录 第一章 总体设计 1 第二章 系统硬件设计 2 2 1 硬件电路 2 2 1 1 单片机最小系统 3 2 1 2 键盘电路 5 2 1 3 显示电路 5 第三章 系统软件设计 6 3 1 主程序流程图 6 3 2 主要子程序的流程图 7 第四章 系统仿真 8 第五章 综合调试与问题的解决 9 5 1 硬件调试 9 5 2 软件调试问题及解决 9 结 论 10 参考文献 10 附 录 11 第 1 章 总体设计 1 1 设计要求 电子时钟的计时范围 00 时 00 分 00 秒至 23 时 59 分 59 秒 由按键来调节时钟时间 时分秒都可以调整 1 2 设计思路 根据设计的要求可确定如下的设计思路 利用 AT89C52 系统单片机 LCD 液晶显示 器 键盘等一些辅助元件来生成时钟电路已达到设计要求 然后通过编写相应的程序来实 现对时钟的调试和控制 1 3 电路的设计方案 随着单片机技术的飞速发展 通过单片机对控制对象的控制日益成为今后自动控制 领域的一个发展方向 采用 MCS 52 单片机来对时间进行控制 不仅具有控时方便 组太 简单和灵和性大等优点 而且可以大幅度的提高控制时间的技术指标 从而可以大大提高 产品的质量和数量 因此单片机对时间的控制问题是一个工业生产上经常会遇到的问题 经过设计和元器件的功能 设计要求和设计思路 确定相应的设计方案 该电路有 多部分组成 如控制键盘的输入电路 单片机的时钟电路 LCD 液晶显示时间电路等 所 以根据上述条件作出相应的实时时钟电路总的框图 然后开始设计内部驱动程序 是各种 芯片按照相应的程序实现特定的功能 之后按照程序的设计 将相应的管脚连接调试 看 是够能实现特定的功能 硬件框图如下 图 1 1 硬件框图 AT89C52 单片机 键盘控制 时钟显示 蜂鸣器 元件 主程序设计的流程图如下 图 1 2 主程序设计流程图 第第 2 章章 系统硬件设计 系统硬件是整个系统的基础 需要考虑多个方面 除了实现显示和闹钟的基本功能外 还要注意系统的稳定度 器件的通用性 软件编程的以实现性 系统其它功能及性能指标 2 1 硬件电路 本设计以单片机为控制核心 采用模块化设计 共分以下几个功能模块 单片机控制系 统 键盘及时间显示 及调时模块等 其硬件图如下 显示子程序 实现各功能的子程序 参数初始化 开始 图 2 1 数字电子时钟硬件设计图 液晶电路图 图 2 2 单片机作为整个硬件系统的核心 它既是协调整机工作的控制器 又是数据处理器 时钟的 00 时 00 分 00 秒显示设为程序的默认值 当时钟的时间走到 10 点时 蜂鸣器 就打开并开始发出生音 可以通过手动调节 s1 和 s2 以及 s3 调节时钟时间 2 1 1 单片机最小系统 单片机最小系统 或者称为最小应用系统 是指用最少的元件组成的单片机可以工作的 系统 对 52 系列单片机来说 最小系统一般应该包括 单片机 时钟电路 复位电路 其中时钟电路电路图如下 图 2 3 时钟电路 XTAL1 是片内振荡器的反相放大器输入端 XTAL2 则是输出端 使用外部振荡器时 外 部振荡信号应直接加到 XTAL1 而 XTAL2 悬空 内部方式时 时钟发生器对振荡脉冲二分 频 如晶振为 12MHz 时钟频率就为 6MHz 晶振的频率可以在 1MHz 24MHz 内选择 电容取 30PF 左右 系统的时钟电路设计是采用的内部方式 即利用芯片内部的振荡电路 AT89 单 片机内部有一个用于构成振荡器的高增益反相放大器 引脚 XTAL1 和 XTAL2 分别是此放大 器的输入端和输出端 这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振 荡器 外接晶体谐振器以及电容 C1 和 C2 构成并联谐振电路 接在放大器的反馈回路中 对外接电容的值虽然没有严格的要求 但电容的大小会影响震荡器频率的高低 震荡器的 稳定性 起振的快速性和温度的稳定性 因此 此系统电路的晶体振荡器的值为 12MHz 电容应尽可能的选择陶瓷电容 电容值约为 22 F 在焊接刷电路板时 晶体振荡器和电 容应尽可能安装得与单片机芯片靠近 以减少寄生电容 更好地保证震荡器稳定和可靠地 1 3 复位电路电路图如下 图 2 4 复位电路图 在振荡器运行时 有两个机器周期 24 个振荡周期 以上的高电平出现在此引腿时 将使单片机复位 只要这个脚保持高电平 51 芯片便循环复位 复位后 P0 P3 口均置 1 引脚表现为高电平 程序计数器和特殊功能寄存器 SFR 全部清零 当复位脚由高电平变为 低电平时 芯片为 ROM 的 00H 处开始运行程序 复位是由外部的复位电路来实现的 片内 复位电路是复位引脚 RST 通过一个斯密特触发器与复位电路相连 斯密特触发器用来抑制 噪声 它的输出在每个机器周期的 S5P2 由复位电路采样一次 复位电路通常采用上电自 动复位和按钮复位两种方式 此电路系统采用的是上电与按钮复位电路 当时钟频率选用 6MHz 时 C 取 22 F Rs 约为 200 Rk 约为 1K 复位操作不会对内部 RAM 有所影响 复位电路 由电容串联电阻构成 由图并结合 电容电压不能突变 的性质 可以知道 当系统一上电 RST 脚将会出现高电平 并且 这个高电平持续的时间由电路的 RC 值来决定 典型的 51 单片机当 RST 脚的高电平持续两个机器周期以上就将复位 所以 适当组合 RC 的 取值就可以保证可靠的复位 一般教科书推荐 C 取 10u R 取 8 2K 当然也有其他取法的 原 则就是要让 RC 组合可以在 RST 脚上产生不少于 2 个机周期的高电平 1 3 2 1 2 键盘电路 单片机键盘有独立键盘和矩阵式键盘两种 独立键盘每一个 I O 口上只接一个按键 按键的另一端接电源或接地 一般接地 这种接法程序比较简单且系统更加稳定 而矩阵 式键盘式接法程序比较复杂 但是占用的 I O 少 根据本设计的需要这里选用了独立式键 盘接法 独立式键盘的实现方法是利用单片机 I O 口读取口的电平高低来判断是否有键按下 将常开按键的一端接地 另一端接一个 I O 口 程序开始时将此 I O 口置于高电平 平时 无键按下时 I O 口保护高电平 当有键按下时 此 I O 口与地短路迫使 I O 口为低电平 按键释放后 单片机内部的上拉电阻使 I O 口仍然保持高电平 我们所要做的就是在程序 中查寻此 I O 口的电平状态就可以了解我们是否有按键动作了 7 在用单片机对键盘处理的时候涉及到了一个重要的过程 那就是键盘的去抖动 这里 说的抖动是机械的抖动 是当键盘在未按到按下的临界区产生的电平不稳定正常现象 并 不是我们在按键时通过注意可以避免的 这种抖动一般 10 200 毫秒之间 这种不稳定电平 的抖动时间对于人来说太快了 而对于时钟是微秒的单片机而言则是慢长的 为了提高系 统的稳定 我们必须去除或避开它 目前的技术有硬件去抖动和软件去抖动 硬件去抖动 就是用部分电路对抖动部分加之处理 但是实现的难度较大又会提高了成本 软件去抖动 不是去掉抖动 而是避抖动部分的时间 等键盘稳定了再对其处理 所以这里选择了软件 去抖动 实现法是先查寻按键当有低电平出现时立即延时 10 200 毫秒以避开抖动 经典值 为 20 毫秒 延时结束后再读一次 I O 口的值 这一次的值如果为 1 表示低电平的时间 不到 10 200 毫秒 视为干扰信号 当读出的值是 0 时则表示有按键按下 调用相应的处 理程序 2 1 3 显示电路 显示器普遍地用于直观地显示数字系统的运行状态和工作数据 按照材料及产品工艺 单片机应用系统中常用的显示器有 发光二极管 LED 显示器 液晶 LCD 显示器 CRT 显示 器等 发光二极管 LED 由特殊的半导体材料砷化镓 磷砷化镓等制成 可以单独使用 也可以组装成分段式或点阵式 LED 显示器件 分段式显示器 LED 数码管 由 7 条线段围 成 8 字型 每一段包含一个发光二极管 外加正向电压时二极管导通 发出清晰的光 只 要按规律控制各发光段亮 灭 就可以显示各种字形或符号 LED 数码管有共阳 共阴之 分 本次设计使用 LCD 液晶显示来显示时间 采用动态显示的方法 其中 P3 0 P3 2 为键 盘控制端 调节显示的时间 P1 0 P1 7 为液晶输出口 控制时间的显示 P2 0 是控制蜂 鸣器的输出口 第三章 系统软件设计 软件在硬件平台上构筑 完成各部分硬件的控制和协调 系统功能是由硬件和软件共 同实现的 由于软件的可伸缩性 最终实现的系统功能可强可弱 差别可能很大 因此 软件是本系统的灵魂 软件采用模块化设计方法 不仅易于编程和调试 也可减小软件故 障率和提高软件的可靠性 同时 对软件进行全面测试也是检验错误排除故障的重要手段 3 1 主程序流程图 系统一开始 首先程序初始化 时间显示 00 时 00 分 00 秒 时间一秒一秒地继续往 前走 通过按键 s1 s2 s3 调节时间的时分秒调节 当时间显示的时分秒等于 10 点时 蜂 鸣器就打开 发出声音 一段时间后自动关闭声音 程序不断扫描键盘看是否有 s1 键按下 如果没有继续走时 如果扫描键盘时有按键按下 则执行中断程序 可以通过 s2 s3 调时 主程序流程图如下 N Y N Y 开始 系统初始化 判断时间是否为 10 点 显示初始时 间 启动走时 扫描键盘 走时 打开蜂鸣器 关闭蜂鸣器 是否有键 按下 图 3 1 主程序流程图 3 2 主要子程序的流程图 中断子程序 当按下 S1 和 S4 按下时 运行中断程序 通过 S2 S3 调节时间 其流程 图如下 图 3 2 中断子程序流程图 按键子程序流程图 按下 S1 时即可实现时间的调节 通过按 S2 时间加 S3 时间减 再按 S1 回到走时 按键子程序流程图如下 设置时分秒 开始 主程序 中断服务 返回 S1 键按下 N N Y Y 图 3 3 按键子程序流程图 第四章 系统仿真 Proteus 软件是 Labcenter Electronics 公司的一款电路设计与仿真软件 它包括 ISIS ARES 等软件模块 ARES 模块主要用来完成 PCB 的设计 而 ISIS 模块用来完成电路 原理图的布图与仿真 Proteus 的软件仿真基于 VSM 技术 它与其他软件最大的不同也是 最大的优势就在于它能仿真大量的单片机芯片 比如 MCS 51 系列 PIC 系列等等 以及单 片机外围电路 比如键盘 LED LCD 等等 通过 Proteus 软件的使用我们能够轻易地获得 一个功能齐全 实用方便的单片机实验室 下图是截取的是时钟仿真图 开始 键盘扫描 S1 按下 通过 S2 S3 调 时 返回 图 4 1 时钟的仿真图 第五章 综合调试与问题的解决 单片机应用系统的调试包括硬件和软件两部分 但是他们并不能完全分开 一般的方 法是排除明显的硬件故障 再进行综合调试 排除可能的软 硬件故障 这次由于时间紧迫 的关系没有做实物 但是对硬件调试还是有一定的了解 5 1 硬件调试 拿到电路板后 首先要检查加工质量 并确保没有任何方面的错误 如短路和断路 尤其要避免电源短路 元器件在安装前要逐一检查 用万用表测其数值 看是否与所用相 同 完成焊接后 应先空载上电 芯片座上不插芯片 并检查各引脚的电位是否正确 若一切正常 方可在断电的情况下将芯片插入 再次检查各引脚的电位及其逻辑关系 将 万用表的探针放到单片机接电源的引脚上检测一下 看是否符合要求 5 2 软件调试问题及解决 软件程序的调试一般可以将重点放在分模块调试上 统调是最后一环 软件调试可以 采取离线调试和在线调试两种方式 前者不需要硬件仿真器 可借助于软件仿真器即可 后者一般需要仿真系统的支持 本次设计 用 Keil 软件来调试程序 通过各个模块程序的 单步或跟踪调试 使程序逐渐趋于正确 最后统调程序 仿真部分采用 proteus 6 professional 软件 此软件功能强大且操作较为简单 可以 很容易的实现各种系统的仿真 首先打开 proteus 6 professional 软件 在元件库中找到要选用的所有元件 然后进 行原理图的绘制 绘制好后再选择 wave6000 已经编译好的 hex 文件 选择运行 观察显 示结果 根据显示的结果和课题的要求再修改程序 再运行查 直到满足要求为止 结 论 本设计以单片机为核心 以 LCD 液晶作为显示 该设计很好地完成了设计的各项要求 主要体现如下 手动键盘的控制时间和闹钟 以及准确地走时稳定性好等特点 在毕业设计的整个过程中 我深切地体会到 实践是理论运用的最好检验 毕业设计是 对我们 4 年所学知识的一次综合性测试和考验 无论是在动手能力方面还是理论知识的运 用能力方面 都使得我有了很大的提高 通过这次毕业设计 使我得到了一次用专业知识 专业技能分析和解决问题全面的系统的锻炼 使我在单片机的基本原理 单片机应用系统 开发过程 以及在常用编程设计思路技巧 特别是对 C 语言的掌握方面都能向前迈了一大 步 为日后成为合格的应用型人才打下良好的基础 经过总结和分析 我意识到在设计程序之前 一定要有一个清晰的思路和一个完整的 的软件流程图 在设计程序时 不能妄想一次就将整个程序设计好 反复修改 不断改进 是程序设计的必经之路 要养成注释程序的好习惯 一个程序的完美与否不仅仅是实现功 能 而应该让人一看就能明白你的思路 这样也为资料的保存和交流提供了方便 在设计 课程过程中遇到问题是很正常 但我们应该将每次遇到的问题记录下来 并分析清楚 以免 下次再碰到同样的问题 本次毕业设计为我的大学生活画上了圆满的句号 为我即将的工 作和生活奠定了坚实的基础 参考文献 1 王静霞 单片机应用技术 M 北京 电子工业出版社 2009 20 150 2 何立民 单片机高等教程 M 北京 北京航空航天大学出版社 2000 150 210 3 何立民 单片机应用系统设计系统配置与接口技术 M 北京 北京航空航天大学出版 社 2001 1 494 4 雄建云 Protel99 se EDA 技术及应用 M 北京 北京机械工业出版社 2007 141 176 5 林春方 电子线路学习指导与实训 M 北京 北京电子工业出版社 2004 118 164 6 杨宝清 宋文贵 实用电路手册 M 北京 机械工业出版社 2002 1 300 7 曾屹 单片机原理与应用 M 湖南 中南大学出版社 2009 18 154 8 杨立 微型计算机原理与接口技术 M 中国水利水电出版社 2005 165 180 9 李杨帮 实用电源电路集锦 M 北京 电子工业出版社 1998 26 59 10 朱运利 单片机技术应用 M 北京 械工业出版社 2005 80 127 11 胡健 单片机原理及接口技术实践教程 M 北京 机械工业出版社 2004 12 116 12 李华 MCS 51 单片机接口技术与运用 M 北京 北京航天航空大学出版社 2000 44 191 13 胡汉才 单片机接口技术与运用 M 北京 机械工业出版社 2005 104 225 14 唐俊翟 许雷 单片机原理与应用 M 北京 北京冶金工业出版社 2003 69 143 致 谢 在学院各位领导以及指导教师彭老师的大力支持下 我基本完成了这次设计任务 我 在这一次毕业设计过程中 很是受益匪浅 通过对自己在大学四年时间里所学的知识的回 顾 并充分发挥对所学知识的理解和对毕业设计的思考及书面表达能力 最终完成了 这 为自己今后进一步深化学习 积累了一定宝贵的经验 撰写论文的过程也是专业知识的学 习过程 它使我运用已有的专业基础知识 对其进行设计 分析和解决一个理论问题或实 际问题 把知识转化为能力的实际训练 在同学及指导教师彭老师的一些指点和引导下 真正培养了我运用所学知识解决实际问题的能力 通过这次设计我发现 只有理论水平提高了才能够将课本知识与实践相整合 理论知 识服务于教学实践 以增强自己的动手能力 这个设计在现实社会中也存在着一定的价值 和意义 从中我获得很深刻的经验 通过这次设计 我知道了理论和实际的距离 也知道 了理论和实际想结合的重要性 也从中得知了很多书本上无法得知的知识 我们的学习不但要立足于书本 以解决理论和实际教学中的实际问题为目的 还要以实 践相结合 理论问题即实践课题 解决问题即课程研究 学生自己就是一个专家 通过自 己的手来解决问题比用脑子解决问题更加深刻 学习就应该采取理论与实践结合的方式 理论的问题 也就是实践性的课题 这种做法既有助于完成理论知识的巩固 又有助于带 动实践 解决实际问题 加强我们的动手能力和解决问题的关键 附 录 系统软件设计程序代码 include define uchar unsigned char define uint unsigned int sbit rs P3 5 sbit rw P3 6 sbit lcden P3 4 sbit s1 P3 0 sbit s2 P3 1 sbit s3 P3 2 sbit buzzer P2 0 uchar n s1num char miao shi fen uchar code table 00 00 00 void delay uint z uint x y for x z x 0 x for y 110 y 0 y void write com uchar com 20 rs 0 lcden 0 P1 com delay 5 lcden 1 delay 5 lcden 0 void write date uchar date rs 1 lcden 0 P1 date delay 5 lcden 1 delay 5 lcden 0 void init uchar num lcden 0 rw 0 write com 0 x38 write com 0 x0c write com 0 x06 write com 0 x01 write com 0 x80 for num 0 num 15 num write date table num delay 5 TMOD 0 x01 TH0 65536 50000 256 TL0 65536 50000 256 EA 1 ET0 1 TR0 1 void write shifenmiao uchar add uchar date uchar shi ge shi date 10 ge date 10 write com 0 x80 add write date 0 x30 shi write date 0 x30 ge void naozhong buzzer 0 if shi 10 delay 100 buzzer 0 delay 100 void keyscan if s1 0 delay 5 if s1 0 s1num while s1 if s1num 1 21 TR0 0 write com 0 x80 10 write com 0 x0f if s1num 2 write com 0 x80 7 if s1num 3 write com 0 x80 4 if s1num 4 s1num 0 write com 0 x0c TR0 1 if s1nu

温馨提示

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

评论

0/150

提交评论