89C51单片机课程设计之秒表设计实验报告_第1页
89C51单片机课程设计之秒表设计实验报告_第2页
89C51单片机课程设计之秒表设计实验报告_第3页
89C51单片机课程设计之秒表设计实验报告_第4页
89C51单片机课程设计之秒表设计实验报告_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

这里可以加学校 LOGAL 单片机课程设计报告院系: xxxxxxxxxx班别: xxxxxxxxxx课程名称: 秒表设计姓名: xxx 学号: xxxxxxx指导老师: xxxxxxx2011.12.23目录1 课程设计的目的和任务1.1 单片机秒表课程设计的概述1.2 课程设计思路及描述1.3 课程设计任务和要求2 硬件与软件的设计流程2.1 系统硬件方案设计2.2 软件方案设计3 程序编写流程及课程设计效果3.1 源程序及注释3.2 原理图分析3.3 课程设计效果4 心得体会5 相关查阅资料1. 课程设计的目的和任务1.1 单片机秒表课程设计的概述一、课程设计题目秒表系统设计用 STC89C52RC 设计一个 4 位 LED 数码显示“秒表” ,显示时间为00.0099.99 秒,每 10 毫秒自动加一,每 1000 毫秒自动加一秒。二、增加功能增加一个“复位”按键(即清零) ,一个“暂停”和“开始”按键。三、课程设计的难点单片机电子秒表需要解决三个主要问题,一是有关单片机定时器的使用;二是如何实现LED 的动态扫描显示;三是如何对键盘输入进行编程。四、课程设计内容提要本课程利用单片机的定时器/计数器定时和记数的原理,结合集成电路芯片 8051、LED 数码管以及课程箱上的按键来设计计时器。将软、硬件有机地结合起来,使得系统能够正确地进行计时,数码管能够正确地显示时间。其中本课程设计有两个开关按键:其中 key1 按键按下去时开始计时,即秒表开始键(同时也用作暂停键 ),key2 按键按下去时数码管清零,复位为“00.00”.五、课程设计的意义1) 通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。2) 掌握定时器、外部中断的设置和编程原理。3) 通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。4) 该课程通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义六、课程设计仪器a) 集成电路芯片 8051,七段数码管, 89C51 单片机开发板b) MCS-51 系列单片机微机仿真课程系统中的软件(Keil uvision2) 。1.2 课程设计思路及描述该课程设计要求进行计时并在数码管上显示时间,则可利用 MCS-51 系列单片机的芯片AT89C52 的 P3.2,P3.5 作为按键的入口;定时器 T1 作为每 0.01 秒加一的定时器。其中“开始”按键当开关由上向下拨时开始计时,此时若再拨“开始”按键则数码管暂停;“清零”按键当开关由上向下拨时数码管清零,此时若再拨“开始”按键则又可重新开始计时。方框图如下图 1:开关 MCS-51AT89C52RCLED 显示图 1 数字秒表设计导向1.3 课程设计任务和要求1.3.1 设计指标 。了解 8051 芯片的的工作原理和工作方式 ,使用该芯片对 LED 数码管进行显示控制,实现用单片机的端口控制数码管,显示分、秒,并能用按钮实现秒表起动、停止、99 秒、清零等功能,精确到 0.01 秒。要求选用定时器的工作方式,画出使用单片机控制 LED 数码管显示的电路图,并实现其硬件电路,并编程完成软件部分,最后调试秒表起动、停止、清零等功能。1.3.2 设计要求 画出电路原理图(或仿真电路图) ; 软件编程与调试; 电路仿真与调试;2软件与硬件设计2.1 系统硬件方案设计单片机应用系统由硬件系统和软件系统两部分组成。硬件系统是指单片机以及扩展的存储器、IO 接口、外围扩展的功能芯片以及接口电路。软件系统包括监控程序和各种应用程序。在单片机应用系统中,单片机是整个系统的核心,对整个系统的信息输入、处理、信息输出进行控制。与单片机配套的有相应的复位电路、时钟电路以及扩展的存储器和 IO 接口,使单片机应用系统能够运行。在一个单片机应用系统中,往往都会输入信息和显示信息,这就涉及键盘和显示器。在单片机应用系统中,一般都根据系统的要求配置相应的键盘和显示器。配置键盘和显示器一般都没有统一的规定,有的系统功能复杂,需输入的信息和显示的信息量大,配置的键盘和显示器功能相对强大,而有些系统输入/输出的信息少,这时可能用几个按键和几个 LED 指示灯就可以进行处理了。在单片机应用系统在中配置的键盘可以是独立键盘,也可能是矩阵键盘。图 2 系统硬件结构框11.0592MHz 晶振2 个独立式的按键电源指示灯电源开关4 个数码管显示STC89C52RC2.2 软件方案设计此次选用 C51 来编程,首先要有初始化程序,通过初始化程序,将对主程序所用到的变量、常量以及各个参数和所调用的子函数定义。其次还有显示程序、按键扫描及处理程序、时钟程序和倒计时程序,系统软件流程图图如图 3 所示:3 程序编写的流程及课程设计效果3.1 源程序及注释/*-名称:数码管显示,按键控制秒表论坛:编写:shifang日期:2009.5修改:无开始系统初始化While (1)数码管显示选择按键的扫描及处理图 3内容:中断按键控制,数码管显示,中断 0 控制计时和停止,中断 1 清零-*/#include /包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义unsigned int msecond,second;/定义全局变量bit GoFlag;/定义停止,计时标志#define DataPort P0 /定义数据端口 程序中遇到 DataPort 则用 P0 替换sbit LATCH1=P22;/定义锁存使能端口 段锁存sbit LATCH2=P23;/ 位锁存sbit KEY=P32;unsigned char code dofly_DuanMa10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/ 显示段码值 09unsigned char code dofly_WeiMa=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;/分别对应相应的数码管点亮,即位码unsigned char TempData8; /存储显示值的全局变量void DelayUs2x(unsigned char t);/函数声明 void DelayMs(unsigned char t);void Display(unsigned char FirstBit,unsigned char Num);void Init_Timer0(void);void CLR(void);/*-主函数-*/void main (void)unsigned char num=0; EX0=1; /外部中断 0 开IT0=1; /IT1=0 表示边沿触发EX1=1; /外部中断 1 开IT1=1; /IT1=1 表示边沿触发Init_Timer0();while (1) /主循环TempData0=dofly_DuanMasecond/10;/分解显示信息,如要显示 68,则68/10=6 68%10=8 TempData1=dofly_DuanMasecond%10;TempData2=0x40;/ “-“TempData3=dofly_DuanMamsecond/10;/分解显示信息,如要显示 68,则 68/10=6 68%10=8 TempData4=dofly_DuanMamsecond%10;/主循环中添加其他需要一直工作的程序/*-显示函数,用于动态扫描数码管输入参数 FirstBit 表示需要显示的第一位,如赋值 2 表示从第三个数码管开始显示如输入 0 表示从第一个显示。Num 表示需要显示的位数,如需要显示 99 两位数值则该值输入 2-*/void Display(unsigned char FirstBit,unsigned char Num)static unsigned char i=0;DataPort=0; /清空数据,防止有交替重影LATCH1=1; /段锁存LATCH1=0;DataPort=dofly_WeiMai+FirstBit; /取位码 LATCH2=1; /位锁存LATCH2=0;DataPort=TempDatai; /取显示数据,段码LATCH1=1; /段锁存LATCH1=0;i+;if(i=Num)i=0;/*-定时器初始化子程序-*/void Init_Timer0(void)TMOD |= 0x01; /使用模式 1,16 位定时器,使用“|“符号可以在使用多个定时器时不受影响 /TH0=0x00; /给定初值/TL0=0x00;EA=1; /总中断打开 (总中断控制开关) ET0=1; /定时器中断打开 (允许中断 0 的发生)TR0=1; /定时器开关打开 (定时器 T0 开始工作)/*-定时器

温馨提示

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

评论

0/150

提交评论