




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机系统课程设计单片机系统课 程 设 计成绩评定表设计课题 数字秒表设计 学院名称 : 电气工程学院 专业班级 : 自动1304 学生姓名 : 学 号 : 指导教师 : 设计地点 : 31-505 设计时间 : 2015-12-282016-01-08 指导教师意见:成绩: 签名: 年 月 日单片机系统课 程 设 计课程设计名称: 数字秒表设计 专 业 班 级 : 自动1304 学 生 姓 名 : 学 号 : 指 导 教 师 : 课程设计地点: 31-505 课程设计时间: 2015-12-282016-01-08 单片机系统 课程设计任务书学生姓名 专业班级自动1304学号201323020408题 目数字秒表设计课题性质工程设计课题来源自拟指导教师主要内容(参数)使用AT89S52单片机作为核心控制部件,采用12M晶体振荡器及微小电容构成振荡电路;采用S8550作为数码管的驱动部分;用两个四位一体共阳极或共阴极数码显示管作为显示部分,构成数字式秒表的主体结构,配合独立式键盘和复位电路完成此秒表的复位、计时、连续、清零、停止各项功能任务要求(进度)第1-2天:熟悉课程设计任务及要求,查阅技术资料,确定设计方案。第3-4天:按照确定的方案设计单元电路。要求画出单元电路图,元件及元件参数选择要有依据,各单元电路的设计要有详细论述。第5-6天:软件设计,编写程序。第7-8天:实验室调试。第9-10天:撰写课程设计报告。要求内容完整、图表清晰、文理流畅、格式规范、方案合理、设计正确,篇幅不少于6000字。主要参考资料1李朝青.单片原理及接口技术(第3版).北京:电子工业出版社.20102单片机实用教程. 北京:北京航空航天大学出版社.20003何立民.单片机应用技术选编.北京:北京航空航天大学出版社.19974马忠梅.单片机的C语言Windows环境编程宝典M. 北京:北京航空航天大学出版社.2003审查意见系(教研室)主任签字: 年 月 日 25目录1 数字式秒表的设计介绍11.1设计任务及功能要求11.2数字式秒表的方案介绍及工作原理说明12 数字式秒表硬件系统的设计22.1 AT89S52芯片的介绍22.2 时钟电路的介绍32.3 复位电路的介绍42.4 键盘电路的介绍52.5 驱动及显示电路的介绍62.6 单片机下载口电路63 数字式秒表软件系统的设计73.1 数字式秒表使用单片机资源情况73.2 主程序流程图83.3 秒表的工作流程图93.4 显示程序流程图103.5软件系统程序清单114 设计结果及误差分析124.1 数字式秒表的设计结论及使用说明124.2 调试软件介绍124.3 KEIL uVision3简介135系统调试136 数字式秒表的设计体会156.1 秒表的课程设计体会15参考文献17附录A 原理图18附录C 程序211 数字式秒表的设计介绍1.1设计任务及功能要求 由单片机接收小键盘控制递增计时,由LED 显示模块计时时间,显示格式为 00-59(分)00-59(秒).00-99(毫秒),精确到0.01s的整数倍。绘制系统硬件接线图,并进行系统仿真和实验。画出程序流程图并编写程序实现系统功能。 使用单片机AT89S52作为主要控制芯片,以四位一体共阳极数码显示管通过三极管驱动作为显示部分,设计一个具有特定功能的数字式秒表。该数字式秒表上电或按键复位后能自动显示系统提示符“P.”,进入准备工作状态。该数字式秒表通过按键控制可实现开始计时、暂停计时、连续计时、清零和停止功能。1.2数字式秒表的方案介绍及工作原理说明 使用AT89S52单片机作为核心控制部件,采用12M晶体振荡器及微小电容构成振荡电路;采用S8550作为数码管的驱动部分;用两个四位一体共阳极或共阴极数码显示管作为显示部分,构成数字式秒表的主体结构,配合独立式键盘和复位电路完成此秒表的复位、计时、连续、清零、停止各项功能。 键盘部分方案:键盘控制采用独立式按键,每个按键的一端均接地,另一端直接和P1口相连,在按键和P1口之间通过10K电阻与+5V电源相连。键盘通过检测输入线的电平状态就可以很容易地判断哪个键被按下了,这种方法操作速度高而且软件结构很简单,比较适合按键较少或操作速度较高的场合,这种独立式接口的应用很普遍。 显示部分方案:显示部分采用动态显示。数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。事实上,显示器上任何时刻只有一个数码管有显示。由于各数码管轮流显示的时间间隔短、节奏快,人的眼睛反应不过来,因此看到的是连续显示的现象。为防止闪烁延时的时间在1ms左右,不能太长,也不能太短。本设计可采用P0口直接驱动八段数码管显示。此电路采用单片机的P0口作为数码显示管的段控,采用P2口作为数码管的位控。8个独立式键盘分别接在单片机的P1口上,以及其他部分构成数字式秒表的硬件电路。通过编写程序使用单片机的定时计数器,以及软件延时,中断资源来实现秒计时和相关控制。此数字式秒表的硬件整体结构如图1-1所示。 图1-2 数字秒表硬件电路基本原理图2 数字式秒表硬件系统的设计2.1 AT89S52芯片的介绍(1) 与MCS-51产品相兼容;(2) 具有8KB可改写的Flash 内部程序存储器,可写/擦1000次;(3)256字节内部RAM;(4) 32根可编程I/O口;(5) 3个16位定时器/计数器。 (6) 8个中断源;(7) 可编程中串行口;(8) 低功耗空闲和掉电方式。它的价格便宜,功能强大,能耗低。很大程度上减少总电路的复杂性,提高了所设计系统的稳定性。其芯片引脚图如图2-1所示。图2-1 单片机引脚图2.2 时钟电路的介绍 时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时序电路。输入端为芯片引脚XTAL1,输出端为引脚TXAL2,在芯片的外部通过这两个引角跨接晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器。 此电路采用12MHz的石英晶体。时钟电路如图2-2所示。 图2-2 时钟电路2.3 复位电路的介绍 复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误是系统处于死锁状态时,为摆脱困境,也需要按复位键以重新启动。RST引脚是单片机复位信号的输入端,复位信号是高电平有效,其有效时间应持续24个振荡周期(即2个机器周期)以上,若使用频率为6MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作。复位操作有上电自动复位和按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的。按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的。在本设计中采用了按键电平复位方式,其复位电路如图2-3所示: 图2-3 复位电路2.4 键盘电路的介绍本设计使用独立式键盘接在单片机的P1口上但通过软件赋予其中三个按键功能,其中S2是计时开始按键,S3为停止按键,S4为计时暂停按键,S5为继续计时按键,S6是清零按键。注意使用时只有在暂停状态下才能继续计时,只有在停止状态下才能清零,在停止时不能继续计时,在暂停时不能清零。键盘电路如图2-4所示:图2-4 键盘电路2.5 驱动及显示电路的介绍数码管实际上是由二极管构成发光二级管正常工作时,其两端正向压降约为1.6v,正向电流约为10mA,为了使数码管达到一定的亮度而又不至于由于电流过大而损坏,我们使用三极管S8550作为数码管的驱动,同时在P0口和P2口上串上470欧姆的电阻。此处使用四位一体共阴极数码管,由于驱动电路决定了此处共阴极数码管和共阳极数码管均可以采用而且均采用共阳极代码来编写显示程序,具体电路如图2-5所示。 图2-5 数码管驱动及显示电路图2.6 单片机下载口电路下载口主要是一个十芯的座子,如图2-6所示。可以通过使用USB下载线对单片机进行程序下载。方便整个软件的设计,也能让我们使用起来更加方便。 图2-6 单片机下载口电路图3 数字式秒表软件系统的设计3.1 数字式秒表使用单片机资源情况 本次电子钟设计除了了使用单片机工作所必须的硬件资源(如连接晶振的引脚XTAL1和XTAL2,复位引脚RESET)外,对单片机的硬件资源还做了具体的安排。P0口:P0.0-P0.7作为数码管显示器的段控。P1口:P1.0、P1.2、P1.3、P1.4(由于自己的P1.1口所接的按键不怎么灵敏所以不用P1.1口)作为独立式键盘的输入端。P2口:P2.0-P2.7分别控制数码管LED0-LED7的位控码驱动。3.2 主程序流程图 图3-2 主程序的流程图3.3 秒表的工作流程图 图3-3 秒表工作的流程图3.4 显示程序流程图开始现场保护寄存器初始化显示代码查表送段控代码送位控代码延时1ms送段控代码位控代码左移左移8次?恢复现场返回NY 图3-4.1 显示程序流程图 图3-4.2 按键扫描流程图3.5软件系统程序清单 按照流程图应用软件keil,使用C语言编程实现秒表功能。程序见附录C。 4 设计结果及误差分析4.1 数字式秒表的设计结论及使用说明 通过设计和调试,数字式秒表能顺利完成各项功能。上电或复位后显示“P.”提示符,此时按key1键便可开始计时。在计数状态下,按下key2键即可实现暂停,再次按下key3键即可实现继续计数,在计数状态下按下key5键,实现计数停止,在停止状态下按下key4键,便可实现计数清零。4.2 调试软件介绍 本电子钟的设计用的pretues仿真软件设计电路并仿真。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。因为pretues仿真软件中所有的情况都是在理想想的条件下,但是与实际电路的工作还是有很大的差别,所以我们必需考虑到实际情况应接入驱动限流等电路它才能被实际所应用。4.3 KEIL uVision3简介KEIL C51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强,使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision3的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision3 IDE可为它们提供单一而灵活的开发环境。5系统调试系统功能测试: 单片机系统经过总体设计,完成了硬件和软件设计开发。通过软件和硬件相结合系统即可运行。但编制好的程序或连接好的线路不能按预计的那样正常工作是常见的事,经常会出现一些硬件、软件上的错误,这是软件和硬件开发者经常遇见的,这就需要通过调试来发现错误并加以改正。调试可分为硬件调试和软件调试。本设计系统的已经在PC机上用模拟开发软件进行了检测和调试,并运行成功,最后进行实物的硬件连接与调试。本设计是在Proteus软件和Wava6000软件相结合调试的,完全用仿真软件在PC机上对目标电路原理图和程序进行检测和调试。调试过程中单片机相应输入端由通用键盘和鼠标设定,运行状态、各寄存器状态、端口状态等都可以在指定的窗口区域显示出来,以确定程序运行有无错误。目标程序纠错:该阶段工作通常在目标程序编辑时就完成。一般来说,仿真软件能为用户输入的程序指令纠错,包括书写格式、标号未定义或多重定义、转移地址溢出等错误。整体程序调试:即把各子程序整体连起来进入到综合电路调试,看是否能实现预计的功能显示。在这阶段若发生故障,可以考虑各子程序在运行时是否破坏现场,数据缓冲单元是否发生冲突,标志位的建立和清除在设计上是否失误,堆栈是否溢出,输入输出状态是否正常等。系统上电后,显示正常,进行了以下测试。1.复位功能测试。2.计时功能测试。3.连续功能测试。4.清零功能测试5.停止功能测试上述测试结果基本和预期相符,符合设计要求,调试结束。调试图片如下图5-1 系统运行图 图5-2 清零图 6 数字式秒表的设计体会6.1 秒表的课程设计体会 这次的秒表课程设计从制作硬件“最小系统板”到写数字式秒表的程序调试到上板,可以说是苦多过甜啊!首先,拿制作“最小系统板”来说吧!从刚开始用protel的画原理图到画PCB图每天疯狂的看有关于protel的书籍那一个星期可以说是个疯狂的星期, 每天一上课回来就是画图,PCB图导入导的一遍又一遍,最后面到制作板子,打磨-印上板-去铜-焊元件。到最后竟然导入程序没有显示,蜂鸣器还一直嗡嗡作响,自己折磨了两天还是没出原因,最后面是去问了老师才把这个问题解决,原来是自己的封装错误了,按键和单片机的P1口没有连接上,最后只能是从按键飞了八根口线到P1口,单片机最小系统板才能正常使用。 到写秒表的程序,参考书籍选用最佳的设计方案,根据课程设计的要求一个模块一个模块的写,虽然秒表的程序很简单但是涉及到的内容很多是一个很好的学习机会。通过这次单片机课程设计,让我对整个单片机程序的设计,C51语言有了一个比较深的理解。还有就是增强了自身的动手能力,由原来的单纯地书本学习转向创新思考,把以前书本上讲的或是没有讲的,通过一次课程设计具体的实施,很自己的团队合作精神真正得到锻炼。例如:检查和排除故障的能力。本次课程设计,也培养了我们小组的合作精神,所谓团结就是力量,就是一个再好不过的解释。它不仅为我以后的课程设计打下基础,而且还培养了我们的合作精神和分析问题的能力。 参考文献1李朝青.单片原理及接口技术(第3版).北京:电子工业出版社.20102单片机实用教程. 北京:北京航空航天大学出版社.20003何立民.单片机应用技术选编.北京:北京航空航天大学出版社.19974马忠梅.单片机的C语言Windows环境编程宝典M. 北京:北京航空航天大学出版社.20035李光飞.单片机C程序设计指导M.北京:北京航空航天大学出版社.20036李光飞.单片机课程设计实例指导M.北京:北京航空航天大学出版.20047李广弟.单片机基础(第3版).北京:北京航空航天大学出版社.2011附录A 原理图 图A-1 单片机最小系统原理图附录B PCB图、布局图、实物图 图B-1 单片机最小系统PCB图 图B-2 元器件布局图附录C 程序#include#include#define uchar unsigned char#define uint unsigned intuchar i,j,k,l,n,m,o,p;uchar code=0xa4,0xc0,0x90,0xc0,0xb0,0xbf,0xf9,0x90; uchar dm1=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf;char weikong8=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe ;void delay0(uint i) /延时1毫秒子程序 uchar j; /定义局部变量j while(i-) /每循环一次,变量减一,为零返回 for(j=0;j123;j+); /循环123次 /* 清零操作函数 */void q0() k=0; n=0; m=0; l=0; o=0; p=0; /* 显示程序函数 */void display() j=0xfe; P2=j; P0=dm1m; delay0(1); j=_crol_(j,1);P2=j; P0=dm1n; delay0(1); j=_crol_(j,1);P2=j; P0=dm110; delay0(1); j=_crol_(j,1);P2=j; P0=dm1k; delay0(1); j=_crol_(j,1); P2=j; P0=dm1l; delay0(1); j=_crol_(j,1);P2=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 我的母亲试题及答案老舍
- 育婴师考试中的实习经验总结试题及答案
- 药剂生物药剂学基本知识题及答案
- 激光应用中的环境适应性试题及答案
- 科技行业税务筹划的方法探讨试题及答案
- 申请发明专利需要的条件试题及答案
- 病句测试题目及答案
- 四年级品德与社会下册第三单元交通与生活3从古到今话交通教学设计和课后反思新人教版
- 医学基础知识涵养与能力试题及答案
- 能力资产面试题及答案
- 新能源汽车检测与维修技术专业课件
- 2025年营口职业技术学院高职单招(数学)历年真题考点含答案解析
- 2025-2030中国动物源胶原蛋白行业销售格局与推广策略研究分析研究报告
- 江西省八所重点2025届高三下学期4月联考(二模)政治试卷(含答案)
- 安保人员安全培训课件
- 房建工程施工现场文明施工管理标准
- 2025年中国光伏电池市场发展现状调研及投资趋势前景分析报告
- 2025年03月福建省气象局事业单位笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 中国钓鱼行业发展监测及投资战略规划研究报告
- 2025年上海嘉定区江桥镇企业服务有限公司招聘笔试参考题库附带答案详解
- 2025年高考语文二轮复习策略讲座
评论
0/150
提交评论