单片机60秒倒计时

单片机60秒倒计时
单片机60秒倒计时

摘要

近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具应用对象特点的软件结合,以作完善。模拟多通道压力系统是利用压力传感器采集当前压力并反映在显示器上,它可以分析压力过量程,并发出报警。并采用电子秤原理可根据输入单价准确的计算出物体的金额。

本篇论文讨论了简单的倒计时器的设计与制作,对于倒计时器中的LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。

关键词:单片机,软件,倒计时器,LED数码显示器。

目录

1.设计任务 (1)

2.设计的主要内容和要求 (1)

3.整体设计方案 (1)

4. 软件电路设计 (2)

4.1定时计数器初值运算 (2)

4.2程序框图设计 (2)

4.3程序代码 (3)

5. 硬件设计 (4)

6. 基于Proteus的电路仿真 (6)

6.1 系统调试工具PROTEUS (6)

6.2 总线路图 (6)

6.3运行结果 (7)

总结 (7)

参考文献 (8)

单片机系统课程设计

1.设计任务

设计一个基于单片机MCS-51的显示系统,要求实现以下功能:

1.在单片机系统与硬件开发过程中,与数码管和液晶屏显示器等显示仪器,本课程设采用的采用的显示仪器为数码管。

2.用keil 软件编写一个60秒倒计时时钟程序,且用两位数码管显示时间。

3.用单片机的定时器产生一秒的定时时间,作为秒倒计时间,当一秒产生时,秒计数自动减一,当秒计数到00时,自动又从59开始倒计数。

2.设计的主要内容和要求

1.基于单片机实现对数码管的控制。

2.在开始,数码管是关闭的,什么也不显示,当所编写的源程序下载到单片机中并

开始运行时,两位数码管会显示相应的变化时间。

3.整体设计方案

AT89C51单片机的内部16的内部16位定时器是一个可编程计时器,它既可以工作在13位定时方式,也可以工作在16位定时方式和8位定时方式。只要通过设置特殊功能寄存器TMOD ,即可完成方式的选择。计数器何时工作也是通过软件来设定TCON 特殊功能寄存器来完成的。整体设计方框图如图1。

图1 60秒倒计时整体方框图

电源

单片机

复位电路

数码管

时钟电路

4.软件电路设计

4.1定时计数器初值运算

(1)本电路应用TIMER0 MODE 16位计数器的计时中断法。

(2)1秒等于1000000微秒,而每一计时脉冲是1微秒,因此需输入100000个计时脉冲,方可达到1秒的时间。本设计中,设定中断每次溢出时间50ms。

(3)由上式得知,循环20次即可达到1秒定时,即:

N=t/Tcy=0.05s/0.000001=5000

X=65536-5000=15536=3CB0H

(4)由上式得知5000个脉冲,首先需设定TL0=3CH,TH0=0B0H,此时第1次只要输入5000个脉冲输入,就会溢出;第2次至第20次,则需每1000000个计时脉冲,定时1秒。

(5)上电时,显示60开始倒数计时按下开关实现位。

4.2程序框图设计

开始

显示60秒

循环20次

中断50ms溢出

跳转到LOOP1,倒计时开始

结束到0后返回主程序

图2程序框图

4.3程序代码

#include unsigned char second,timer; void t1_init()

{TMOD=0x10;

IE=0x88;

TH1=0x3c;

TL1=0xb0;

TR1=1;

}

void main()

{

t1_init();

second=59;

timer=0;

while(1);

}

void t1_func() interrupt 3 {

TH1=0x3c;

TL1=0xb0;

if (timer<20)

{

timer=timer+1;

}

else if(timer==20)

{

timer=0;

if(second==0)

{second=59;}

else

{second=second-1;

}

}

P2=second/10;

P3=second%10;

}

5. 硬件设计

各模块电路设计

5.1AT89C51的芯片概述

图3A T89C51的外形主要特点:

与MCS-51 兼容

4K字节可编程闪烁存储器

寿命:1000写/擦循环

数据保留时间:10年

全静态工作:0Hz-24MHz

三级程序存储器锁定

128×8位内部RAM

32可编程I/O线

两个16位定时器/计数器

5个中断源

可编程串行通道

低功耗的闲置和掉电模式

片内振荡器和时钟电路

AT89C51管脚说明:

(1)电源及时钟引脚(4个)

Vcc: 电源接入引脚

Vss:接地引脚

XTAL1:晶振震荡器接入的一个引脚(采用外部振荡器时,此引脚接地);

XTAL2:晶体振荡器的另一个引脚

(2)控制线引脚(4个)

RST/Vpd:复位信号输入引脚/备用电源输入引脚;

ALE:地址锁存允许信号输出引脚/编程脉冲输入引脚:

EA:内外存储器选择引脚/片外EPROM编程电压输入引脚;

PSEN:外部程序存储器选通信号输出引脚。

(3)并行I/O引脚

P0.0-P0.7:一般I/O口引脚或数据/低位地址总线复用引脚;

P1.0-P1.7:一般I/O口引脚;

P2.0-P2.7:一般I/O口引脚或高位地址总线引脚;

P3.0-P3.7:一般I/O口引脚或第二功能引脚

5.2 数码管显示器概述

本设计中采用的是7SEG–COM–ANODE型号数码管,它是一种半导体发光器件,其基本单元是发光二极管。实物如图4所示:

图4 7SEG-COM-ANODE数码管

数码管的分类:

数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴

极接到一起形成公共阴COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。

数码管有两种连接方法如下:

共阳极接法。把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。共阴极接法:把发光二极管的阴极连在一起构成公共阴极,使用时公共阴极接地。每个发光二极管的阳极通过电阻与输入端相连。

