当前位置:文档之家› 时间倒计时器

时间倒计时器

时间倒计时器
时间倒计时器

时间倒计时器

摘要:本设计是由一块ATMEL89C52单片机为主体所构成的电路,通过P0口对两个共阳数码管进行动态显示地控制,以达到时间倒计时的目的。为什么P0一个口可以同时让两个数码管亮呢?其实两个数码管在工作的时候并不是同时的,但由于人眼对光有延时效应,我们让两个数码管都显示很短的一段时间,然后不断重复,让人们感觉到两个数码管同时亮的。

一.系统方案

1.方案的论证

方案一:采用锁存器74hc573对单片机I/O进行控制,让两个数码管在不同的时段导通或断开,以达到对两个共阳数码管进行静态显示地控制,最终达到要求。

方案二:直接让数码管通过三极管8550接到单片机P0口上面,三极管的基极接到P2口上,通过控制P2口来控制数码管的导通或断开,通过控制P0口来显示数据。

2.方案比较:方案一运用锁存器可以对两个数码管的导通或断开做很精确的控制,并且可以很好的让两个数码管同时进行显示。方案二中不能对数码管进行精确的控制来达到其导通或断开的状态,但由于单片机执行一次任务所需时间太小,我们可以忽略不计,并且只要在程序中控制好,其显示效果和方案一一样。方案二比方案一会少许多元器件,并且电路简单,其功耗会比方案一低很多,价格也会比方案一低廉许多。所以我们选择第二种方案。

二.电路与程序设计

电路:此电路非常简单,通过控制单片机P0口各个小端口的输出高低电平来控制数码管8个小段的导通或断开,并通过组合形成各种数字。电路图如下:

程序如下: #include

#define uchar unsigned char

#define uint unsigned int

sbit smg1=P2^0;

sbit smg2=P2^1;

sbit ledl=P2^4;

sbit ledh=P2^3;

sbit fmq=P2^2;

uint num;

uint num1;

uint num2;

uchar code table[]={0xc0,0x80,0xe3,0x88,0xc8,0xe4,0xc2,0x92,0xe7,0x81,}; void delay(uint z)

{

uint x,y;

for(x=z;x>0;x--)

for(y=0;y<110;y++);

}

void main()

{ledl=0;

for(num=5;num<10;++num)

{uint i;

i=543;

while(i--)

{

smg1=0;

P0=table[7];

delay(1);

smg1=1;

smg2=0;

P0=table[num];

delay(1);

smg2=1;

}

}

for(num1=0;num1<10;++num1)

{uint a;

a=543;

while(a--)

{

smg1=0;

P0=table[8];

delay(1);

smg1=1;

smg2=0;

P0=table[num1];

delay(1);

smg2=1;

}

}

for(num2=0;num2<10;++num2)

{ uint b;

b=543;

while(b--)

{smg1=0;

P0=table[9];

delay(1);

smg1=1;

smg2=0;

P0=table[num2];

delay(1);

smg2=1;

}

}

ledl=1;

ledh=0;

fmq=0;}

三数据采集

测试结果分析:由此可见此电路的倒计时效果还算良好,时间偏差在误差允许范围之内。在短时间的倒计时可以很好的发挥效果,因此此电路作品在实际应用中还是可行的。但进度方面还有待提高。

心得体会:这是我进入大学以来做的第一个包含单片机的电子作品,虽然这对于很多人来说非常简单或者没有价值,但通过这次的制作,前期的学习使我懂得了更多的有关于单片机的知识。特别是在制作的过程中遇到很多问题,怎样寻找问题的根源,然后应该怎么样解决,这方面给予我在第一次电子制作过程中最深刻的印象。

先说一下硬件问题吧,当我把电路接好以后,无论往单片机里面写入什么程序,电路板上的所有元器件都会工作。对于这个问题,我找了一下午也没找到原因。但通过这我发现我的三极管8550的基极直接接到单片机的P2口上面去了,那么无论单片机的P2的电平都会是高电平,那么连接到上面元器件总是断开的。最后我同学发现我的31口没有介入高电平,但是不是这的原因我们也不知道,当我重新接好电路以后,电路就正常工作了。对此我上网查了一下31口的高电平有什么作用。原来31口接的高电平是控制单片机程序的读写的,如果没接的话,那么单片机就像一个空壳。

硬件问题已经解决,接下来就是程序的问题了。我的主程序里面用了3个for循环,但当第一个循环完了之后,怎么也跳不出。开始是这样的

for(num=4;num>=0;num--)

{uint i;

i=543;

while(i--)

{

smg1=0;

P0=table[2];

delay(1);

smg1=1;

smg2=0;

P0=table[num];

delay(1);

smg2=1;

}

}

