




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
电子技术课程设计报告 可任意启动可任意启动 停止的电子秒表设计停止的电子秒表设计 学 院 机械与电子工程学院 年级专业 08 级电子信息工程 学 号 姓 名 指导教师 完成时间 2011 07 09 成 绩 摘 要 本系统为基于 AT89C52 单片机 可任意启动 停止的电子秒表系统 该系统由硬件 和软件组成 系统硬件主要由电源电路 按键 数码管显示电路及其他辅助电路组成 软件利用 Keil 工具 采用 8051C 语言编程 该系统可以实现 0 01s 的精度 以及对运 行时间的显示 启动或停止秒表等功能 关键词 单片机 数码管 按键 目录目录 1 设计目的及要求 1 1 1 设计目的和意义 1 1 2 设计任务与要求 1 2 硬件电路设计 1 2 1 总体方案设计 1 2 2 功能模块电路设计 2 2 2 1 单片机的选型 2 2 2 2 振荡电路设计 4 2 2 3 复位电路设计 4 2 2 4 数码管显示电路设计 5 2 2 5 按键电路设计 6 2 3 总电路设计 7 3 软件系统设计 8 3 1 软件系统总体方案设计 8 3 2 软件流程图设计 8 4 系统调试 9 5 总结 10 5 1 本系统存在的问题及改进措施 10 5 2 心得体会 11 参考文献 11 附录 系统的源程序清单 12 0 1 设计目的及要求 1 1 设计目的和意义 当今 计算机技术带来了科研和生产的许多重大飞跃 微型计算机的应用已渗透 到生产 生活的各个方面 其中单片微型计算机虽然问世不久 然而体积小 价廉 功能强 其销售额以每年近 80 的速率增长 他的性能不断提高 适用范围愈来愈宽 在计算机应用领域已占有日益重要的低位 秒表应用于我们生活 工作 运动等需要计时的方面 钟表的数字化给人们生产 生活带来了极大的方便 而且大大的扩展了钟表原先的报时功能 它由刚开始的机械 式秒表发展到今天所常用的数字式秒表 秒表的计时精度越来越高 功能越来越多 构造也日益复杂 电子科技日新月异 人们对现代电子设备的智能化和微型化及其精 度提出来更高的要求 本次采用了 AT89C52 单片机 其灵活性和可靠性都相对提高 鉴于以上要求 我利用 proteus 仿真软件 设计了一款基于 AT89C52 单片机的可 启动 暂停的秒表计时系统 1 2 设计任务与要求 系统要求 6 位 LED 数码显示 计时单位为 1 100 秒 利用功能键进行启 停控制 其功能为 上电后计时器清 0 当第一次 或奇数次 按下启 停键时开始计数 第 2 次 或偶数次 按下该键时停止计时 再一次按启 停键时清零后重新开始计时 2 硬件电路设计 2 1 总体方案设计 电子秒表系统主要完成对计时实时的显示 精度达到 1 100s 以及通过功能键可 以使当前计时暂停或重新计时 系统主要包括晶振电路 复位电路 按键电路以及数 码管显示电路 系统采用六个共阴极数码管 其中八位数据口与单片机的 P0 口通过 74LS245 双向 总线收发器相接 可增加 P0 的驱动能力 6 个片选信号连接单片机 P1 口的低六位 该电路可满足对计时时间的显示 最后一个最小显示单位为 0 01s 溢出则向前进位 显示时间的范围为 0 9999 99s 本系统按键采用外部中断的方式 因此按键接入单片 机的 P3 2 口 通过下降沿触发方式来控制计时器的启停 系统的整体框图如图 1 所示 1 图图1 系统整体框图系统整体框图 2 2 功能模块电路设计 2 2 1 单片机的选型 由于本系统只需要单片机完成对计时的显示以及处理由按键产生的中断 对于 I O 资源以及处理速度无特殊要求 故选择 ATMEL 公司生产的 AT89C52 单片机 AT89C52 增加了在线调试功能 即程序可以通过 JTAG 接口下载 调试和固化 因而 该芯片的开发不再需要昂贵的硬件仿真器 可实现实时仿真 所有的资源都可以为用 户所使用 可以在线编程或在系统编程 更进一步地说 在线编程或在系统编程是开 发的系统具有了通过网络进行升级 维护的潜在功能 AT89C52 的性能及特点 1 与 MCS 51 系列单片机兼容 片内有 8K 可在线重复编程的快速内 存可擦写存储器 Flash Memory 存储器可循环写入 擦写 10000 次以上 存储器数据保存时间为 10 年以上 宽工作电压范围 Vcc 可为 2 7V 6 5V 全静态工作 可从 0Hz 24MHz 程序存储器具有三级加密保护 256 字节的内部 RAM 32 条可编程 I O 口线 三个 16 位定时器 计数器 中断结构具有 5 级 6 级 中断源和两个优下级 可编程全双工串行通讯 空闲维持低功耗和掉电状态保护存储数据 AT89C52 引脚图如图 2 所示 2 图图 2 AT89C52 引脚图引脚图 VCC 5V 电源输入 GND 接地 P0 口是一个双向 8 位三态 I O 口 每个口可独立控制 使用时需外接上拉电阻 P1 口是一个准双向 8 位 I O 口 它的功能是单一的 只能用作数据的输入或者输 出 P2 口是一个准双向 8 位 I O 口 输出时 从 P2 x 端口可输出 CPU 写到锁存器上 的信号 当该接口用做数据输入接口是 应先向该位写 1 然后 读该位即可读入输入 数据 P3 口是具有第二功能的准双向 8 位 I O 口 ALE PROG 地址所存 编程信号线 当 P0 口工作在第二功能时从该端口可复用工 作 某时刻该端口可以送出地址信号 A0 A7 而另外的时刻该端口传送的是数据信号 D0 D7 利用 ALE 可以将地址信号 A0 A7 锁存到地址锁存器 VPP 该控制信号线也具有双重功能 是允许访问片外 ROM 编程高电压引线 EA 3 程序存储器允许输出控制端 常用作片外 ROM 的读控制信号 低电平有PSEN 效 RESET 复位引脚 当该端加上超过 24 个时钟周期的高电平时 可是 8051 复位 系统复位电路如图 2 3 所示 X1 X2 外接时钟引脚 X1 为片内振荡电路的输入端 X2 为片内振荡电路的输 出端 2 2 2 振荡电路设计 AT89C52 内部有一个用于构成片内振荡器的高增益反相放大器 振荡器产生的信 号送到 CPU 作为 CPU 的时钟信号 驱动 CPU 产生执行指令功能的机器周期 引脚 XTAL1 和 XTAL2 是此放大器的输人端和输出端 这个放大器与作为反馈元件的片外 石英晶体或陶瓷谐振器一起可构成一个自激振荡器 振荡电路的连接如图所示图 8 所示 外接石英晶体或陶瓷谐振器以及电容 C1 和 C2 构成并联谐振电路 接在放大器的反馈 回路中 对外接电容 C1 和 C2 的值虽然没有严格的要求 但电容的大小多少会影响振 荡器频率的高低 振荡器的稳定性 起振圈内部振荡的接法的快速性和温度稳定性 外接石英晶体时 C1 和 C2 一般取 40pF 10pF 外接的是石英晶体 所以 C1 C2 选择标称值 30pF 2 系统振荡电路如图 3 所示 图图 3 振荡电路振荡电路 2 2 3 复位电路设计 单片机复位是使 CPU 和系统中的其他功能部件都处在一个确定的初始状态 并从 这个状态开始工作 无论是在单片机刚开始接上电源时 还是断电后或者发生故障后都 要复位 89 系列单片机的复位信号是从 RST 引脚输人到芯片的施密特触发器中的 当 系统处于正常工作状态时 且振荡器稳定后 如果 RST 引脚有一个高电平并维持 2 个 机器周期 24 个振荡周期 则 CPU 就可响应并且将系统复位 复位分为手动复位和 4 上电复位 本设计系统采用的是上电自动复位 系统复位电路如图 4 所示 图图 4 复位电路复位电路 2 2 4 数码管显示电路设计 本系统使用了 6 只集成式共阴极数码管 7SEG MPX6 CC BLUE 所有数码管 a 引 脚并联在一起 b c d e f g dp 也是分别并联的 任何时候发送的段码均会传 送到所有的数码管上 所有数码管共阴极是独立的 为了使不同的数码管显示不同字符 这种集成式多位数码管常用的动态扫描显示 技术 它利用了人的视觉暂留特征 宣统第 1 只数码管时 发送 1 的段码 选通第 2 只数码管时 发送 2 的段码 选通第 3 只数码管时 发送 3 的段码 每次仅选通一只 数码管 发送对应的段码 每次切换选通下一数码管并发送相应段码的时间间隔非常 短 视觉惰性使人感觉不到字符是一个接一个显示在不同数码管上的 而会觉得所有 字符很稳定的同时显示在不同数码管上 3 数码管电路如图 5 所示 5 图图 5 数码管显示电路数码管显示电路 2 2 5 按键电路设计 本系统的计数按键连接单片机的 P3 2 INT0 程序中将 INT0 的中断触发方式设置 为下降沿触发 这样使得计数按键按下时 P3 2 上由高到低的跳变会触发中断 如果 按下后没有释放 中断则不会持续触发 只有在释放按键后再次按键时 才会因为又 出现高电平到低电平的跳变而再次触发中断 这样会使计数值仅在计数键每次重新按 下时累加 按键电路如图 6 所示 6 图图 6 按键电路按键电路 2 3 总电路设计 系统总电路图如图 7 所示 7 图图 7 系统总电路图系统总电路图 3 软件系统设计 3 1 软件系统总体方案设计 系统软件由主程序模块 测温程序模块 键盘扫描程序模块以及液晶驱动程序模 块组成 软件总体框图如图 8 所示 图图 8 软件总体框图软件总体框图 3 2 软件流程图设计 系统软件流程图如图 9 所示 图图 9 系统软件流程图系统软件流程图 4 系统调试系统调试 程序在 Keil uVision4 环境下编写 编译通过后生成 hex 文件加载到 Protuse 下可正 8 常运行 程序刚运行前数码管显示初值为 0000 00 接通电源后系统开始计时 程序中 每 0 01s 进入一次定时中断 故精度可达到 0 01s 在程序运行过程中若按下一次功能 键 则系统暂停计时 数码管显示计时截至状态 若再次按下功能键 系统自动清零 并重新开始计时 如此重复进行下去 图 10 为第一次按下功能键后的状态 图图 09 系统调试状态图系统调试状态图 5 总结总结 5 1 本系统存在的问题及改进措施 本系统所设计的秒表计时器基本实现了所要求的功能 但经过后期的实验发现 其实本系统的精度还不是特别精确 做过对比后得知 当该系统运行大概 450 秒时 9 与标准时间相比相差一秒 这对计时时间所要求高精度还需要进一步矫正 依据个人 观点 实现高精度的计时 仅通过单片机内部定时并不能到达要求 因为系统每次进 入中断处理函数都会多少消耗些没经预算的时间 长时间积累之后误差就会变明显 希望以后能改正这些误差 是通过外加定时器还是修改参数是在以后的学习中要注意 的 5 2 心得体会 本次课程设计是电子技术基础 是对所学单片机理论知识的一次综合运用 在本 次设计过程中 要求我独立查阅资料 设计电路 这样可以在实践中锻炼我的工程素 质 培养我的动脑 动手能力 提高我的综合能力 通过这次对电子秒表的设计与制作 让我了解了设计电路的程序 也让我了解了关 于秒表的基本原理与设计理念 要想成功的做好本次课程设计 我们需要有扎实的知 识基础 要熟练的掌握课本上的知识 这样才能对试验实验中出现的问题进行分析解 决 要有耐心和毅力 最后 这次设计培养了自己严谨认真 实事求是的好习惯 一个复杂的电路原理图 涉及到很多的接线与元器件 任何一根线连接错误 都有可能导致输出不正确 连接 的时候 要特别注意结点 每完成一个电路原理图 要记着保存 参数要选择正确 板块的布局要紧凑美观等 通过对细节的修正 是使自己设计的电路图更加符合实际 的功能要求 由于本人水平有限 设计中难免有纰缪之处 还请各位老师指正润色 参考文献 1 郭文川主编 单片机原理与接口技术 北京 中国农业出版社 2007 2 郭天祥主编 51 单片机 C 语言教程 北京 电子工业出版社 2009 3 彭伟主编 单片机 C 语言教程设计实例 北京 电子工业出版社 2009 10 附录 1 系统的源程序清单 include include define uchar unsigned char define uint unsigned int uchar Count 0 uchar code DSY CODE 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6f uchar Digits of 6DSY 0 0 0 0 0 0 void DelayMS uint x uchar i while x for i 0 i 120 i 主程序 void main uchar i j TMOD 0 x01 定时器 0 工作于方式 1 TH0 65535 10000 256 TL0 65535 10000 256 IE 0 x83 开外部中断 0 和计时器中断 0 11 IT0 1 下降沿触发 TR0 0 定时器开始工作 Digits of 6DSY 0 0 Digits of 6DSY 1 0 Digits of 6DSY 2 0 Digits of 6DSY 3 0 Digits of 6DSY 4 0 Digits of 6DSY 5 0 while 1 j 0 x7f for i 5 i 1 i 显示 6 位 j crol j 1 P1 j P0 DSY CODE Digits of 6DSY i if i 2 P0 0 x80 1 100 精确度小数点显示 DelayMS 2 void Time0 interrupt 1 uchar i TH0 65535 10000 256 TL0 65535 10000 256 Digits of 6DSY 0 for i 0 i 5 i if Digits of 6DSY i 10 Digits of 6DSY i 0 if i 5 Digits of 6DSY i 1 else break void ex int interrupt 0 Count if Count 1 12 TR0 1 if Count 2 TR0 0 if Count 3 Digits of 6DSY 0 0 Digits of 6DSY 1 0 Digits of 6DSY 2 0 Digits of 6DSY 3 0 Digits of 6DSY 4 0 Digits of 6DSY 5 0 Count 0 include include define uchar unsigned char define uint unsigned int uchar Count 0 uchar code DSY CODE 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6f uchar Digits of 6DS
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物理学考研备考经验分享
- 水利工程水利工程工艺流程规范
- 合同管理标准化工具及功能详述
- 小区农业种植项目合作协议
- 企业社会责任实践指南与评估系统
- 一次难忘的课堂事件记事话题结合类作文14篇
- 春天的田野描写自然景色作文(9篇)
- 农业资源合理利用与保护项目合作协议
- 我的榜样人物故事4篇
- 企业标准化合同管理体系
- 6.1 包饺子(教案)北师大版数学三年级上册
- 现代学徒制企业试点工作评估报告
- 火电厂特种设备培训课件
- 2025年中学无线电知识竞赛题库
- 2025《心肺复苏机救治院内心搏骤停患者护理专家共识》解读
- 自带设备管理办法
- 2025年天津港校招笔试题目及答案
- 工程图学发展史
- 陪诊培训课件模板
- 中药煎药培训课件
- 2025保安证考试试题及答案集合
评论
0/150
提交评论