测量数码管引脚,分共阴和共阳两类:

找公共共阴和公共共阳:首先,我们找个电源(3到5伏)和1个1K(几百欧的也行)的电阻,VCC串接个电阻后和GND接在任意2个脚上,组合有很多,但总有一个LED 会发光的,找一个就够了,然后GND不动,VCC(串电阻)逐个碰剩下的脚,如果有多个LED(一般是8个),那它就是共阴的了。相反用VCC不动,GND逐个碰剩下的脚,如果有多个LED(一般是8个),那它就是共阳的。也可以直接用数字万用表,红表笔是电源的正极,黑表笔是电源的负极。

6.基于Proteus的电路仿真

6.1 系统调试工具PROTEUS

Proteus是一款EDA软件,该软件具有模拟电路仿真,数字电路仿真,单片机以及外围电路组成的系统的仿真,RS-232动态仿真,I2C调试器,SPI调试器,键盘和LCD系统的仿真,以及各种虚拟仪器,如示波器,逻辑分析仪,信号发生器等。该软件目前支持的单片机类型有:68000系列、8051系列、A VR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列、ARM以及各种外围芯片。该软件还支持大量的存储器和外围芯片,所以,该软件是一款集单片机和SPICE分析于一身的仿真软件。调试方法:首先用Keil软件将C编译成HEX文件,打开Keil软件,新建一个文档,输入C程序,保存成C格式文件,然后新建工程,连接单片机为AT89C51,选择Options for target,选择OUTPUT子菜单,在Create HEX Fi前打钩,DeBug子菜单中,Settings选择ProteusVSM Simulator,USE前打钩,再次运行文件,成功后在目录下会生成HEX文件,打开Proteus软件,或直接点击DSN文件,双击单片机模板,点击文件夹式样的图标选择对应的HEX驱动文件,然后点击开始,进行调试。

6.2 总线路图

按照图5总电路图进行连接

图5 总线路图

6.3运行结果

图6 运行结果图

总结

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。回顾起此次单片机课程设计,我仍感慨颇多,的确,从选题到定稿,从理论到实践,在接近四星期

的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说不懂一些元器件的使用方法,对单片机汇编语言掌握得不好……通过这次课程设计之后,一定把以前所学过的知识重新温故。

参考文献

[1] 彭伟.单片机C语言程序设计实训100例.电子工业出版社.2009年

[2] 张毅刚.单片机原理及应用[M].北京:高教教育出版社,2004年

[3] 周润景等. Proteus在MCS-51&ARM7系统中的应用百例[M].电子工业出版社,2006

[4]李光飞.《单片机课程设计实例指导》.北京:北京航空航天大学出版社,2004年

单片机60秒倒计时

目录 1前言 (1) 2工程概况 (2) 3正文 (2) 3.1 设计目的与要求 (2) 3.2 设计方法的目标 (2) 3.3 设计方法和内容 (2) 3.3.1硬件设计方法 (3) 3.3.2软件设计方法 (7) 3.4 软件调试过程 (9) 3.4.1 系统调试工具keil C51 (9) 3.4.2 系统调试工具PROTEUS (9) 3.4.3焊接电路,对各节点测试导通性 (10) 4有关说明 (11) 5设计总结 (11) 6致谢 (11) 7参考文献 (11)

前言 在生活和生产的各领域中,凡是有自动控制要求的地方都会有单片机的身影出现;从简单到复杂,从空中、地面到地下,凡是能想像到的地方几乎都有使用单片的需求。现在尽管单片机的应用已经很普遍了,但仍有许多可以用单片机控制而尚未实现的项目,因此,单片机的应用大有想像和拓展空间。 单片机就是微控制器,它是嵌入式系统中的重要且发展迅速的组成部分。单片机接上震荡元件(或震荡源)、复位电路和接口电路,载入软件后,可以构成单片机应用系统。将它嵌入到形形色色的应用系统中,它就成为众多产品、设备的智能化核心。所以,生产企业称单片机为“微电脑”。 单片机的应用有利于产品的小型化、多功能化和智能化,有助于提高劳动效率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保证安全等。但是,单片机应用的意义绝不仅限于它的广阔范围以及所带来的经济效益上,更重要的意义还在于:单片机的应用正从根本上改变着传统的控制系统设计思想和设计方法。从前必须有模拟电路或数字电路实现的大部分功能,现在已能使用单片机通过软件(编程序)方法实现了。这种以软件取代硬件并提高系统性能的控制系统“软化”技术,称之为微控制技术。微控制技术是一种全新的概念,是对传统控制技术的一次革命。随着单片机应用的推广普及,微控制技术必将不断发展、日益完善和更加充实。 近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。模拟多通道压力系统是利用压力传感器采集当前压力并反映在显示器上,它可以分析压力过量程,并发出报警。并采用电子秤原理可根据输入单价准确的计算出物体的金额。 本篇论文讨论了简单的倒计时器的设计与制作,对于倒计时器中的LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。

课程设计_单片机__60秒秒表汇编

目录 前言 (2) 1.总体设计方案 (3) 2硬件设计方案 (3) 2.1 电路原理 (3) 2.2 电路原理图 (4) 3.软件设计(加流程图) (6) 3.1函数流程图 (6) 3.2 算法描述 (9) 3.3源程序 (10) 4系统的安装调试 (11) 5课程设计总结与体会 (12) 6.参考文献 (14)

前言 单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。单片微型计算机简称单片机,是典型的嵌入式微控制器单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。 本次课程设计要求制作一个秒表,开始时,显示“00”,第1次按下按钮后就开始计时;第2次按按钮后,计时停止;第3次按按钮后,计时归零。

单片机定时器详解

