当前位置:文档之家› 任意时间倒计时加警报最后min

任意时间倒计时加警报最后min

任意时间倒计时加警报最后min
任意时间倒计时加警报最后min

# i n c l u d e < r e g 5 1 . h > #define uchar unsigned char

uchar code table[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; uchar num,num0,benum,flag;

char shi=23,fen=59,miao=59;

sbit k1=P3A0;

sbit k2=P3A1;

sbit k3=P3A2;

sbit k4=P3A3;

sbit k5=P3A4;

sbit k6=P3A5;

sbit k7=P3A6;

sbit k8=P3A7;

sbit beef=P1A5;

sbit deadline=P1A4;

sbit dishurry=P1A3;

sbit stop=P1A2;

sbit play=P1A1;

void delay(uchar z)

// 延时子程序

uchar x,y;

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

for(y=110;y>0;y--);

}

void display() // 显示子程序

{

uchar sshi,sge,fshi,fge,mshi,mge;

sshi=shi/10;sge=shi%10;

fshi=fen/10;fge=fen%10;

mshi=miao/10;mge=miao%10;

P0=table[sshi];P2=0x00;delay(1);P0=0;

P0=table[sge];P2=0x04;delay(1);P0=0;

P0=table[10];P2=0x08;delay(1);P0=0;

P0=table[fshi];P2=0x0c;delay(1);P0=0;

P0=table[fge];P2=0x10;delay(1);P0=0;

P0=table[10];P2=0x14;delay(1);P0=0;

P0=table[mshi];P2=0x18;delay(1);P0=0;

P0=table[mge];P2=0x1c;delay(1);P0=0; }

void set() // 设置子程序

{

if(flag==1)

if(k1==0)

{

delay(5);

if(k1==0)

{

shi++;

if(shi==24) shi=0;

while(!k1);

}

}

if(k2==0)

{

delay(5);

if(k2==0)

{

fen++;

if(fen==60)

fen=0;

while(!k2);

if(k3==0)

{

}

}

} }delay(5);

if(k3==0)

{

miao++;

if(miao==60) miao=0;

while(!k3);

}

}

if(k5==0)

{

delay(5);

if(k5==0)

{

shi--;

if(shi==-1) shi=23;

while(!k5);

if(k6==0)

{

delay(5);

if(k6==0)

{

fen--;

} }

if(fen==-1) fen=59;

while(!k6);

}

}

if(k7==0)