for(num1=9;num1>=0;num1--)

{uint a;

a=543;

while(a--)

{

smg1=0;

P0=table[1];

delay(1);

smg1=1;

smg2=0;

P0=table[num1];

delay(1);

smg2=1;

}

}

我估计是自减到零的时候有问题,然后我就把code中的顺序倒置,然后运用自加,进行调试的时候就可以了,但为什么自减不行我还没有弄懂,问了几个大三学长也没搞清楚。

对于我的第一次电子制作,我感觉非常好,不仅可以学到更多的知识,而且可以培养当你遇到困难知难而上的勇气,并且可以教我们,当我们束手无策的时候,怎么解决问题的方法。

这次只是一个我大学电子制作的开始,再以后我会在这方面更加努力。取得更好的成绩。谢谢!

99秒倒计时器

单片机课程设计 摘要 近年来随着计算机在社会领域的渗透,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。At89s52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 模拟多通道压力系统是利用压力传感器采集当前压力并放映在显示器上,它可以分析压力过量程,并发出报警。并采用电子秤原理可根据输入单价准确的计算出物体的金额。本篇论文讨论了简单的倒计时器的设计与制作,对于倒计时器中的LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。 关键词:AT89C51 LED数码管显示器晶体振荡器

目录 摘要..................................................................... I 第一章概述 (1) 1.1 课程设计目的 (1) 1.2 总体设计 (1) 第二章硬件电路 (2) 2.1各个元件介绍 (2) 2.1.1 AT89C51的芯片概述 (2) 2.1.2 LED数码管显示器概述 (3) 2.2 其他元器件介绍及参数选择 (6) 2.2.1 单片机的最小系统与复位电路 (6) 2.2.2显示电路的设计 (7) 第三章软件部分 (9) 3.1 相关软件介绍 (9) 3.1.1 Keil C软件 (9) 3.1.2 Proteus软件 (9) 3.2 软件设计 (10) 3.2.1 程序框图如图 (10) 3.2 .2 软件程序 (11) 第四章软件调试 (14) 4.1 系统调试工具keil c51 (14) 4.2 PROTEUS仿真 (14) 第五章电路焊接与调试 (17) 5.1 电路板的焊接 (17) 总结 (19) 参考文献 (20) 致谢 (21)

24秒倒计时器系统设计

24秒倒计时器系统设计 一、仿真图 (一)Proteus元器件查找 1、芯片:89C51 2、电阻:res 3、缓冲器74HC244 4、数码管7SEG-------CC共阴极 5、非门74LS04 6、按键button 二、程序 #include unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; typedef unsigned int uint; uint i,j,f1=0; uint q=4,p=2; uint sum = 0; sbit P2_0=P2^0; sbit P2_1=P2^1; sbit P2_2=P2^2; sbit P2_3=P2^3; uint num2=0,num=24,shi=2,ge=4; void T1_time()interrupt 3 {