一、MCS-51单片机的定时器/计数器概念 单片机中的定时器和计数器其实是同一个物理的电子元件,只不过计数器记录的是单片机外部发生的事情(接受的是外部脉冲),而定时器则是由单片机自身提供的一个非常稳定的计数器,这个稳定的计数器就是单片机上连接的晶振部件;MCS-51单片机的晶振经过12分频之后提供给单片机的只有1MHZ的稳定脉冲;晶振的频率是非常准确的,所以单片机的计数脉冲之间的时间间隔也是非常准确的,这个准确的时间间隔是1微秒; MCS-51单片机外接的是12MHZ的晶振(实际上是,所以,MCS-51单片机内部的工作频率(时钟脉冲频率)是12MHZ/12=1MHZ=1000000次/秒=1000000条指令/秒=1000000次/1000000微秒=1次/微秒=1条指令/微秒;也就是说,晶振振荡一次,就会给单片机提供一个时钟脉冲,花费的时间是1微秒,此时,CPU会执行一条指令,经历一个机器周期;即:1个时钟脉冲=1个机器周期=1微秒=1条指令; 注:个人PC机上的CPU主频是晶振经过倍频之后的频率,这一点恰好与MCS-51单片机的相反,MCS-51单片机的主频是晶振经过分频之后的频率; 总之:MCS-51单片机中的时间概念就是通过计数脉冲的个数来测量出来的;1个脉冲=1微秒=1条指令=1个机器周期; MCS-51单片机定时器/计数器的简单结构图: 8051系列单片机有两个定时器:T0和T1,分别称为定时器和定时器T1,这两个定时器都是16位的定时器/计数器;8052系列单片机增加了第三个定时器/计数器T2;它们都有定时或事件计数功能,常用于时间控制、延时、对外部时间计数和检测等场合; 二、定时器/计数器的结构

单片机课程设计-30秒倒计时

《30秒倒计时计时器》 课 程 设 计 专业班级:电子信息科学与技术3班 姓名:韩飘飘(080212131) 熊元甲(080212132) 蔡正军(080212133) 指导教师:郭玉 设计时间:2013-2014学年第二学期 物理与电气工程学院 2014年5月28日

目录 题目,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,1 目录,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2 第一章方案论证,,,,,,,,,,,,,,,,,,,,,,,,,,,,3 1.1课程设计的目的和要求,,,,,,,,,,,,,,,,,,,,3 1.2总体设计,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,4 第二章硬件设计,,,,,,,,,,,,,,,,,,,,,,,,,,,,,4 2.1CPU部分,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,4 2.2 LED数码管显示器概述,,,,,,,,,,,,,,,,,,,,5 2.3其他元器件介绍及参数选择,,,,,,,,,,,,,,,,,7第三章软件设计,,,,,,,,,,,,,,,,,,,,,,,8 第四章 4.1实验调试及结果(照片),,,,,,,,,,,,,,9 4.2 心得体会,,,,,,,,,,,,,,,,,,,,,,,,,,,,9 附录A: 软件程序,,,,,,,,,,,,,,,,,,,,,,,,,10 附录B: 参考文献,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,12

第一章方案论证 1.1课程设计目的和要求 (1)目的 课程设计是单片机课程教学的最后一个环节,是对学生进行全面的系统的训练。进行课程设计可以让学生把学过的比较零碎的知识系统化,真正的能够把学过的知识落到实处,能够开发简单的系统,也进一步激发了学生再深一步学习的热情,因此课程设计是必不可少的,是非常必要的。 课程设计是提高学生单片机技术应用能力以及文字总结能力的综合训练环节,是配合单片机课程内容掌握、应用得的专门性实践类课程。通过典型实际问题的实际,训练学生的软硬件的综合设计、调试能力以及文字组织能力,建立系统设计概念,加强工程应用思维方式的训练,同时对教学内容做一定的扩充。(2)要求 用单片机80C51的定时器实现30s,20s倒计时。本例中用两位数码管静态显示倒计时秒值。 (3)目标 通过课程设计,使自己深刻理解并掌握基本概念,掌握单片机的基本应用程序设计及综合应用程序设计的方法。通过做一个综合性训练题目,达到对内容的消化、理解并提高解决问题的能力的目的。

两位倒计时器程序(单片机―汇编语言)

两位倒计时器程序ORG00H JMPSTART ORG30H START: MOVP2,#00H;位选置低电平显示00 MOVP3,#0FH;键盘置P 3.4低电平 MOVR4,#0;显示标志显示00 MOVDPTR,#TABLE; SETBP 0.7 K: MOVR3,#00H JNBP 3.0,W1 JNBP 3.1,W2 JNBP 3.2,INT JMPDISP

W1:JBP 3.0,IN1 MOVR3,#1 JMPDISP W2:JBP 3.1,IN0 MOVR3,#2 DISP: JNBP 3.3,START MOVA,R4 MOVB,#10 DIVAB MOV21H,B DISP1:SETBP 2.1 CLRP 2.0 LCALL DEL DISP2:MOVA,21H SETBP

2.0 CLRP 2.1 LCALL DEL CJNER3,#4,K1 DJNZR2,DISP DJNZR1,DISP AJMPINT K1:INCR3 CJNER3,#3,K2 AJMPW2 K2:CJNER3,#2,K AJMPW1 IN1: CJNER4,#99,ADD1 AJMPSTART ADD1:INCR4;按键按下或未弹起标志 ;判断按键S1是否按下转判断S1按键是否弹起;判断按键S2是否按下转判断S2按键是否弹起;判断按键S3是否按下转倒计时设置子程序;转显示和判断按键S4是否按下 ;判断按键S1是否弹起转加1子程序设置;设置按键S1未弹起标志 ;转显示和判断按键S4是否按下 ;判断按键S2是否弹起转减1子程序设置;设置按键S2未弹起标志

单片机课设60秒计时器

单片机课程设计说明书 题目:00—60秒表设计 学院:机电工程学院 专业:机械设计制造及其自动化 学生:xxx 学号:xxx 指导教师单位:xxx 姓名: xxx 2013年12月13日

摘要 60秒计时器以单片机为核心,由计时器,控制器等组成。系统采用模块化设计,主要分为计时器显示模块和按键控制模块。每个模块的程序结构简单,任务明确,易于编写、调试和修改。编程后利用Kcil软件来进行编译,在生成HEX文件装入芯片中,在通过调试实现60s计时功能。本设计中系统硬件电路主要是由以下几个部分组成:单片机AT89C51、振荡电路、显示电路和按键开关。该系统具有60s准确计时和计时清零的功能。 关键字:单片机,计时,显示,60s计时,复位清零

目录 前言 (1) 一、概述 (1) 1.1、课程设计任务与目的 (1) 1.2、总体方案设计 (2) 1.2.1、设计方案框图 (2) 1.2.2、硬件方案 (2) 1.2.3、软件方案 (2) 二、系统硬件设计 (3) 2.1、电路总体设计方案 (3) 2.2、电路原理图 (3) 2.3、各硬件模块设计与制作 (3) 2.3.1、AT89C51单片机设计 (3) 2.3.2、晶振输入电路设计 (6) 2.3.3、复位电路设计 (7) 2.3.5、数码管显示部分电路 (8) 2.3.6、绘制原理图. (10) 2.3.7、生成PCB图 (11) 2.3.8、制作PCB板 (11) 2.3.9、钻孔,并焊接芯片 (12) 2.4、遇到的问题与解决办法 (13) 三、系统软件设计 (14) 3.1、软件总体设计方案 (14) 3.2、程序流程图 (16) 3.3、部分重要模块汇编程序: (16) 四、系统调试 (17) 4.1、软件调试 (17) 4.2、硬件调试 (18) 五、系统功能 (19) 六、总结 (19) 七、附录 (19) 八、参考文献 (21)

AT89C51单片机设计60s倒计时

目录 一、课程设计的目的、要求和设计目标 (1) 1、目的 (1) 2、要求 (1) 3、目标.................................................................. 1二、硬件要求 (2) 1、 AT89C51的芯片 (2) 2、 LED 数码管显示器概述 (3) 3、其他元器件介绍及参数选择.......................................... 6三、软件设计 (7) 1、程序流程图 (7) 2、程序导图 (7) 3、定时 /计数器初值计算 (7) 4、软件程序 (8) 5、软件仿真设计………………………………………………… 9四、软件调试………………………………………………………… 10 1、 <.HEX>文件的生成 (10) 2、PROTEUS …………………………………………………… 10五、心得体会………………………………………………………… 11 一、课程设计的目的、要求和设计目标 1、目的

单片机课程即将结束, 课程的最后一项是单片机的课程设计。通过课程设计, 我们要将在一个学期中所学的东西进行整理、归纳, 要把学到的知识转化成实际的运用,进一步的了解单片机的实质。通过动手设计,深入学习,体验单片机在日常生活中的运用,提升专业知识。 课程设计的总体包括:对单片机的了解、运用,设计思路的解析,报告文字的处理等。通过一系列的实际操作, 完善对课程的学习, 提升自我的学习能力和动手能力。 2、要求 (1用单片机 AT89C51的定时器实现 60s 倒计时。本例中用两位数码管静态显示倒计时秒值。 (2用 PROTEUS 设计,仿真基于 AT89c51单片机的 60s 倒计时实验。 (3通过 Keil uVision2软件,生成 .HEX 格式程序并植入 AT59C51单片机并调试、运行。 3、目标 通过自主完成课程设计内容, 整理学期中所学到的知识, 了解单片机的程序过程和一系列的基础操作,将理论和实践相结合,完善课业。 二、硬件要求 1、 AT89C51的芯片 芯片概述 AT89C51是一个低功耗,高性能 CMOS 8位单片机,片内含 4k Bytes ISP的可反复擦写 1000次的 Flash 只读程序存储器, 器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS-51指令系统及 80C51引脚结构,芯片内集成了通用

60秒计时器

单片机课程设计说明书 单片机课程设计说明书 题目: 00—60秒表设计学院:机电工程学院 专业:机械设计制造及其自动化学生姓名: xxx 学号: xxx 指导教师单位: xxx 姓名: xxx 2013年12月13日

摘要 60秒计时器以单片机为核心,由计时器,控制器等组成。系统采用模块化设计,主要分为计时器显示模块和按键控制模块。每个模块的程序结构简单,任务明确,易于编写、调试和修改。编程后利用Kcil软件来进行编译,在生成HEX文件装入芯片中,在通过调试实现60s计时功能。本设计中系统硬件电路主要是由以下几个部分组成:单片机AT89C51、振荡电路、显示电路和按键开关。该系统具有60s内准确计时和计时清零的功能。 关键字:单片机,计时,显示,60s计时,复位清零

前言 我们的任务是设计60s秒表计时器,用AT89C51单片机的定时/计数器T0产生一秒的定 时时间,作为秒计数时间,当一秒产生时,秒计数加1,秒计数到60时,自动从0开始,实现0到60秒的循环显示的功能。 现代计时器是用数字集成电路做成的现代计时器,与传统的机械钟相比,走时准确、显示直观(有荧光七段数码显示器)、无机械传动装置等优点。而且钟表的数字化给人 们生产生活带来了极大的方便。广泛用于个人家庭,车站,码头、办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英振荡器的广泛 应用,使得数字计时表的精度远远超过老式钟表,钟表的数字化给人们生产生活带来 了极大地方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、校时自 动打铃、时间程序自动控制、定是广播、自动启闭路灯、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字计时器及扩大其应用有着非常现实的意义。 一.概述 1.1课程设计的任务与目的 课程设计任务: 用AT89S51单片机的定时/计数器T0产生一秒的定时时间,作为秒计数时间,一秒产生时,秒计数加1,秒计数到60时,自动从0开始。额外拓展,一 个按键,实现从0开始重新计时。 课程设计目的: 课程设计是单片机课程教学的最后一个环节,是对学生进行全面的系统的 训练,进行课程设计可以让学生把学过的比较零碎的知识系统化,真正的能够把学过的知识落到实处,能够开发简单的系统,也进一步激发了学生再深一步 学习的热情,因此课程设计是必不可少的,是非常必要的。 课程设计是提高学生单片机技术应用能力以及文字总结能力的综合训练环节,是配合单片机课程内容掌握应用得的专门性实践类课程,通过典型实际问题的 实际,训练学生的软硬件的综合设计、调试能力以及文字组织能力,建立系统 设计概念,加强工程应用思维方式的训练,同时对教学内容做一定的扩充。 通过课程设计,使自己深刻理解并掌握基本概念,掌握单片机的基本应用程序设计及综合应用程序设计的方法,通过做一个综合性训练题目,达到对内容 的消化、理解并提高解决问题的能力的目的。 1.2、总体方案设计

单片机倒计时秒表课程设计

单片机倒计时秒表 课程设计

课程设计说明书 课程名称:单片机技术 设计题目:倒计时数字秒表设计院系: 学生姓名:张三 学号: ********* 专业班级: *********** 指导教师:李四 年月日

课程设计任务书 倒计时秒表

摘要:本次课程设计以AT89S52单片机为核心设计一个倒计时数字秒表,计数初值为59并开始每秒自动减1,当按键1按下时记录当前时间值,当按键2按下时显示当前记录值,显示过之后再次按下按键1时秒表复位为59。本设计硬件部分包括电源电路、复位电路、按键电路、振荡电路、数码管显示电路五部分电路,软件程序部分有定时中断程序、外部中断程序、显示子程序和延时子程序等。软件Proteus画出原理图并进行仿真,依照仿真成功的原理图接线,在万能版上把个个器件焊接好从而实现预期的功能。 关键词:倒计时 AT89S52 74LS47 数码管 目录

1.设计背景 (5) 1.1、设计课题的提出 (5) 1.2、设计作用及意义 (5) 2.设计方案 (6) 2.1、可行方案选择 (6) 2.2、可行方案比较 (6) 3.方案实施 (7) 3.1、硬件电路的实施 (7) 3.2、软件程序的实施 (11) 4.结果与结论 (13) 4.1、Proteus仿真运行结果 (13) 4.2、结论 (14) 5.收获与致谢 (14) 6.参考文献 (14) 7.附件 (15) 7.1、附件一(整体电路图) (15) 7.1、附件二(元件清单图) (16) 7.1、附件三(程序) (17) 7.1、附件四(运行实物图) (22) 1. 设计背景

单片机设计(流水灯、矩阵键盘、数码管倒计时)

单片机结业作业 1.电路图 2.程序: #include sbit P1_6=P1^6; sbit P1_7=P1^7; unsigned char code led[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; unsigned char clock[2]={59,59}; //60秒倒计时缓冲数组 unsigned char *dis_p; unsigned char keytest(); //键盘检测函数 unsigned char search(); //查键值函数 void display(unsigned char *p); //显示函数 void main() { unsigned char i,a,c; TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; dis_p=clock;

while(1) { P0=0x80; c=P0; for(i=0;i<8;i++) { c>>=1; P0=c; a=keytest(); if(a==0x0f) display(dis_p); else { display(dis_p); a=keytest(); if(a!=0x0f) { P3=0x00; a=search(); switch(a) { case 0x00:P2=0x3f;break; case 0x01:P2=0x06;break; case 0x02:P2=0x5b;break; case 0x03:P2=0x4f;break; case 0x04:P2=0x66;break; case 0x05:P2=0x6d;break; case 0x06:P2=0x7d;break; case 0x07:P2=0x07;break; case 0x08:P2=0x7f;break; case 0x09:P2=0x6f;break; case 0x0a:P2=0x77;break; case 0x0b:P2=0x7c;break; case 0x0c:P2=0x39;break; case 0x0d:P2=0x5e;break; case 0x0e:P2=0x79;break; case 0x0f:P2=0x71;break; default:break; } while((a=keytest())!=0x0f); } } } } }

51单片机中断系统详解

的定时器中断后便认为是1s,这样便可精确控制定时时间啦。要计50000个数时,TH0和TL0中应该装入的总数是65536-50000=15536.,把15536对256求模:15536/256=60装入TH0中,把15536对256求余:15536/256=176装入TL0中。 以上就是定时器初值的计算法,总结后得出如下结论:当用定时器的方式1时,设机器周期为T CY,定时器产生一次中断的时间为t,那么需要计数的个数为N=t/T CY ,装入THX和TLX中的数分别为: THX=(65536-N)/256 , TLX=(65536-N)%256 中断服务程序的写法 void 函数名()interrupt 中断号using 工作组 { 中断服务程序内容 } 在写单片机的定时器程序时,在程序开始处需要对定时器及中断寄存器做初始化设置,通常定时器初始化过程如下: (1)对TMOD赋值,以确定T0和 T1的工作方式。 (2)计算初值,并将初值写入TH0、TL0或TH1、TL1。 (3)中断方式时,则对IE赋值,开放中断。 (4)使TR0和TR1置位,启动定时器/计数器定时或计数。 例:利用定时器0工作方式1,实现一个发光管以1s亮灭闪烁。 程序代码如下: #include #define uchar unsigned char #define uint unsigned int sbit led1=P1^0; uchar num; void main() { TMOD=0x01; //设置定时器0位工作模式1(M1,M0位0,1) TH0=(65536-45872)/256; //装初值11.0592M晶振定时50ms数为45872 TL0=(65536-45872)%256; EA=1; //开总中断 ET0=1; //开定时器0中断 TR0=1; //启动定时器0 while(1) { if(num==20) //如果到了20次,说明1秒时间 { led1=~led1; //让发光管状态取反 num=0; } } } void T0_time()interrupt 1

单片机课程设计倒计时秒表

此次设计是我们更进一步了解基本电路的设计流程,提高自己的设计理念,丰富自己的理论知识,巩固所学知识,使自己的动手动脑能力有更进一步提高,为自己今后的学习和工作打好基础,为自己的专业技能打好基础。通过解决实际问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验以后从事生产和科研工作打下一定的基础。本次设计注重对单片机工作原理以及键盘控制及显示原理的理解,以便今后自己在单片机领域的学习和开发打下基础,提高自己的动手能力和设计能力,培养创新能力,丰富自己的理论知识,做到理论和实践相结合。本次设计的重要意义还在于对单片机的内部结构和工作状态做更进一步的了解,同时还对单片机的接口技术,中断技术,存储方式和控制方式作更深层次的了解。掌握单片机应用系统的软硬件设计过程、方法及实现,强化单片机应用电路的设计与分析能力。提高学生在单片机应用方面的实践技能和科学作风;培育学生综合运用理论知识解决问题的能力,实现理论结合实际,学以至用的原则。用所学的知识和自身课外的拓展学习加深对专业课的理解和学习;锻炼综合运用电路设计及相关电子仪器、单片机软硬件结合的理论,结合生产实际分析和解决工作工程实际问题的能力,加固、加深和扩展有关电子类,汇编语言,相关电子电路和仿真软件方面的知识和能力。通过本次课程设计,应加强培养如下能力: (1)加强自身独立的动手能力和思考解决问题的能力,提高创造能力; (2)学会使用软件Proteus画原理图和仿真调试。 (3)学会基本焊接电路板的技能 通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。 二、设计要求 1、可以以实现正常秒表的所有功能,包括启动、暂停、复位等; 2、可以自由设定倒计时时间(10s、20s、30s···),并进行倒计时; 3、显示方式自选; 4、任选一款51单片机; 5、扩展功能:在秒表的基础上增加时钟功能,倒计时完成时加入报警单元,如声音、灯光等。

单片机60秒倒计时

摘要 近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具应用对象特点的软件结合,以作完善。模拟多通道压力系统是利用压力传感器采集当前压力并反映在显示器上,它可以分析压力过量程,并发出报警。并采用电子秤原理可根据输入单价准确的计算出物体的金额。 本篇论文讨论了简单的倒计时器的设计与制作,对于倒计时器中的LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。 关键词:单片机,软件,倒计时器,LED数码显示器。

目录 1.设计任务 (1) 2.设计的主要内容和要求 (1) 3.整体设计方案 (1) 4. 软件电路设计 (2) 4.1定时计数器初值运算 (2) 4.2程序框图设计 (2) 4.3程序代码 (3) 5. 硬件设计 (4) 6. 基于Proteus的电路仿真 (6) 6.1 系统调试工具PROTEUS (6) 6.2 总线路图 (6) 6.3运行结果 (7) 总结 (7) 参考文献 (8)

单片机系统课程设计 1.设计任务 设计一个基于单片机MCS-51的显示系统,要求实现以下功能: 1.在单片机系统与硬件开发过程中,与数码管和液晶屏显示器等显示仪器,本课程设采用的采用的显示仪器为数码管。 2.用keil 软件编写一个60秒倒计时时钟程序,且用两位数码管显示时间。 3.用单片机的定时器产生一秒的定时时间,作为秒倒计时间,当一秒产生时,秒计数自动减一,当秒计数到00时,自动又从59开始倒计数。 2.设计的主要内容和要求 1.基于单片机实现对数码管的控制。 2.在开始,数码管是关闭的,什么也不显示,当所编写的源程序下载到单片机中并 开始运行时,两位数码管会显示相应的变化时间。 3.整体设计方案 AT89C51单片机的内部16的内部16位定时器是一个可编程计时器,它既可以工作在13位定时方式,也可以工作在16位定时方式和8位定时方式。只要通过设置特殊功能寄存器TMOD ,即可完成方式的选择。计数器何时工作也是通过软件来设定TCON 特殊功能寄存器来完成的。整体设计方框图如图1。 图1 60秒倒计时整体方框图 电源 单片机 复位电路 数码管 时钟电路

51单片机时钟实训报告

时、分、秒计时器设计 班级通信二班 姓名(学号)吕为国(093001351) 一、任务及要求 用51单片机设计时、分、秒计时器,具体要求如下。 1、具有时、分、秒计时功能和8位数码管显示功能,显示格式为:“时-分-秒”; 2、用Proteus设计仿真电路进行结果仿真; 3、4人组成设计小组完成,小组成员有明确分工,1人负责总体方案设计及报告撰写,2人负责功能模块函数设计,1人负责仿真电路设计及调试。 4、完成程序设计、仿真电路设计、结果仿真。 5、本实验要求设计一个数字计时器,可以完成0分00秒~23小时59分59秒的计时功能,并在控制电路的作用下有开机清零。 6、指标要求: ①.显示时、分、秒。 ②采用24小时制,小时计数器按“23翻00”规律计数。. ③为了保证计时准确、稳定,由单片机的定时器来计时。 7、设计要求: ①画出电路原理图(或仿真电路图); ②元器件及参数选择; ③电路仿真与调试; ④连接实物图,并调试; ⑤写出报告,并做总结; 二、设计方案 1、总体设计方案(李文负责完成) (说明总体设计方案构思、程序模块构成、仿真电路构成等内容,不少于300字))。构思:实现时钟的设计,如果采用软件延时的方法来实现时钟,太耗cpu了,因此采用51 单片机的内部硬件资源来实现时钟,因此采用定时器来定时,由于单片机的最大定时的时间为65.536ms;但是我们要定时1s,为了方便,我们则选用定时器0工作方式1且定时50ms,然后在中断20次则有了1s,有了1s就好办了,分,时就好办了,只要在1秒的基础上加就可以实现时钟了,有了时,分,秒就要显示了,由于时,分,秒都是两位,因此要把个位与十位分离,然后在分别在数码管上显示,这样就实现时钟的设计。 程序模块:1、主函数:(调用初始化函数,调用显示函数) 2、显示函数:(延时函数,数码管显示代码) 3、中断服务函数:(时,分,秒的实现) 仿真电路构成:数字钟的结构组成: 1)晶体振荡器电路 2)复位电路 3)数码管使用非门驱动及数码管

