基于单片机的秒表课程设计_第1页
基于单片机的秒表课程设计_第2页
基于单片机的秒表课程设计_第3页
基于单片机的秒表课程设计_第4页
基于单片机的秒表课程设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、基于单片机的秒表课程设计 基于单片机的秒表课 程设计 姓名: 班级: 学号: 专业: 指导老师: 目录 1、总体设计方案简介 1.1设计课程任务 1.2系统分析 1.3系统方案 1.4方案论证 2、硬件设计 2.1控制芯片的介绍 2.2硬件接线 2.2.1 硬件接线接口 2.2.2 硬件接线图 3、软件设计 3.1程序设计思路 3.2 流程图 3.3 源程序 3.4 仿真结果 4、元件清单 5、心得体会 基于单片机的秒表课程设计 摘要 本设计的成品是在单片机最小系统的基础上增加显示电路和控制电路来完成 数字式秒表的硬件电路的。电子秒表电路主要由AT89S51单片 最小系统电路、七段数码管动态显

2、示电路和控制电路组成,它能实现八段 数码显 示和计时,能通过控制电路控制时间的暂停和开始。 关键字:AT89S51数码管最小系统 1总体设计方案简介 1.1设计课题任务 设计一个具有特定功能的数字式秒表。用AT89C52设计一个2位LED 数码显示“秒表”,显示时间为00-59,另设计一个“开始“按钮和一个位”按 钮。按键说明:按“开始”按键,开始计数,数码管从00开始 秒自动加一;按“复位”按键,系统清零,数码管显示 00。 1.2系统分析 设计的电路主要是能多次计时,计时的多少通过显示电路出来,设 计框图如图所示; 1.3系统方案 利用AT89C52单片机设计数显定时器。此方案采用AT89

3、C52单片机系统来 实现。AT89C52芯片内含8KB的EEPRO, M不需要外扩展存储器,可是系统整体 结构更为简单。设计框图如图所示; 4方案论证 此方案是以AT89C52芯片为中心控制系统,可实现计时、清零等功能,大 大提高了系统的智能化,也是的系统所测结果精度大大提高。所以此方案可行。 2硬件设计 2.1控制芯片的介绍 AT89S52是一种低功耗、高性能的片内含有4KB快闪可编程/擦除只 读存 储器,的8位CMOS微控制器,使用高密度、非易失存储技术制造,并与80S52 引脚和指令系统完全兼容 主要性能: 与MCS-51微控制器产品系列兼容。 片内有4KB可在线重复编程的快闪擦写存储器

4、存储数据保存时间为10年 宽工作电压范围:VCC可为2. 7V到6V 全静态工作:可从0Hz至16MHz 程序存储器具有3级加密保护 128*8位内部RAB 32条可编程I/O线 两个16位定时器/计数器 中断结构具有5个中断源和2个优先级 可编程全双串行通道 空闲状态维持低功耗和掉电状态保存存储内容 2.2硬件接线 2.2.1硬件接线端口 时钟引脚:XTAL1和XTAL2与内部的反相放大器构成一个振荡器,它提供单 片机的时钟控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电 平时间。 P2 口: P2.6和P2. 7端口分别控制数码管的十位和个位供电,当相应的

5、端 口变成低电平时,驱动相应的三极管会导通,+5V通过三极管给数码 管相应的位供电,这是只要P0 口送出数字的显示代码,数码管就能正常显示数 字。 P0 口: PO. 0-P0. 6端口用排线连接到数码管显示模块区域中的A-G端 口上;PO.O对应着A ? PO.6对应着G P0.7接高电平。 P10接“开始”按键 2.2.2硬件接线图(见附录图) 3软件设计 3.1程序设计思路 在硬件的基础上,可以通过软件完成数字式秒表的设计。我先用 矩阵键盘上的任意两个独立按键作为控制键。用一个键去控制计时的开 始;用一个键做计时的清零按键。用按键扫描的方式判断按键是否按下。 用动态显示的方法扫描秒表的计

