99秒倒计时 说明

99秒倒计时 说明
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--);

}

void time0() interrupt 1

{ TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

aa++;

}

void display(uchar shi,uchar ge)

{ P1=table1[1];

P2=table[ge];

delay(1);

P1=table1[0];

P2=table[shi];

delay(1);

}

void main()

{ inital();

if(D==1)

{ D1=0;

D2=0;

display(9,9);

}

while(D==0)

{ if(D3==1)

{ shi=temp/10;

ge=temp%10;

display(shi,ge);

}

else

{ shi=temp/10;

ge=temp%10;

display(shi,ge);

if(aa==20)

{ aa=0;

shi=temp/10;

ge=temp%10;

display(shi,ge);

temp--;

if(temp==0)

{TR0=0;}

}

}

}

六、软件仿真电路图

不能实现在中间数字的停止,即该实验可扩展。

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)

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单片机芯片外观结构及其引脚分布

59分59秒倒计时程序及仿真显示

一、59分59秒倒计时程序: /*倒计时及显示程序,适用于寻迹小车实验板*/ #include<> #define uchar unsigned char #define uint unsigned int uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82, 0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};//共阳七段编码 uchar temp=0;//定义定时器溢出计数变量,每隔50ms产生1次溢出,temp加1 /*uint time=5959;//定义倒计时变量,当temp计数加20(20x50ms=1s)时,time减1 */ uchar miao=59; uchar fen=59; sbit P0_7=P0^7 ; /*--定时计数器T0及其中断初始化函数--*/ void timer0init(void) { TMOD=0x01;//设置定时器0为工作方式1 TH0=(65536-50000)/256;//16位计数初值除以256得到高8位初

值 TL0=(65536-50000)%256;//16位计数初值除以256的余数得到低8位初值 EA=1;//开总中断 ET0=1;//开定时器0中断 TR0=1;//启动定时器0 } /*----------延时函数---------------*/ void delay(uint n) { uint i,j; for(i=n;i>0;i--) for(j=124;j>0;j--); } /*定时计数器中断程序,每当定时计数器溢出时触发中断,执行该程序*/ void time0() interrupt 1 {

基于单片机的00秒-99秒的秒表设计

工程技术学院 课程设计 题目:用单片机AT89C51设计一个2位的LED数码显示作为“秒表”专业:电气工程及其自动化 年级: 2009级 学号: 20091447 20091414 20091444 姓名:付忠林梁宗林李座 指导教师:杨彦鑫 日期: 2012年12月12日 云南农业大学工程技术学院

目录 一、设计题目和要求: (2) 二、设计目的: (3) 三、设计内容: (4) 四、课程设计心得体会 (21) 五、参考文献 (22) 六、课程设计指导教师评审标准及成绩评定 (23) 附件1:秒表原理图(实际接线图) (24) 附件2:仿真图1 (25) 附件3:仿真图2 (26)

一、设计题目和要求: 题目三:秒表 应用AT89C51的定时器设计一个2位的LED数码显示作为“秒表”:显示时间为00~99s,每秒自动加1,设计一个“开始”键,按下“开始”键秒表开始计时。设计一个“复位”键,按下“复位”键后,秒表从0开始计时。 任务安排:李座负责绘制电路原理图;梁宗林负责收集资料及电子版整理;付忠林负责程序和仿真。

二、设计目的: 1.进一步掌握AT89C51单片机的结构和工作原理; 2.掌握单片机的接口技术及外围芯片的工作原理及控制方法; 3.进一步掌握单片机程序编写及程序调试过程,掌握模块化程序设计方法; 4.掌握PROTEUS仿真软件的使用方法; 5.掌握LED数码管原理及使用方法。 6.掌握定时器、外部中断的设置和编程原理。 7.通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。 8.该课程设计通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零、复位功能,并同时可以用数码管显示。

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

plc 99秒 倒计时

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

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

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

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

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

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.99数字秒表,带记忆,倒计时,置数功能