单片机课设60秒计时器

. 单片机课程设计说明书 —题目:0060秒表设计 机电工程学院学院: 专业:机械设计制造及其自动化 xxx学生姓名: 学号:xxx指导教师单位:xxx 名:xxx 姓 日月年20131213

.. . 摘要 60秒计时器以单片机为核心,由计时器,控制器等组成。系统采用模块化设计,主要分为计时器显示模块和按键控制模块。每个模块的程序结构简单,任务明确,易于编写、调试和修改。编程后利用Kcil软件来进行编译,在生成HEX文件装入芯片中,在通过调试实现60s计时功能。本设计中系统硬件电路主要是由以下几个部分组成:单片机AT89C51、振荡电路、显示电路和按键开关。该系统具有60s内准确计时和计时清零的功能。 关键字:单片机,计时,显示,60s计时,复位清零

.. . 目录 前言................................................................................................................................................................ . (1) 一、概述 (1) 1.1、课程设计任务与目的 (1) 1.2、总体方案设计 (2) 1.2.1、设计方案框图 (2) 1.2.2、硬件方案 (2) 1.2.3、软件方案 (2) 二、系统硬件设计 (3) 2.1、电路总体设计方案 (3) 2.2、电路原理图 (3) 2.3、各硬件模块设计与制作 (3) 2.3.1、AT89C51单片机设计 (3)