TH1=(65536-49000)/256; TL1=(65536-49000)%256; num2++; if(num2==20){ num2=0; if(!f1){ if(num!=0)num--; shi=num/10; ge=num%10; } } } void ex_int()interrupt 0 { num=24; } void ex_int1()interrupt 2 { sum++; if(sum%2==1) f1=1; else f1=0; } void delay() { uint j; for(j=0;j<200;j++); } void disply() { P2&=0XF0; P1=table[shi]; P2_0=1; delay(); P2&=0XF0; P1=table[ge]; P2_1=1;

99秒倒计时汇编程序

;利用中断的99秒计时器,动态扫描两位数码管;P0口接J3,数据端口 ;P2.2接J2 B端子,表示段码锁存 ;P2.3接J2 A端子,标志位码锁存 LATCH1 BIT P2.2 LATCH2 BIT P2.3 ORG 00H JMP START ORG 0BH JMP TIM0 START:MOV R3,#00 ;中断循环次数 MOV R4,#0 ;时间初值 MOV DPTR,#TABLE MOV SP,#40H MOV TMOD,#01H ;定时器工作方式 MOV TH0,#HIGH(65536-3800) MOV TL0,#LOW(65536-3800) ;初值4MS SETB TR0 MOV IE,#82H ;开中断 TIM0: MOV TH0,#HIGH(65536-3800) MOV TL0,#LOW(65536-3800) INC R3 CJNE R3,#250,X1 ;1S MOV R3,#0 MOV A,R4 ;十进制转换 MOV B,#10 DIV AB MOV 20H,B ; 个位 MOV 21H,A ; 十位 INC R4 CJNE R4,#100,LEDSCAN ;到100则清零 MOV R4,#0 LEDSCAN: CALL SCAN ;调用数码管扫描 X1: PUSH ACC PUSH PSW CALL SCAN POP PSW POP ACC RETI SCAN:

MOV A,21H MOVC A,@A+DPTR MOV P0,A SETB LATCH1 CLR LATCH1 MOV P0,#11111110B ;扫描子程序 SETB LATCH2 CLR LATCH2 CALL DELAY1 MOV A,20H MOVC A,@A+DPTR MOV P0,A SETB LATCH1 CLR LATCH1 MOV P0,#11111101B ;0代表选通该位数码管 SETB LATCH2 CLR LATCH2 CALL DELAY1 RET DELAY:MOV R5,#50 ;典型延时程序 D1: MOV R6,#40 D2: MOV R7,#248 CALL SCAN DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET DELAY1:MOV R6,#4 ;扫描延时 D3: MOV R7,#248 DJNZ R7,$ DJNZ R6,D3 RET TABLE:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;共阴字码表END

0-99秒计时器的单片机设计

目录 1 引言 (2) 1.1 AT89C51单片机及其引脚说明 (2) 1.1.1 AT89C51简单介绍 (2) 1.1.2 引脚说明 (3) 2系统硬件电路设计 (5) 2.1 秒计时器的设计要求 (5) 2.2 秒计时器的组成及其原理图 (5) 2.3系统板硬件连线 (6) 3 系统软件设计 (8) 3.1 源程序代码 (8) 3.2 程序流程图 (8) 3.2.1 主程序流程图 (9) 3.2.2 中断程序流程图 (10) 4 课程设计心得会 (11) 参考文献 (11) 附录A (12) 附录B (12)

1 引言 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。 1.1 AT89C51单片机及其引脚说明 1.1.1 AT89C51简单介绍 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 AT89C51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。 图1 AT89C51单片机芯片外观结构及其引脚分布

篮球24秒倒计时器设计

湖南工业大学 课程设计 资料袋 电气与信息工程学院(系、部)2016~2017 学年第 1 学期课程名称电子技术课程设计指导教师黄卓冕职称讲师 学生姓名谢富专业班级电气工程1401 学号14401300114 题目篮球比赛24秒计时器设计 成绩起止日期2016 年11 月14 日~2016 年11 月18 日 目录清单

湖南工业大学 课程设计任务书 2016年~2017学年第1 学期 电气与信息工程学院(系、部)电气工程专业1401 班级课程名称:电子技术课程设计 设计题目:篮球比赛24秒计时器设计 完成期限:自2016 年11 月14 日至2016 年11 月18 日共 1 周

安 排 2016.11.15--17 学生进行设计 2015.11.18 学生修改、打印设计报告 主要参考资料[1] 康华光电子技术基础模拟部分(第五版)高等教育出版社 2007年 [2] 欧伟明. 实用数字电子技术. 北京:电子工业出版社,2012 [3] 陆应华. 电子系统设计教程. 北京:国防工业出版社,2005 [4] 李忠波等. 电子技术仿真与实践. 北京:机械工业出版社,2004 指导教师(签字):年月日 系(教研室)主任(签字):年月日 电子技术课程设计 设计说明书 起止日期:2016 年11 月14 日至2016 年11 月18 日篮球比赛24秒计时器设计

学生姓名谢富 班级电气工程1401 学号14401300114 成绩 指导教师(签字) 电气与信息工程学院(部) 篮球比赛24秒计时器设计 设计目的及要求 一、设计要求 (1)设计指标 1、具有24秒计时功能。 2、设置外部操作开关,控制计时器的直接清零、启动和暂停/连续功能。 3、在直接清零时,要求数码显示器灭灯。 4、计时器为24秒递减时, 计时间隔为1秒。 5、计时器递减到零时,数码显示器不能灭灯,同时发出光电报警信号。 6、将24秒递减计时器改为24秒递增计时器,试问电路要作哪些相应的改动。 它包括秒脉冲发生器、计数器、译码显示电路、辅助时序控制电路(简称控制电路)和报警电路等五个部分组成。其中计数器和控制电路是系统的主要部分。计数器完成24秒计时功能,而控制电路是控制计时器的直接清零、启动计数和暂停/连续计数、译码显示电路的显示和灭灯等功能。 为保证系统的设计要求,在设计控制电路时,应正确处理各个信号之间的时序关系: 1.操作直接清零开关时,要求计数器清零,数码显示器灭灯。 2.当启动开关闭合时,控制电路应封锁时钟信号CP(秒脉冲信号),同时计数器完成置数功能,数码显示器显示24秒

篮球24秒倒计时器报告

电子课程设计报告 题目名称:篮球竞赛30秒倒计时器 姓名: 专业: 班级: 学号: 同组人: 指导老师: 南昌航空大学电子信息工程学院 二零零八年九月

电子信息工程学院 电子基础课程设计任务书 I、电子基础课程设计题目: 篮球竞赛30S计时器 II、电子基础课程设计技术要求及主要元器件: 基本要求:1)具有显示30S计时功能,启动和暂停/连续功能, 2)在直接清零时,要求数码显示器灭灯, 3)设置外部操作开关,控制计数器的直接清零, 4)计时器为30S递减计时,计时间隔为1S, 5)计时器递减计时到零时,数码显示器不能灭灯,同时发出光电报警信号。 主要元器件:NE555(1),74ls161(1),74LSl92(2) I II、电子基础课程设计工作内容及进度安排: 1.方案设计,绘制电路图并仿真(2天) 2.电路布线和焊接(3天) 3.电路的调试(2天) 4.课程设计总结和报告(7天)Ⅳ、主要参考资料: 1.杨志忠.数字电子技术(第二版).北京:高等教育出版社,2000 2.胡宴如.高频电子线路(第三版).北京:高等教育出版社,2005 3.王毓银.数字电路逻辑设计(第三版).北京:高等教育出版社,1999 专业名称:电子信息工程班级学号: 06041304 学生姓名:李莉