#include #include #define uchar unsigned char #define uint unsigned int uchar code dis_r[11]={~0xc0,~0xf9,~0xa4,~0xb0, ~0x99,~0x92,~0x82,~0xf8,~0x80,~0x90, ~0xff}; uchar code dis_b[4]={0x20,0x10,0x08,0x04}; uint dis_s[35]; uchar dis_buf[4]; uchar code dis_l[9]={0xf6,0xf5,0xf4,0xf3,0xf2,0xf1,0xf0}; uchar dis_t; uchar a,b,c; uchar key1_times,key4_times; uint doc,n; void update_disbuf(); void proc_key(); void daojshi(); void store(); void read_store(); void delay(uint ms); sbit K1 = P1^7; sbit K2 = P1^6; sbit K3 = P1^5; sbit K4 = P1^4; sbit M=P1^3; sfr P2M0=0x95; sfr P2M1=0x96; sfr P3M0=0xB1; sfr P3M1=0xB2; void main(void) { P2M0=0x00; P2M1=0xff; P3M0=0x00; P3M1=0xff; M=0; P2 = 0x3F; P3 = 0xFF; TMOD = 0x11; TH1 = (65536-50000)/256; TL1 = (65536-50000)%256; TH0 = (65536-1000)/256; TL0 = (65536-1000)%256; update_disbuf();

用PPT制作5秒倒计时

课题第一章第六节用PPT制作5秒倒计时总第 6 课时 教学目标 1、知识与技能:通过应用实例,具体学习自定义动画 的方法以及如何制作PPT作品。 2、过程与方法:激发学生的积极性和创造性,培养学 生制作多媒体作品的操作方法;培养学生合作学习的 能力;培养学生欣赏他人作品以及评价他人作品的能 力。 3、情感态度与价值观:培养学生动手的能力;开拓学 生视野,培养学生学习信息技术的兴趣;分小组活动, 学会与他人合作 重 点 难 点 关 键 (1)重点:将幻灯片上的文字与图 片添加自定义动画和切换效果。 (2)难点:设置自定义动画以及设 置动画参数的方法。 (3)关键:理解动画方案与自定义 动画之间的区别。 程序与内容师生活动二次修改时间 一、创设情境 倒计时在我们日常学习生活中经常能见到,无论是新年的钟声,还是中考的最后冲刺,往往最激动人心的时刻都是那最后的几秒,制作倒计时主要是应用自定义动画中的“退出”命令,我们这节课就来一起探索学习。 二、新课教学 1.6.1实例: 用PPT制作5秒倒计时,开始画面显示数字为5,幻灯片放映后,数字5的位置按延时1秒依次显示4、3、2、1。 (1)用“插入”菜单中“形状” 命令画一个圆形; (2)调整所画圆形的填充颜色和边框颜色,在圆中填写数字 1;欣赏作品:师生一起欣赏五秒倒计时 动画效果的演示文稿。 1、学生自学探索 2、教师引领并指导 3 2 10 (3)在“自定义动画”中“添加 效果”命令中,选择“退出” 动画为“消失” (4)在动画计时中设置“开始” 选项为“之后”,延迟时间 为1秒,整个动画时间为1 秒。 (5)将所画形状进行复制,粘贴 出4个同样的圆形,将将圆 形中的数字改为2345,并对 2345四个动画的“延迟”属 性设置为1秒,调整动画的 顺序为54321。 (6)将五个显示画面移动到同一 位置,并按1(最底层)、2、 3、4、5(最上层)的顺序叠 放,至此5秒倒计时的作品 就完成了。 三、展示评价 四:总结与拓展 1、教师引导 2、学生独立完成 3、教师补充 学生分组,每组选一名同学上 前展示作品,并与全班同学进 行交流与评价。 师生共同总结本节课学习的 内容,收获与不足,并对知识 进行拓展。 15 10 5 板 书 设 计 第六节制作五秒倒计时 一、创设情境 二、新课教学 三、制作五秒倒计时 教 学 反 思 优点:优点:内容新颖、独特,设计合理, 反映青少年的审美情趣,作品具有想象力和 个性的表现力。 不足: 改进措施: 桦甸市第五中学教学设计 授课日期:2019 年4 月 1 日