用单片机做的倒计时15s

用单片机设计15s倒计时器 跳线设置:默认跳线位置,注意蜂鸣器选择跳线J5要选23端 程序效果:利用单片机的定时/计数器设计一个15到0倒计时器,按S4后启动,要求精确显示到百分之一秒。 发挥部分: 1、定时结束后有提示音报警,并可重新定时 2、定时过程中按独立键盘s5可暂停,按S4继续 运行环境:51hei单片机学习板 */ ORG 0000H LJMP START //主程序必须避开地址000BH ORG 000BH //定时器0的中段服务程序,起始地址为000BH LJMP IT00 ORG 0030H START: MOV TH0,#0EBH //装入初始值,定时时间为10ms MOV TL0,#64H MOV TMOD,#01H //工作方式1 MOV 33H,#01 //显示初值为15s MOV 32H,#05 MOV 31H,#00 MOV 30H,#00 SETB ET0 //打开定时0 SETB EA //开总中断 LOOP1: JB P3.6,LOOP //判断高低位,即按键KEY0是否按下 LCALL DISPLAY //为低,即按键按下,延时消抖 LCALL DISPLAY JB P3.6,LOOP //按键真的按下,并不是外界的干扰 SETB TR0 //启动定时器 HERE: LCALL DISPLAY //调用显示 JB P3.7,LOOP3 //判断高低,即KEY1按键是否按下 CLR TR0 //按下,关闭定时器,这里并没有消抖 LJMP LOOP1 //等待KEY0的按下 LOOP3: SJMP HERE //KEY1没有按下,就需显示 LOOP: LCALL DISPLAY //KEY1没有按下,就需显示 LJMP LOOP1 //减10ms子程序 SUB1: DEC 30H //百分位减1 MOV A,30H CJNE A,#0FFH,LOOP2 //判断百分位减到0之后是否再减1 MOV 30H,#09 //是,装入初值9 DEC 31H //十分位减1 MOV A,31H CJNE A,#0FFH,LOOP2 //判断百分位减到0之后是否再减1 MOV 31H,#09