摘要 随着世界篮球水平的提高,对计时的准确度及可靠性也越来越高,篮球30秒倒计时器也就孕育而生了。 设计一个篮球30秒倒计时器,主要解决的问题是实现倒计时功能。所以必须要有一个脉冲,为确保产生的脉冲稳定,该设计采用555时基电路构成的多谐振荡器产生周期为0.1秒的脉冲,再通过74LS161十分频来产生周期为1秒的脉冲。计数部分用74LS192芯片来实现,192芯片是8421码计时的,符合30秒读数的需要。译码部分采用74LS248芯片,74LS248是把8421BCD 码经过内部作和电路“翻译”成七段(a ,b ,c ,d ,e ,f ,g )输出,然后直接推动LED ,显示十进制数。显示部分采用七段数码管,数码管的使用很广泛,价格也不会很贵。整个线路就是把以上几个主要的部分用导线连接焊接起来。 在许多领域中,计时器都得到了普遍应用,比如在体育比赛中的计时器、安全措施中的定时报警器、游戏中的倒计时、维持秩序的交通信号灯、红绿灯、交通信号控制机、闹钟等等......可见计时器在现代社会中是很重要的。在设计计时器时,采用了模块化的思想,使得设计简单、快捷。本设计完成了中途计时功能,实现了在许多特定场合进行时间追踪,在社会生活中会具有广泛的应用价值。 关键字: 控制 倒计时 译码显示 光电报警 指导教师: 万在红 设计时间: 2008.9.1——2008.9.15

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、总体方案设计

plc 99秒 倒计时

《可编程序控制器原理及应用》“倒计时软件设计”说明书 一、设计目的: (1)使学生运用《可编程序控制器原理及应用》课程中的基本理论,正确设计一个典型案例的控制系统;针对控制目标,编写下位机PLC程序, 设计上位机触摸屏控制界面,解决好通信问题,实现上下位机联合控 制。 (2)培养学生自学软件的能力,逻辑思维的能力。 (3)综合训练学生应用多款软件设计用户程序,仿真验证案例准确性的能力。 二、设计要求: (1)按任务时序设计下位机PLC程序 (2)设计上位机触摸屏控制界面 (3)上下位机联合仿真 三、梯形图: 下面是已经编好的经过转换梯形图

四、触摸屏软件GT-designer2的使用: 利用此软件制作触摸屏,如下图

五、利用GTsimulator2进行仿真: 先在GX-developer中启动梯形图逻辑测试,然后用GTsimulator打开用GTdesigner制作的触摸屏,保证三个软件前后设置一致。如下图:

六、总结 通过这次的设计使我认识到本人对PLC方面的知识知道的还是很浅薄的,对于书本上的很多知识还不能灵活运用。通过本次的课题设计使我从中学到了一些很重要的东西,那就是如何从理论到实践的转化,怎样将我所学到的知识运用到我以后的工作中去。同时也锻炼了自己独立思考问题的能力和通过查看相关资料来解决问题的习惯。虽然这只是一次简单的课程设计,但通过这次课程设计我们了解了课程设计的一般步骤,和设计中应注意的问题。在大学的课堂的学习只是在给我们灌输专业知识,而我们应把所学的用到我们现实的生活中去,此次的PLC数字时钟设计给我奠定了一个实践基础,我会在以后的学习、生活中磨练自己,使自己适应于以后的竞争,同时在查找资料的过程中我也学到了许多新的知识,在和同学协作过程中增进同学间的友谊,使我对团队精神的积极性和重要性有了更加充分的理解。 在这次设计过程中,我也对word、画图等软件有了更进一步的了解,这使我 在以后的工作中更加得心应手。