6、数,显示所记下的数。用中断的方法来 进行计时加1,每10ms中断一次进行重新赋值并加1,当10ms单元 到10,就令该单元赋0 ,并让100ms单元加1,以此类推。 3.2流程图 1主程序流程图 .程序开. J 程序初 开个中 关定时器 调用显示 3.3 COUNT EQU 22H ; 第一位数码管的位控制第二位数 码管的位控制到的标记 秒计数器 软件计数器 开定时器 源程序 FIRST EQU P2. 7 ; SECOND EQU P2. 6 ; SEC EQU OOH ;1S UALUE EQU 21H ; DISPBUF1 EQU 5EH ;5EH是显示缓冲区 DISPBUF2 EQU

7、5FH ;5EF是显示缓冲区 HIDDEN EQU 10 消隐码在字型码表的第10位 ORG 0000H LJMP START1 ORG OOOBH LJMP INT_TO ORG 01 OOH START1:JB P1.0,START1 LJMP START START:MOV SP,#5FH 设置堆栈指针初值 MOV VALUE, #0 秒计数器 MOV COUNT, #0 软件计数器 MOV DISPBUF1,#0 显示缓冲区填充0 MOV DISPBUF2, #0 显示缓冲区填充0 MOV TMOD, #01H MOVT HO,#OECH 取 60536 的高 8 位,60536=65

8、536-10000*6/12 定时器初 值,定时时间10ms MOV TLO,#98H 取 60536 的高 8 位,60536=65536-10000*6/12 定时 器初值,定时时间10ms SETB ETO 开T0中断 SETB TRO 定时器T0开始运行 CLR SEC SETB EA开总中断 LOOP:JBC SEC,NEXT ;1s至lj,消除1s到的标记 LCALL DISP SJMP LOOP ; NEXT:MOV A, VALVE MOV B, #10 DIV AB 显示缓冲区 JZ NEXT1 ; SJMP NEXT2 ; NEXT1:MOV A, #HIDDEN NEXT

9、2:MOV DISPBUF1, A MOV DISPBUF2,B ; LCALL DISP LJMP LOOP ; DISP:显示子程序 PUSH ACC PUSH PSW MOV A,DISPBUF1 ; MOV DPTR,#DISPTAB MOVC A,A+DPTR ;1 s未到,调用显ZF程序 继续循环 获得秒的数值 二进制转化为十进制,十位和 如果A中值是0,高位0消 否则直接送去显示 个位分别送 隐 MOV P0,A 个位送显示缓冲区 主程序到此结束 ;ACC 入栈 ;PSW 入栈 取第一个带显示数 字型表首地址 取字形码 将字型码送P0位 CLR FIRST开第一位显示器口 延时5

10、MS 尖闭第一位显示器(开始准备第二位的 去显示缓冲区的第二位 将第二个字型码送P0 口 开第二位显示器 延时 尖第二位显示器 显示程序结束 延时程序 LCALL DELAY SETB FIRST ;数字) MOV A,DISPBUF2 ; MOV DPTR,#DISPTAB MOVC A, A+DPTR MOV PO, A ; CLR SECOND LCALL DELAY SETB SECOND ; POP PSW POP ACC RET ; DELAY: ; 下是延时程序 PUSH PSW ;5ms SETB RSO MOV R7, #50 D1 : MOV R6, #50 D2: DJN

11、Z R6, $ DJNZ R7, D1 POP PSW RET DISPTAB: DB OCOH, 0F9H, OA4H, OBOH, 99H, 92H, 82H, 0F8H, 80H, 90H, OFFH ;显示字型表,最后一个OFFH是消隐码,它是表中的第11位元素 INT_TO:定时中断处理 PUSH ACC PUSH PSW;中断保护 MOV THO,#OECH MOV TLH, #98H ;定时计数器重置初值 INC COUNT;软件计数器加一 MOV A, COUNT CJNE A,#100, INT_RET MOV COUNT, #0 ;计到100,软件计数器清零 SETB SEC ;将秒标志置位一 INC VALVE;秒的值加一 MOV A, VALVE CJNE A, #60, INT_RET MOV VALVE, #0 INT_RET: POP PSW POP ACC RET I END 4元件清单 元件名 数量 AT89C52 1 八段数码管 2 NPN三极管 2 12M晶振 1 按键 2 330 0电阻 9 200 0电阻 1 无极性电容(30pf ) 2 电解电容(10U/25V) 1 5心得体会 本文主要从硬件方面说明设计的总体思路和设计的实现过程,预期的设 计目的是:能够 实现秒表的基本功能,正常显示计数

温馨提示

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

评论

0/150

提交评论