根据51单片机能实现任意时间倒计时

倒计时器 只要修改此文档15页源程序的(如下图)的到计时初值即可实现想要的倒计时。比如30分钟倒计时修改分钟十位和各位即可。 一、设计要求: 由单片机接收小键盘阵列设定倒计时时间,倒计时的范围最大为60分钟,由LED 显示模块显示剩余时间,显示格式为 XX(分):XX(秒).X,精确到0.1s的整数倍。倒计时到,由蜂鸣器发出报警。绘制系统硬件接线图,并进行系统仿真和实验。画出程序流程图并编写程序实现系统功能。 二、设计的作用目的: 此次设计是我们更进一步了解基本电路的设计流程,提高自己的设计理念,丰富自己的理论知识,巩固所学知识,使自己的动手动脑能力有更进一步提高,为自己今后的学习和工作打好基础,为自己的专业技能打好基础。通过解决实际问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法,提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验,为以后从事生产和科研工作打下一定的基础。本次设计注重对单片机工作原理以及键盘控制及显示原理的理解,以便今后自己在单片机领域的学习和开发打下基础,提高自己的动手能力和设计能力,培养创新能力,丰富自己的理论知识,做到理论和实践相结合。本次设计的重要意义还在于对单片机的内部结构和工作状态做更进一步的了解,同时还对单片机的接口技术,中断技术,存储方式和控制方式作更深层次的了解。