99秒计时 99秒倒计时中断触发定时器

99秒计时+99秒倒计时(中断触发定时器) ___________________________________________ 功能:99秒计时 时间2010—7—18 ___________________________________________ #include code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x 7f,0x6f}; unsigned char Dis_Shiwei; unsigned char Dis_Gewei; void delay(unsigned int cnt) { while(--cnt); } main() { TMOD |=0x01; //10ms in 12M crystal,工作在 模式一,16位定时器 TH0=0xd8;

TL0=0xf0; IE= 0x82; //打开中断 TR0=1; //打开定时开关 while(1) { P0=Dis_Shiwei; P2=0; delay(300); P0=Dis_Gewei; P2=1; delay(300); } } void tim(void) interrupt 1 using 1 { static unsigned char second,count; TH0=0xd8; TL0=0xf0; count++; if (count==100) //100x10ms { count=0;

second++; if(second==100) second=0; Dis_Shiwei=tab[second/10]; Dis_Gewei=tab[second%10]; } } /* 定时器设定为:TH0=0xd8;TL0=0xf0;经确定时10ms。从程序开始执行,每当主程序中的16位数发生溢出则触发中断,主程序保护现场并调用中断子程序,也可以写为:TH0=(65536-10000)/256;TL0=(65536-10000)%256。秒脉冲的产生要求精确定时1s,实际情况可能有延误。 1 0000 0000 0000 0000 1101 1000 1111 0000 ———————————— 0010 0111 0001 0000 Time=16(1+16+32+64+512)=16*625=10000us=10ms

单片机99秒计时器

1设计背景 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。 计时器广泛应用于实际生活当中,有倒计时器和计时器,我们本次设计为计时器。计时器广泛应用于各种比赛当中用来计时,往往都精确到百分秒的精度,其次也应用于计时闹钟等。生活中计时器比较常见,而设计计时器是很具有实际意义的。 2 硬件设计: 2.1 99秒计时器的总体设计方案 利用单片机的定时器设计一个秒计时器,其中设有一个按键,当第一次按下按键时,开始计时,第二次按下按键时,停止计时,送入P0和P2端口显示,P0口驱动显示秒时间的十位,而P2口驱动显示秒时间的个位。第三次按下按键时使定时器清零,等待下一次按键。本设计中需要一个时钟电路,一个复位电路和一个控制电路来实现整个电路的运行,实现00到99的循环计时。 2.2 99秒计时器的组成及其原理图 秒计时器由以下几个部件组成:单片机AT89C51、两个静态数码显示、一个按钮等其它组件。

该电路的工作原理:AT89C51从稳压电路中获得稳定的+5V电压,接到VCC 端,提供稳定的电压;P2、P0口通过电阻接到显示电路的七段数码管的 a b c d e f g 端口上,利用数码管显示数字;RST接复位电路,实现电路的复位;XTAL1、XTAL2接晶振电路;整个电路实现循环动态显示数字00~99. 2.3 AT89C51简单介绍及引脚说明 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。 AT89C51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。 VCC:供电电压。 GND:接地。

51单片机实现数码管99秒倒计时

51单片机实现数码管99秒倒计时,其实很简单,就是使用定时器中断来实现。 目的就是学习怎样用单片机实现倒计时,从而实现一些延时控制类的东西,99秒只是一个例子,你完全可以做出任意倒计时如10秒倒计时程序。 定时器定时时间计算公式:初值X=M(最大计时)-计数值。 初值,换算成十六进制,高位给TH0,低位给TL0,如果用定时器0的话。 M(最大计时)如果是16位的,就是2的16次方,最大定时,65535 微秒,实现1秒定时,可以通过定时10毫秒,然后100次改变一次秒值即可。10*100毫秒=1S 计数值:你要定时多长时间,如果定时1毫秒,就是1000微秒,(单位为微秒),如果定时10毫秒,就是10000(微秒),当然,最大定时被定时器本身位数限制了,最大2的16次方(16位定时计数器),只能定时65.535毫秒。定时1S当然不可能1S定时器中断。 下面为实现99秒倒计时C语言源程序 /*了解定时器,这样的话,就可以做一些基本的实验了,如定时炸弹~~,10秒后打开关闭继电器*/ /*数码管,12M晶振*/ #include #define uchar unsigned char sbit p11=P1^1; //连的是继电器。。 code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar shiwei; uchar gewei; void delay(unsigned int cnt) { while(--cnt); } void main() { TMOD|=0x01; /*定时器0 16位定时器X=65535-10000(10毫秒)=55535=D8F0(十六进制)定时10ms */ TH0=0xd8; TL0=0xf0; IE=0x82; //这里是中断优先级控制EA=1(开总中断),ET0=1(定时器0允许中断),这里用定时器0来定时