单片机0-99计数器 秒表报告

. 课程名称单片机原理及应用课程设计 学号 姓名 班级 指导老师 时间 信息工程学院

. 设计过程、步骤(可加页): 一、设计方案 利用STC90C51单片机来制作一个手动计数器,在STC90C51单片机的P3.7 管脚接一个 轻触开关,作为手动计数的按钮,用单片机的P2.0-P2.7 接一个共阳数码管,作为00-99 计 数的个位数显示,用单片机的P0.0-P0.7 接一个共阴数码管,作为00-99 计数的十位数显示; 二、工作原理 采用STC90C51单片机为中心器件,利用其定时器/计时器定时和计数的原理,结合硬件电 路如电源电路、晶振电路、复位电路、显示电路,以及一些按键电路等来设计计时器,软硬件 有机的结合起来,其中软件系统采用c语言编写程序,包括显示程序,快加程序,暂停程序等, 硬件系统利用Keil强大的功能来实现,简单且易观察。 (一)开发板上硬件连线(如图1) 1.把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8 芯排线连接到“四路静态 数码显示模块”区域中的任一个a-h端口上;要求:P0.0/AD0对应着a,P0.1/AD1对应着 b,……,P0.7/AD7对应着h。 2.把“单片机系统”区域中的P2.0/A8-P2.7/A15端口用8 芯排线连接到“四路静态数 码显示模块”区域中的任一个数码管的a-h 端口上; 3.把“单片机系统”区域中的P3.7/RD 端口用导线连接到“独立式键盘”区域中的SP1端 口上。 图1 硬件电路连接图 (二)显示电路 两位数码管循环显示00~99电路 数码管只要是用于数字的显示。数码管有共阴和共阳的区分,单片机都可以进行驱动,但 是驱动的方法却不同。两位数码管循环电路是由电阻、二极管和数码管组成,电源+5V通过560 的电阻直接给数码管的7个段位供电,P0.0-P0.7对应了两个接数码管的A,B,C,D,E,F,G和小数 点位,P2.6接显示个位数的数码管的3、8引角,P2.7则接十位数的。P2.6和P2.7端口分别控 制数码管的十位和个位的供电,当相应的端口变成低电平时,驱动相应的三极管会导通,+5V 通过二极管和驱动三极管给数码管相应的位供电,这时只要P0口送出数字的显示代码,数码 管就能正常显示需要的数字。 图2 十位显示动态数码管(共阳数码管) 图3 个位显示静态数码管(共阴数码管)

单片机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来定时

单片机30秒倒计时

天津工业大学 电子CAD课程设计 报告书 三、总体方案 本设计由硬件设计和软件设计两部分组成,总电路如图1所示,硬件设计主要包括单片机芯片选择,数码管选择及晶振,电容,电阻等元器件的选择及其参数的确定;软件设计主要是实现30秒倒计时程序的编写,包括利用中断实现1秒的定时及30秒的倒计时。 具体设计:通过AT89C51型号单片机,由P0 I/O引脚分别控制7SEG–MPX2–CA型号数码管,通过单片机的p2.0和p2.1控制选通数码管控制十位和个位,达到显示30秒倒计时的目的。。30秒倒计时,到0时P1.0 1KHZ 声音报警,P1.1 LED 2 秒闪烁一次。4 秒后声光停

图1 30秒倒计时总体电路设计 3.3.1硬件设计方法 AT89C51的芯片概述 AT89C51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。其工作电压在4.5-5V,一般我们选用+5V电压。外形及引脚排列如图2所示: AT89C51主要特性

图2:AT89C51的核心电路框图 LED数码管显示器概述 本设计中采用的是7SEG–MPX2 –CA型号7段共阳数码管,它是一种半导体发光器件,其基本单元是发光二极管。实物如图3所示: 图3 7SEG–MPX2–CA型号数码管 图5 程序框图

60秒倒计时系统设计

微机原理与接口技术课程设计报告 题目60秒倒计时系统设计 系别虞山学院 年级09 专业电子科学与技术 班级Y051091 学号Y051091(07/10/20/29) 学生姓名徐熙超、施祥祥、肖天宇、陆庆山 指导教师周平职称讲师 设计时间2011.12