三、具体设计: 1.问题分析: 在电子技术飞速发展的今天,电子产品的人性化和智能化已经非常成熟,其发展前景仍然不可估量。如今的人们需求的是一种能给自己带来方便的电子产品,当然最好是人性化和智能化的,如何能做到智能化呢?单片机的引入就是一个很好的例子。单片机又称单片微型计算机,也称为微控制器,是微型计算机的一个重要分支,单片机是20世纪70年代中期发展起来的一种大规模集成电路芯片,是集CPU,RAM,ROM,I/O接口和中断系统于同一硅片上的器件。单片机的诞生标志着计算机正式形成了通过计算机系统和嵌入式计算机系统两个分支。目前单片机已渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。单片机已在广阔的计算机应用领域中表现得淋漓尽致电器因此,单片机已成为电子类工作者必须掌握的专业技术之一。单片机就是一个微型中央处理器,通过编程即能完成很多智能化的工作,因此它的出现给电子技术智能化和微型化起到了很大的推动作用。 本设计将采用89C51单片机,89C51单片机是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。单片机自带5个中断,两个16位定时器32个I/O口,可擦除只读存储器可以反复擦除多次,功能相当强大。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 面对如此功能强大的单片机,结合本次设计要求,应该要用到单片机的内部时钟电路以及外围的显示接口电路和报警电路。 对与时钟,它有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法。 在显示方面,有着多种选择,但是8段LED数码管足以满足此次设计的要求了。LED 数码显示器是一种有LED发光二极管组合显示字符的显示器件。它使用了8个LED发光二极管,其中7个用于显示字符,一个用于显示小数点,故通常称之为8段发光二极管数码器。 其内部结构如下图(a)所示:

单片机课程设计60秒倒计时

前言 在生活和生产的各领域中,凡是有自动控制要求的地方都会有单片机的身影出现;从简单到复杂,从空中、地面到地下,凡是能想像到的地方几乎都有使用单片的需求。现在尽管单片机的应用已经很普遍了,但仍有许多可以用单片机控制而尚未实现的项目,因此,单片机的应用大有想像和拓展空间。单片机的应用有利于产品的小型化、多功能化和智能化,有助于提高劳动效率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保证安全等。但是,单片机应用的意义绝不仅限于它的广阔范围以及所带来的经济效益上,更重要的意义还在于:单片机的应用正从根本上改变着传统的控制系统设计思想和设计方法。从前必须有模拟电路或数字电路实现的大部分功能,现在已能使用单片机通过软件(编程序)方法实现了。这种以软件取代硬件并提高系统性能的控制系统“软化”技术,称之为微控制技术。微控制技术是一种全新的概念,是对传统控制技术的一次革命。随着单片机应用的推广普及,微控制技术必将不断发展、日益完善和更加充实。 近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。模拟多通道压力系统是利用压力传感器采集当前压力并反映在显示器上,它可以分析压力过量程,并发出报警。并采用电子秤原理可根据输入单价准确的计算出物体的金额。本篇论文讨论了简单的倒计时器的设计与制作,对于倒计时器中的四位LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。

课程设计_单片机__60秒秒表

1任务及要求 1.1设计任务 学会用已经学过的单片机原理与应用的知识,来设计一个实用性的结构简单化的小型电子产品。编写一个程序,实现秒计时器从00—59计时的基本功能。利用Proteus工具来演示秒计时器的计时。 1.2设计要求 利用MCS-51系列单片机作为秒表的主控制器芯片,在单片机的P0端口和P2端口分别接两个共阴数码管,P0口驱动显示秒时间的十位,P2口驱动显示秒时间的个位。要求做到性能稳定,结构简单通俗易懂,结构模块化,从而做到节约成本。 (1)熟悉电路,了解P0和P1口的作用。 (2)熟悉W A VE编译环境。 (3)熟练掌握汇编语言,调用延时程序。 2设计思想 2.1硬件设计 将单片机设计成控制器,在AT89C51的P0口和P2口都接7SEG-COM-CATHODE,P0口接上拉电阻,分别显示十位和个位数字。 2.2软件设计 通过单片机实现控制00-59的计数,根据设计的要求,将0到59的数据除以10,分别取商和余数。并且当一秒钟到来时,计数单元加1,到达60时,则自动返回到0,从新秒计数。同时在计数过程中调用延时程序。

3电路原理与电路图 3.1电路原理 编写程序对80C51芯片进行初始化,在编程过程中主要使用延迟程序来实现秒计时器的计时功能。用Proteus软件来实现秒计时器的仿真,其中将P0口和P1口分别作为高低位输出端口。 3.2电路原理图 图3.1电路原理图

4流程图与算法描述 4.1函数流程图 4.1.1实验系统流程图 图4.1.1 实验系统流程示意图

4.1.2延时程序流程图 图4.1.2 延时程序流程图 4.2 算法描述 根据设计的要求,利用单片机控制,实现秒计数并显示,具体设计如下: (1)将0到59的数据通过对10整除和对10求余,将数据的个位和十位分开。 DIV AB (2)加1计数 INC @R0 (3)延时程序

相关文档
最新文档