99秒倒计时 说明

(一)99秒倒计时计数器 一、设计思路: 上电显示99,当发出计时信号开始倒计时,直到0结束计时。 二、设计目的: 1.了解单片机最小系统的设计和工作原理 2.掌握数码管显示原理 3.掌握基本的单片机控制思想及C语言单片机的编程思想 三、工作原理说明: 因为是99秒倒计时,运用单片机的定时器0来精确地定时,并通过单片机的控制在数码管上循环显示,并附加功能为上电为99,当按下按钮开关为发送的开始计时信号,即按下开关开始倒计时,直到0为止。 四、硬件: 单片机、两位一体数码管、排阻、锁存器等 五、程序设计: #include #define uint unsigned int #define uchar unsigned char uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}; uchar shi,ge,aa,temp; uchar code table1[]={0x04,0x02}; sbit D=P3^0; sbit D1=P1^1; sbit D2=P1^2; sbit D3=P0^0; sbit D4=P0^1; void inital() { temp=99; D1=1; D2=1; TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; } void delay(uint c) { int a,b; for(a=c;a>0;a--) for(b=110;b>0;b--);

完整word版00-99秒倒计时器程序及仿真

题目一:秒计时器 功能要求: 1.系统上电,数码管显示“99”. 2.每隔1秒,数码管显示减1,减小到“00”后,数码管显示“00”,同时继电器开启。 3.按键的定义如下: “暂停/开始”按键S13:当S13按下时,秒表计时停止,数码管显示当前数值,再次按下时恢复计时。 “设置”按键S14:当停止计时时,按下S14键,可以设置秒数。按键S1-S10分别对应数字0-9,先输入数字为十位数,后输入数字为个位数,若输入数字大于99,数码管显示“99”。设置结束后,按下S13键启动计时。 “重新开始”按键S15:当S15按下时,数码管显示为“99”,秒表从新开始计时。 #include #include unsigned char code Tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; unsigned char code jp[]={0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d,0xeb,0xdb,0xbb,0x7b,0xe7,0xd7,0xb7,0x77}; unsigned char a[2]={0,0}; unsigned char int_time; unsigned char second=99; unsigned char c; bit zt; bit sz; unsigned char count; unsigned char y; unsigned char x; unsigned char count2; //函数功能:数码管动态扫描延时 void delay(unsigned char s) { unsigned char i,j; for(i=0;i

单片机课程设计秒倒计时

《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)目标 通过课程设计,使自己深刻理解并掌握基本概念,掌握单片机的基本应用程序设计及综合应用程序设计的方法。通过做一个综合性训练题目,达到对内容的消化、理解并提高解决问题的能力的目的。

99分钟倒计时器

目录 摘要及关键词 (2) 1 设计总体思想 (2) 1.1 设计要求及目的 (2) 1.2 设计方案分析 (2) 1.3 设计方案比较 (4) 2 局部硬件电路设计 (5) 3 原理图及流程图 (7) 3.1 系统原理框图 (7) 3.2 总体硬件连线图 (8) 3.3 主程序流程图 (9) 3.4 调时子程序流程图 (10) 3.5 中断子程序流程图 (11) 4 Proteus调试 (12) 4.1 Proteus调试过程及现象 (12) 4.2调试问题及解决方法 (13) 5 设计优缺点 (13) 6 心得体会 (13) 7 参考文献 (14) 附:实验源程序 (15)

