基于51单片机的电子时钟设计.doc_第1页
基于51单片机的电子时钟设计.doc_第2页
基于51单片机的电子时钟设计.doc_第3页
基于51单片机的电子时钟设计.doc_第4页
基于51单片机的电子时钟设计.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

课程论文 题 目 数字电子时钟的设计数字电子时钟的设计 学生姓名 朱浔 学生学号 1008030335 系 别 电气学院 专 业 电子信息工程 年 级 10 级 任课教师 权楯忠 成绩成绩 1 目目 录录 一一 课程设计目的课程设计目的 1 二二 课程设计题目描述和要求课程设计题目描述和要求 1 三三 课程设计报告内容课程设计报告内容 1 3 13 1 设计思路 设计思路 1 3 23 2 方案设计与论证 方案设计与论证 2 3 2 1 数码管显示选择方案 2 3 2 2 数码管驱动选择方案 3 3 33 3 设计原理 程序及流程图设计原理 程序及流程图 3 3 3 1 流程图 3 3 3 2 电路原理图 4 3 3 3 C 语言程序及说明 4 3 43 4 PROTUESPROTUES仿真图 及作品成型图仿真图 及作品成型图 12 3 4 1 protues 仿真图 12 3 4 2 实践电路板照片 13 3 53 5 安装与调试结果安装与调试结果 14 3 5 1 电路安装 14 3 5 2 电路调试 15 3 5 3 软件调试 15 3 5 4 性能测试 15 四四 总结总结 15 参考书目参考书目 16 2 数字电子钟的设计数字电子钟的设计 学生 朱浔 指导老师 权楯忠 电气信息工程学院电子信息工程专业 一一 课程设计目的课程设计目的 1 巩固和加深对单片机原理知识的理解和运用 2 进一步提高学生综合运用所学知识的能力 3 培养学生综合分析问题 发现问题和解决问题的能力 二二 课程设计题目描述和要求课程设计题目描述和要求 1 方案论证 确定总体电路原理图 2 元器件选择 设计 PCB 图 或用万能电路实验板搭线 3 绘制程序流程图 编写 C 语言源程序 4 安装调试 实现数字时钟的基本功能 即能正确显示时 分 秒 可调整时 间 秒闪功能 三三 课程设计报告内容 课程设计报告内容 3 13 1 设计思路 设计思路 3 1 1 根据所需实现的功能画出程序流程图 如 3 5 所示 3 1 2 将电路按照 3 6 原理图焊接起来 定义开关 K1 K2 K3 分别接单片机的 P3 2 P3 2 P3 5 引脚 3 1 3 用软件延时对 K1 K2 K3 进行两级防抖 启动系统 中断初始化 定时 器 0 只用来做计时 定时器 1 根据需要可选择进入定时模式或者计数模式 外部中断 1 2 用来等待外部按键的按下 3 1 4 当先按下 K1 时 进入外部中断 0 主函数调用时间显示函数 定时器 1 处于计数工作模式 num num 1 num 为 1 时按 K2 K3 对小时进行加减来调 3 整小时位 num 2 按 K2 K3 对分进行调整 当 num 3 按 K2 K3 对秒进行调 整 当 num 4 时就对 num 进行清零 跳出时间调节 3 1 5 当先按下 K2 时 进入外部中断 1 cmd cmd 1 主函数调用秒表显示函数 进入秒表状态 此时将定时器 1 的工作模式改为计时 使其每 10ms 进行一 次中断 并设定当 cmd 位偶数时进行秒表计时 当 cmd 为奇数时停止秒表计 时 K1 用来对秒表进行清零 在秒表处于 00 00 00 状态时 按 K1 退出秒表 进入时间显示状态 3 23 2 方案设计与论证 方案设计与论证 图图 1 1 系统整体框图系统整体框图 整个系统用单片机作为中央控制器 由单片机执行采集芯片内部时钟信号 时钟信号通过单片机 I O 口传给单片机 单片机模块控制驱动模块驱动显示模 块 通过显示模块来实现信号的输出 LED 的显示及相关的控制功能 系统设 有按键模块用于对时间进行调整及扩展多个小键盘 3 2 1 数码管显示选择方案 方案一 静态显示 静态显示 即当显示器显示某一字符时 相应的发光 二极管恒定导通或截止 该方式每一位都需要一个 8 位输出口控制 静态显示 时较小电流能获得较高的亮度 且字符不闪烁 但因当所需显示的位数较多时 静态显示所需的 I O 口数较大 造成资源的浪费 方案二 动态显示 动态显示 即各位数码管轮流点亮 对于显示器各位 单 片 机 模 块 驱 动 模 块 按 键 模 块 LED 显示模块 电 源 模 块 4 数码管 每隔一段延时时间循环点亮一次 利用人的视觉暂留功能可以看到整 个显示 但须保证扫描速度足够快 人的视觉暂留功能才可察觉不到字符闪烁 显示器的亮度与导通电流 点亮时间及间隔时间的比例有关 调整参数可以实 现较高稳定度的显示 动态显示节省了 I O 口 降低了能耗 从节省单片机芯片 I O 口和降低能耗角度出发 本数字电子钟数码管显示 选择设计采用方案二 3 2 2 数码管驱动选择方案 方案一 上拉电阻驱动方式 数码管段码与接有上拉电阻的单片机芯片 I O 口相连 通过编程 单片机芯片即控制段码电平的高低 该方式经费低 但实物制作较复杂 方案二 7407 芯片驱动方式 数码管段码与 7407 芯片 B 口相连 7407 芯 片 A 口与单片机芯片 I O 口 通过编程 单片机芯片即可控制段码电平的高低 该方式实物制作简单 增强驱动数码管段码能力 从实物制作简易程度与驱动数码管段码能力角度出发 本数字电子钟数码 管驱动选择设计采用方案二 3 33 3 设计原理 程序及流程图 设计原理 程序及流程图 5 3 3 1 流程图 启动 是否进入 秒表显示 对中断初始 化 选择秒表显 示功能 选择时间显 示功能 是 否 是否启 动秒表 是否进 入调时 各时间调整 是 运行秒表 是 否 否 3 3 2 电路原理图 6 3 3 3 C 语言程序及说明 include reg51 h define uchar unsigned char define uint unsigned int code uchar d 10 0 xC0 0 xF9 0 xA4 0 xB0 0 x99 0 x92 0 x82 0 xF8 0 x80 0 x90 uint second 0 minter 50 hour 11 uint sshi sge mge mshi hshi hge static char court 0 sbit P21 P2 1 sbit P22 P2 2 sbit P23 P2 3 sbit P24 P2 4 sbit P25 P2 5 sbit P26 P2 6 7 sbit P27 P2 7 sbit P20 P2 0 void delay 单个 LED 延时函数 uchar i for i 0 i 15 i void int1 interrupt 1 using 2 定时中断响应 定 50MS TH0 0 x4c TL0 0 x00 court void main 主函数 TMOD 0 x01 TH0 0 x4c TL0 0 x00 EA 1 ET0 1 TR0 1 P1 0XFF for sshi second 10 求分秒时的个位 sge second 10 mshi minter 10 mge minter 10 hshi hour 10 hge hour 10 P0 d sge 时分秒在 LED 的显示 P27 1 P0 口数据输出 P2 口选通信号 delay P27 0 P0 d sshi P26 1 delay P26 0 8 P0 0 xbf P25 1 delay P25 0 P0 d mge P24 1 delay P24 0 P0 d mshi P23 1 delay P23 0 P0 0 xbf P22 1 delay P22 0 P0 d hge P21 1 delay P21 0 P0 d hshi P20 1 delay P20 0 if court 20 判断定时 1S 的时间到了吗 如果到了 就执行 IF 后面的 否则就跳转 court 0 执行 LED 显示程序 second if second 60 second 0 minter 9 if minter 60 minter 0 hour if hour 24 hour 0 3 43 4 protuesprotues 仿真图 及作品成型图仿真图 及作品成型图 3 4 1 protues 仿真图 3 53 5 安装与调试结果 安装与调试结果 10 3 5 1 电路安装 安照电路原理图把元器件安装到已打好的铜板对应的位置 把个元器件固 定在铜板后 用导线把对应的元器件的引脚相连接 再用焊锡焊接好即可 注 意事项 1 元器件的布局应尽量集中 且各个元器件间引脚的连线应尽量短 不 弯 曲 跳线尽量少 2 各个元器件引脚的焊接不要虚焊 3 5 2 电路调试 把相应编译好的目标程序代码加载到单片机芯片 AT89S51 可接上 5V 电压 源即开始进行硬件电路的调试工作 如果显示结果不符合设计要求 即检查电 路各连接点是否正确连接 再次进行硬件电路的调试工作 或是检查代码程序 是否符合硬件电路的设计 若有错即进行相应的修改 编译后 再进行硬件电 路的调试工作 如此反复操作 直到调试出正确结果 3 5 3 软件调试 1 在计算机上运行程序调试软件 Keil 进行程序调试 2 利用 Proteus 软件进行仿真模拟 3 加载程序代码到单片机芯片 AT89S51 中 进行模拟仿真 若出现错误 查看错误后进行相应修改再进行调试与模拟仿真 直到调试出正确结果 3 5 4 性能测试 系统上电后进行功能的测试 通过测试观察到 系统上电后数码管上显示 时间 11 11 11 通过测试 本作品设计实现了数字电子钟的基本功能 且系 统工作稳定 经过全组组员一起调试及验证 计时误差为 1 0 秒 四四 总结 总结 本次课程设计的题目是 LED 数字显示电子时钟 经过本组同学的共同努力 终于调试成功 并经过测试数据显示 系统的可靠性已经基本能够达到实际电 子钟的设计要求 同时本单片机数字电子钟系统具有扩展性 本设计从经济实用的角度出发 采用美国Atmel公司的单片机AT89S51与显 示驱动芯片7407作为主控芯片与数据存储器单元 结合外围的键盘输入 显示 11 电源输入等电路并用C语言编写主控芯片的控制程序 研制了一款可以调时并带 有秒表功能的电子时钟 使用单片机制作的电子时钟具有软硬件设计简单 易 于开发 成本较低 安全可靠 操作方便等特点 可应用于体育赛事和车站 办公室及家庭等场所 有一定的实用性 此电子时钟严格按照要求设计 基本 达到了预期效果 能够正确的显示时分秒的计时 算上是一次比较成功的设计 了 实验中遇到了不少问题 但我们一起改进和综合了如下 1 按键问题 此设计中 很多功能选择是通过按键开关实现的 在仿真中 发现 调整数值时 有时按键反应太快 按一次 跳了几下 使设置时间很不 方便 于是用软件延时将按键进行两级防抖 从而大大提高了按钮的可操作性 2 添加功能问题 此设计中 除了基本的功能外 我们发现没有突出的亮 点 于是想到添加一个秒表计时的功能 我们将定时器1进行时分复用 通过按 键按下的先后顺序对定时器1的计时或计数进行功能选择 此程序是在调时进行 后由开关1控制 进行复位和控制 可以实现叠加计时和清零 课程设计是培养学生综合运用所学知识 发现实际问题 提出实际问题 分 析和解决实际问题 锻炼实践能力的重要环节 是对学生实际学习能力 动手能 力的具体训练和考察过程 在此次数字钟设计过程中 在学习新知识的同时 把在课程中学到的理论 知识运用到实际作品设计 操作中 更进一步地熟悉了单片机芯片的结构及掌 握了其工作原理和具体的使用方法与相关元器件的参数计算方法 使用方法 了解了电路的开发和制作及课程设计报告的编写 加深了对相关理论知识及专 业知识的掌握度 增强自身的动手能力 锻炼及提高了理解问题 分析问题 解决问题的能力 更深刻的体会到了理论联系实际的重要性 最后 我们组通过此次单片机课程设计不仅仅将我们一学期在单片机课程 上的所学很好的应用到了实际设计中 更是将理论知识应用到

温馨提示

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

评论

0/150

提交评论