{

delay(5);

if(k7==0)

{

miao--;

if(miao==-1) miao=59;

while(!k7);

if(k4==0)

{

delay(5);

if(k4==0)

TR0=0;

flag=1;

while(!k4);

}

if(k8==0)

{

delay(5);

if(k8==0)

{

TR0=1;

flag=0;

}

while(!k8);

}

}

void alarm()

// 报警子程序if(shi==0)

{

if(fen==2)

{

{

if(miao==0)

{

TR1=1; benum=20;

}

}

if(fen==1)

{

if(miao==30)

benum=10;

}

if(fen==1)

{

if(miao==0)

benum=5;

}

if(fen==0)

{

任意时间倒计时加警报最后优选资料min

#define uchar unsigned char uchar code table[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; uchar num,num0,benum,flag; char shi=23,fen=59,miao=59; sbit k1=P3^0; sbit k2=P3^1; sbit k3=P3^2; sbit k4=P3^3; sbit k5=P3^4; sbit k6=P3^5; sbit k7=P3^6; sbit k8=P3^7; sbit beef=P1^5; sbit deadline=P1^4; sbit dishurry=P1^3; sbit stop=P1^2; sbit play=P1^1; void delay(uchar z) { //延时子程序 uchar x,y;

for(x=z;x>0;x--) for(y=110;y>0;y--); } 显示子程序 void display() // { uchar sshi,sge,fshi,fge,mshi,mge; sshi=shi/10;sge=shi_x0010_; fshi=fen/10;fge=fen_x0010_; mshi=miao/10;mge=miao_x0010_; P0=table[sshi];P2=0x00;delay(1);P0=0; P0=table[sge];P2=0x04;delay(1);P0=0; P0=table[10];P2=0x08;delay(1);P0=0; P0=table[fshi];P2=0x0c;delay(1);P0=0; P0=table[fge];P2=0x10;delay(1);P0=0; P0=table[10];P2=0x14;delay(1);P0=0; P0=table[mshi];P2=0x18;delay(1);P0=0; P0=table[mge];P2=0x1c;delay(1);P0=0; } void set() 设置子程序 // { if(flag==1) {

任意时间倒计时计数器的设计

任意时间倒计时计数器的设计 摘要:本设计实现任意秒数倒计时的功能,首先利用555定时器连接电阻和电容改装成多谐振荡器,将输入脉冲经电路转换输出矩形波,并改变电容和电阻的参数使输出周期为1秒。计数部分用74LS192芯片来实现,74LS192芯片是8421码计时的,符合任意几十秒读数的需要。译码部分采用74LS48芯片,74LS48是把8421BCD码经过内部作用和电路“翻译”成七段输出,然后直接推动LED,显示十进制数。此设计功能完善,可以直接清零,启动和暂停/连续计时, 进而实现断点计时,同时还应用了七段数码管来显示时间。当计数器显示的数字递减到零的时候,会发出光电报警信号。其设计由计时模块、控制模块、以及译码显示模块3个部分组成。 关键词:计时器;报警;芯片模块化

The Design of Any Time Countdown Counter Abstract:The design implements the function of 30 seconds countdown , At first ,use a 555 timer concussion connected with resistor and capacitor converted into a multivibrator, which can inverter the input pulse into a circuit output square wave,and change the parameters of capacitance and resistance so that the output cycle is a second. The counting part is realized by 74ls192 chip,and 192 chip is timed at 8421 yards , which can meet the need of 30 seconds reading. Decoding part adopts 74ls48 chip, 74ls48 is at the 8421 BCD by internal function and circuit "translate" into seven period of output, then directly promote LED, and shows a decimal number.The function of this design is perfect, it can directly reset, start and stop/continuous time, then realize breakpoint time, at the same time it also uses seven digital tube to display time. When the counter of the digital display diminishing to zero, it will have a photoelectric alarm signal. It is designed by hourly module, control module, and decode display module 3 parts. Keywords: The timer photoelectric; Alarm; Modular

时间倒计时器

时间倒计时器 摘要:本设计是由一块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;

基于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段发光二极管数码

任意时间倒计时加警报最后min

# i n c l u d e < r e g 5 1 . h > #define uchar unsigned char uchar code table[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; uchar num,num0,benum,flag; char shi=23,fen=59,miao=59; sbit k1=P3A0; sbit k2=P3A1; sbit k3=P3A2; sbit k4=P3A3; sbit k5=P3A4; sbit k6=P3A5; sbit k7=P3A6; sbit k8=P3A7; sbit beef=P1A5; sbit deadline=P1A4; sbit dishurry=P1A3; sbit stop=P1A2; sbit play=P1A1; void delay(uchar z) // 延时子程序 uchar x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); }

void display() // 显示子程序 { uchar sshi,sge,fshi,fge,mshi,mge; sshi=shi/10;sge=shi%10; fshi=fen/10;fge=fen%10; mshi=miao/10;mge=miao%10; P0=table[sshi];P2=0x00;delay(1);P0=0; P0=table[sge];P2=0x04;delay(1);P0=0; P0=table[10];P2=0x08;delay(1);P0=0; P0=table[fshi];P2=0x0c;delay(1);P0=0; P0=table[fge];P2=0x10;delay(1);P0=0; P0=table[10];P2=0x14;delay(1);P0=0; P0=table[mshi];P2=0x18;delay(1);P0=0; P0=table[mge];P2=0x1c;delay(1);P0=0; } void set() // 设置子程序 { if(flag==1)

日期倒计时显示器

辽宁工业大学 数字系统综合设计(论文)题目:日期倒计时显示牌设计 院(系):电子与信息工程学院 专业班级: 学号: 学生姓名: 指导教师: 教师职称: 起止时间:2012.12.17-2012.12.28

数字系统综合设计(论文) 课程设计(论文)报告的内容及其文本格式 1、课程设计(论文)报告要求用A4纸排版,单面打印,并装订成册,内容包括: ①封面(包括题目、院系、专业班级、学生学号、学生姓名、指导教师姓名、、起止时间等) ②设计(论文)任务及评语 ③中文摘要(黑体小二,居中,不少于200字) ④目录 ⑤正文(设计计算说明书、研究报告、研究论文等) ⑥参考文献 2、课程设计(论文)正文参考字数:2000字周数。 3、封面格式 4、设计(论文)任务及评语格式 5、目录格式 ①标题“目录”(小二号、黑体、居中) 6、正文格式 ①页边距:上2.5cm,下2.5cm,左3cm,右2.5cm,页眉1.5cm,页脚1.75cm,左侧装订; ②字体:一级标题,小二号字、黑体、居中;二级,黑体小三、居左;三级标题,黑体四号;正文文字,小四号字、宋体; ③行距:20磅行距; ④页码:底部居中,五号、黑体; 7、参考文献格式 ①标题:“参考文献”,小二,黑体,居中。 ②示例:(五号宋体) 期刊类:[序号]作者1,作者2,……作者n.文章名.期刊名(版本).出版年,卷次(期次):页次. 图书类:[序号]作者1,作者2,……作者n.书名.版本.出版地:出版社,出版年:页次.

课程设计(论文)任务及评语 院(系):电子与信息工程学院教研室:电子信息工程

摘要 此次课设做的是365天日期倒计时显示器,要求能够手动调整起始时间,并且最大倒计时天数为365天。利用三片74LS192设计BCD码部分,利用与或非门实现单刀双掷开关进行控制,最后用扫描显示电路进行显示,并用MAX+PLUS Ⅱ验证设计的正确性。 本次课设联系生活实际,像奥运会倒计时等等很多方面都可以用到本次课设设计的内容。 关键词:倒计时显示器;74LS192;扫描显示;MAX+PLUSⅡ

时间倒计时显示牌设计

辽宁工业大学 数字系统综合实验课程设计(论文)题目:时间倒计时显示牌设计 院(系):电子与信息工程学院 专业班级:通信091 学号: 090405031 学生姓名:张晓妲 指导教师:于玲 教师职称:讲师 起止时间:2011.12.12—2011.12.26

课程设计(论文)任务及评语

目录 第1章引言 (1) 第2章总体设计思路 (1) 第3章详细设计 (2) 3.1要求 (2) 3.2秒显示电路图 (3) 3.3分显示电路图 (4) 3.460分钟倒计时模块电路设计: (5) 3.560分钟倒计时总电路图如下 (6) 3.6仿真波形 (6) 3.7电路实物图 (7) 第4章总结 (8) 参考文献 (9)

·本文针对简易数字倒计时器的设计要求,提出了总体设计方案,详细设计过程,主 要运用了74168的减法计数功能,一个模块一个模块地完成设计,最后组装电路,管脚锁定,并调试成功。 设计过程采用系统设计的方法,先分析任务书,明确任务的要求,然后进行总体设计,划分系统模块,然后进行详细的设计,决定各个功能系统模块中的内部电路,然后进行波形模拟。 四进制计数器控制哪个数码管工作以及工作频率,当60分钟倒计时计时完毕,即分的显示和秒的显示都为0时,计时模块停止工作。 要想实现60分钟倒计时功能。就需要将控制秒循环的60进制减法计数器和控制分递减的60进制减法计数器相连接,每个计数器都由两片加减计数器74168构成,低位计数器每循环一次给高位信号一个借位信号,高位计数器依此开始工作,两者共同构成60分钟倒计时模块 第1章引言 所谓数字倒计时器,就是运用电子技术基础理论的原理,将现有的减法计数器通过恰当的方式级联起来,在脉冲信号的作用下,完成倒计时的功能。 设计过程采用系统设计的方法,先分析任务书,明确任务的要求,然后进行总体设计,划分系统模块,然后进行详细的设计,决定各个功能系统模块中的内部电路,然后进行波形模拟,如果所得波形与所要求的结果形同,证明电路基本上符合实验要求,就可以上箱测试了。 第2章总体设计思路 因为为时钟倒计时,所以需要将1HZ的脉冲信号给60分钟倒计时模块,控制端控制倒计时模块的启动和暂停,当控制端电位为高电平时,倒计时模块开始工作,当控制端电

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