摘要 近年来随着计算机在社会领域的渗透,单片机的应用正在不断地走向深入,同时带动着传统控制检测日新月异的更新。由于单片机具有体积小、易于产品化、面向控制、集成度高、功能强、可靠性高、价格低等特点,其在工业控制、机电一体化、智能仪表、通信等诸多领域中得到了广泛的应用。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用。但是仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。 本设计针对倒计时系统的需求,介绍了MCS-51单片机的部分基本原理,如51单片机的接口功能、中断、定时器等等。倒计时系统需要用到锁存器、独立式按键键盘、LED数码显示器等主要模块,通过不同的模块之间相互作用,完成倒计时的初步硬件结构。对于倒计时器中的LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即采用Keil uVision2软件程序进行译码。 本次设计采用汇编语言编程,通过倒计时子程序模块、独立式键盘扫描模块、中断等子程序的正确调用,完成了可以随时设置初值的基于51单片机控制的99分钟倒计时系统。 【关键词】倒计时器单片机独立式键盘proteus LED数码显示器 1.设计总体思想 1.1、设计要求及作用目的: 要求:由单片机接收小键盘阵列设定倒计时时间,倒计时的范围最大为99分钟,由LED 显示模块显示剩余时间,显示格式为 XX(分):XX(秒).X,精确到0.1s的整数倍。倒计时到,由蜂鸣器发出报警。绘制系统硬件接线图,并进行系统仿真和实验。画出程序流程图并编写程序实现系统功能。 目的:此次设计是我们更进一步了解基本电路的设计流程,提高自己的设计理念,丰富自己的理论知识,巩固所学知识,使自己的动手动脑能力有更进一步提高,为自己今后的学习和工作打好基础,为自己的专业技能打好基础。通过解决实际问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法,提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验,为以后从事生产和科研工作打下一定的基础。本次设计注重对单片机工作原理以及键盘控制及显示原理的理解,以便今后自己在单片机领域的学习和开发打下基础,提高自己的动手能力和设计能力,培养创新能力,丰富自己的理论知识,做到理论和实践相结合。本次设计的重要意义还在于对单片机的内部结构和工作状态做更进一步的了解,同时还对单片机的接口技术,中断技术,存储方式和控制方式作更深层次的了解。 1.2、设计方案分析: 在电子技术飞速发展的今天,电子产品的人性化和智能化已经非常成熟,其发展前景仍然不可估量。如今的人们需求的是一种能给自己带来方便的电子产品,当然最好是人性化和智能化的,如何能做到智能化呢?单片机的引入就是一个很好的例子。单片机又称单片微型计算机,也称为微控制器,是微

51单片机99秒倒计时C语言源程序

51单片机99秒倒计时C语言源程序 51单片机实现数码管99秒倒计时,其实很简单,就是使用定时器中断来实现。目的就是学习怎样用单片机实现倒计时,从而实现一些延时控制类的东西,99秒只是一个例子,你完全可以做出任意倒计时如10秒倒计时程序。定时器定时时间计算公式:初值X=M(最大计时)-计数值。 初值,换算成十六进制,高位给TH0,低位给TL0,如果用定时器0的话。 M(最大计时)如果是16位的,就是2的16次方,最大定时,65535 微秒,实现1秒定时,可以通过定时10毫秒,然后100次改变一次秒值即可。10*100毫秒=1S 计数值:你要定时多长时间,如果定时1毫秒,就是1000微秒,(单位为微秒),如果定时10毫秒,就是10000(微秒),当然,最大定时被定时器本身位数限制了,最大2的16次方(16位定时计数器),只能定时65.535毫秒。定时1S当然不可能1S定时器中断。 下面为实现99秒倒计时C语言源程序 /*了解定时器,这样的话,就可以做一些基本的实验了,如定时炸弹~~,10秒后打开关闭继电器*/ /*数码管,12M晶振*/ #include #define uchar unsigned char sbit p20 = P2^0; sbit p21 = P2^1; code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; code unsigned char tab_dot[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef}; uchar shiwei; uchar gewei; int timecounter = 50;

倒计时计时器

一.设计任务和要求 倒计时计时器的用途很广泛。它可以用做定时,控制被定时的电器的工作状态,实现定时开或者定时关,最长定时时间 为999分钟。它还可以用做倒计时记数,最长记时时间为999 秒,有三位数码管显示记数状态。用三个可预置数的减计数器 组成三个二-十进制减计数器。用三个译码器和三个LED数码显 示器,COMSS电路组成秒/分选择器。另外有控制电路,控制器 随着计数器计数的状态发生改变,计时期间,用电气开关断开。 当计时完毕时,用电气开关闭合。 (1)用三个可预置数的减计数器组成三个二-十进制减计数器。 (2)用三个译码器和三个LED数码显示器,COMSS电路组成秒/分 选择器。 二.设计的作用与目的 (1) 实现定时开或者定时关,最长定时时间为999分钟。 (2)用做倒计时记数,最长记时时间为999秒。 1

三.倒计时计时器的设计 1.倒计时计时器系统概述 用时钟脉冲发生器来产生频率为1Hz的脉冲,即输出周期为1秒的方波脉冲,将该方波脉冲信号送到计数器74LS192的 CP减计数脉冲端,再通过译码器74LS48把输入的8421BCD码经 过内部作和电路“翻译”成七段(a,b,c,d,e,f,g)输出,显示十进制数,或者将该方波脉冲信号送到减法计数器CD40110 的CP减计数脉冲端,通过计数器把8421BCD码经过内部作和电 路“翻译”成七段(a,b,c,d,e,f,g)输出,显示十进制 数,然后在适当的位置设置开关或控制电路即可实现计数器的 直接清零,启动和暂停/连续、译码显示电路的显示。在 74LS192输入端设置4个开关,通过开关的高低电平状态从而实 现999秒内任意时间的倒计时。在电路中加入停止器使其倒计 时到000时停止计时并且蜂鸣器响。 系统设计框图如图1 2