目录 第一章系统设计 (1) 1.1题目要求 (1) 1.2方案论证 (1) 1.3实施方案 (1) 第二章倒计时硬件设计 (2) 2.1倒计时的硬件框图 (2) 2.2 8255A的基本资料 (2) 2.3 显示电路 (5) 2.4 输入电路的连接 (6) 2.5 输出电路的连接 (6) 第三章倒计时软件设计 (7) 3.1主程序设计框图 (7) 3.2程序的设计 (7) 第四章安装与调试 (10) 4.1硬件调试 (10) 4.2软件调试 (10) 4.3调试过程 (10) 第五章总结与体会 (11) 第六章参考文献 (12) 第七章附录 (13)

第一章系统设计 1.1题目要求 一、任务: 60秒倒计时系统设计 二、要求: 1.电路具有时间显示功能,要求用2位七段数码管; 2.要求电路为60秒递减计时,每隔1秒钟,计时器减1; 3.要有外部开关,控制计数器的启动、复位和暂停/继续计时功能; 4.当计时器倒计时为零时,即定时时间到,显示为零,同时发出光报警信号。 1.2方案论证 1.使用8253作为秒脉冲输出,用8255A作为输入/输出接口分别接控制端、输出显 示端、报警器,使用8259作为中断控制倒计时的复位/暂停。这种方案具有走时精准、可扩展性好的有点,但是制作成本最高。 2.使用软件延时,在程序中使用延时语句来输出秒脉冲。用8255A作为输入/输出接 口分别接控制端、输出显示端、报警器,使用8259作为中断控制倒计时的复位/暂停。此方案具有控制响应速度快,制作成本因为舍弃8253成本适中,但是由于使用了软件延时,因为芯片损耗以及芯片在工作时间过长后走时会不够准确。 3.芯片只选择8255A,使用软件延时,在程序中使用延时语句来输出秒脉冲,使用 8255A作为输入/输出接口。采用在软件中控制循环程序的方式来控制倒计时的复位/暂停。此方案性价比最高,但是相应的由于使用了软件延时,因为芯片损耗以及芯片在工作时间过长后走时会不够准确。由于8259的弃用在系统扩展方面会不如以上两种。 1.3实施方案 本次课程设计要求并未要求设计成品需要扩展功能,及成本略高,故舍弃方案1。考虑各方因素,由于未采用8253,采用8259中断和软件控制循环程序的方式来控制倒计时的复位/暂停对走时的准确性影响不大,为了降低成本,也不采用8259,故舍弃方案2。方案③达到课程设计要求并且成本最低,所以确定以方案③来设计。

51单片机秒表程序 00-99秒

#include <> #define uchar unsigned char //宏定义用uchar代替 unsigned char #define uint unsigned int sbit START=P1^0; //开始、停止键低电平有效 sbit RST=P1^1; //复位键 sbit SMGGW=P1^2; //用三极管或驱动芯片驱动数码管高电平有效还是低电平有效由电路决定 sbit SMGSW=P1^3; uchar tt; uint time; //此变量为时间 uchar code table[]={ //此为数码管字模,对应 0--9 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x40}; void Delay(uint ms) //延时子函数 { u int i,j; f or(i=ms;i>0;i--) for(j=500;j>0;j--); } void Display() //显示子函数 { u char ge,shi; s hi=time/10; g e=time%10; P0=table[ge]; S MGGW=0;//用三极管或驱动芯片驱动数码管高电平有效还是低电平有效由电路决定本程序为低电平数码管亮 S MGSW=1; D elay(2); P0=table[shi]; S MGGW=1; S MGSW=0; D elay(2); } void main() { P1=0xff; E A=1; E T0=1; T MOD=0x01; T H0=0x4c; //晶振若用12Mhz晶振则改为 TH0=0x3c;Tl0=0xb0; T L0=0x00;

基于单片机控制的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 (10) 4设计总结 (11) 5参考文献 (11)

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

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

相关文档
最新文档