基于51单片机的9999秒倒计时器设计

重庆工业职业技术学院毕业设计(论文) 系部:自动化系 专业班级:08计控301 学生姓名:左天军 二O一一年四月

课题名 称 基于51单片机的9999秒倒计时器设计 内容及要求1、设计目的: 综合运用己学课程的基本知识,独立进行单片机应用技术开发工作,掌握单片机程序设计、调试,应用电路设计、分析及调试检测。 2、技术指标: 1)、应用MCS-51单片机设计倒计时器电路。 2)、选用4位LED数码显示,倒计时间分4档可选,9999-0s,0999-0s,0099-0s,0009-0s 3)、硬件设计根据设计的任务选定合适的单片机,根据控制对象设计接口电路。设计的单元电路必须有工作原理,器件的作用,分析和计算过程 4)、软件设计根据电路工作过程,画出软件流程图,根据流程图编写相应的程序,进行调试并打印程序清单; 5)、原理图设计根据所确定的设计电路,利用Protel 等有关工具软件绘制电路原理图、PCB板图、提供元器件清单。 基本工作量要求完成资料及文献的查找、方案的初步设计、PCB板的设计、硬件的设计、软件流程的设计、系统的综合调试、实习报告。 进度计划起止时 间 工作内容

第一周第二周第三周第四周第五周第六周第七周第八周熟悉毕业设计方案,查阅相关资料完成方案的初步设计,开题报告电路的仿真和PCB板的设计 软件流程的设计和软件的编写 完成软件的编写与调试 硬件电路的装配与调试 电路的软硬件综合调试 完成毕业设计 参考文献[1] 李朝青.单片机原理及接口技术(简明修订版).北京航空航天大学出版社,1998 [2] 李广弟.单片机基础[M].北京航空航天大学出版社,1994 [3] 阎石.数字电子技术基础(第三版). 北京高等教育出版社,1989 [4] 赵晶.Prote199高级应用[M].人民邮电出版社,2000. [5] 郑步生,吴渭.Multisim200l电路设计及仿真入门与应用[M].电子工业出版社,2002. [6] 沈美明,温冬婵.IBM—PC汇编语言程序设计[M].清华大学出版社,2001.

99秒计时器

河北建筑工程学院 课程设计计算说明书 题目名称: 00-99秒表系统课程设计 院系:机械工程学院 专业:机械电子工程 班级:机电102班 学号: 2010322208 学生姓名:李月 指导教师:张东辉 职称:讲师 2013 年 7 月 7 日

河北建筑工程学院 课程设计任务书 课程名称:单片机原理及应用 院系:机械工程学院 专业:机械电子工程 班级:机电102班 学号: 2010322208 学生姓名:李月 指导教师:张东辉 职称:讲师 2013年 7 月 11 日

目录 前言 (2) 一设计的目的和要求 (2) 总体目的 (2) 设计任务及要求 (3) 二总体设计 (3) 三硬件设计 (3) 单片机最小系统 (3) 系统的硬件构成及功能 (6) 系统板硬件连线 (6) 四软件设计 (7) 系统主程序设计 (7) 汇编源程序 (8) 五系统仿真调试 (11) 系统仿真 (11) 仿真调试 (12) 六结束语 (13) 七参考文献 (13)

用AT89C51设计99秒定时器 前言 在科技迅速发展的今天,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、成本低、抗干扰能力强、面向控制、可以实现分机各分布式控制等优点。本秒表设计就是利用单片机的上述优点,采用目前市场上性能价格比较高的98C51单片机设计而成的最小系统。它在实际生活中具有广泛的应用。例如:工业生产中的定时启停自动化设备、学校中上下课铃定时控制、农村广播站每天早中晚广播的自动定时控制均可采用本仪器。 一设计的目的和要求 设计目的 1、学习基本理论在实践中综合运用的初步经验,掌握电路设计的基本方法、设计步骤,培养综合设计与调试能力。 2、掌握汇编语言程序设计的方法。 3、培养实践技能,提高分析与解决实际问题的能力。 设计任务和要求 课程设计目的:00-99秒表 1、上电时,数码管显示为00。 2、按秒进行显示,每到一秒,数码管自动加1。 3、计数到99后显示为FF,表示已经到最大值。

相关主题
文本预览
相关文档 最新文档