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

合集下载

99秒倒计时器

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)第一章 概述1.1 课程设计目的 课程设计是单片机课程教学的最后一个环节,是对学生进行全面的系统的训练。

CD- 99.99秒表

CD- 99.99秒表

CD4060功能/管脚排列图
16脚:VDD电源;8脚:接地端;
11、10脚:外接R、C组成多谐振荡电路,9脚:输出振荡信号;
7脚:24分频输出;5脚: 25分频输出;4脚: 26分频输出; 6脚:27分频输出; 14脚:28分频输出;13脚:29分频输出; 15脚:210分频输出;1脚:212分频输出;2脚:213分频输出; 3脚:214分频输出;
VDD
YA YB YC YD YE YF YG
VDD
YA YB YC YD YE YF YG
VDD
U1
U2
U5
YA YB YC YD YE YF YG
U15
Key = B
4511BP_5V
~LE ~BI ~LT VSS A0 A1 A2 A3
4511BP_5V
~LE ~BI ~LT VSS A0 A1 A2 A3
U12
U11
U10
U9
R5 1kΩ
U13
74LS00D
RPACK 7
R4 300 Ω
RPACK 7
R3 300 Ω
RPACK 7
R2 300 Ω
RPACK 7
R1 300 Ω
J2
J1 Key = A
R6 1.5kΩ
C4 560pF
5.1nF C3 R12 470Ω
VDD
YA YB YC YD YE YF YG
U4
VDD 1A 1B 1C 1D 2A 2B 2C 2D
4518BP_5V
1CLK ~1CLK 1RST 2CLK ~2CLK 2RST
U3
XFG1
VSS
VSS
计时信号(0.001~0.01s)参考电路

单片机99S倒计时课程设计

单片机99S倒计时课程设计
temp=temp&0x0f;//temp高4位清0;
if(temp!=0x0f) //判断是否有键按下
{
delayms(10); //延时,消除抖动
if(temp!=0xf0)//判断是否有键按下
{
temp=P1; //重新读取P1口
switch(temp)//判断哪个键按下
{
case 0xeb:
(4)中断子函数:
void T0_time() interrupt 1//定时器0中断函数
{
TH0=(65536-50000)/256;//重装初值
TL0=(65536-50000)%256;
numt0++;//50ms中断一次
}
(5)初始函数:
void init() //初始化函数
{
TMOD=0x01;//设置定时器0为工作方式1(0000 0001)
#define uint unsigned int
sbit sw=P0^6;//十位位选
sbit gw=P0^7;//个位位选
sbit led=P3^7;//LED灯
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f};//编码定义
二、设计的实现过程······································3
1、矩阵电路····················································4
2、数码显示和驱动电路·······································4

单片机99秒计时器

单片机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次。

单片机控制秒表显示时间为00—99(每秒自动加1),暂停,复位

单片机控制秒表显示时间为00—99(每秒自动加1),暂停,复位

标准文档9创新实践实训报告学院信息电子技术学院专业电子信息工程班级14学籍号姓名指导教师蒋野2017年06月29日单片机控制秒表电路一、电路工作原理1.工作原理用STC89C52设计一个2位的LED数码显示作为“秒表”:显示时间为00—99秒,每秒自动加1,另设计一个“暂停”键S2和一个“继续”键S3。

为使本设计系统更加完善,可以引入一个“复位”键S1,以方便对系统的控制。

如图。

本系统采用STC89C51单片机为中心器件,利用其定时器/计数器定时计数的原理,结合硬件电路如电源电路,晶振电路,复位电路和显示电路,以及一些按键电路等来设计计数器,将软硬件有机结合起来,其中软件系统采用汇编语言编写程序,包括显示程序,计数程序,中断,硬件系统利用Protues强大的功能来实现,简单易于观察,在仿真中就可以观察到实际的工作状态。

2.元器件作用(1)STC89C52单片机在电子行业中有着广泛的应用。

AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2 个读写口线,STC89C52可以按照常规方法进行编程,也可以在线编程。

其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的 Flash存储器可有效地降低开发成本。

(2)时钟电路作用是为电路提供唯一的时钟信号。

(3)复位电路外接一个开关,控制电路复位,接通电源电路直接复位,如果没有开关亦可将复位电路引出导线接电源后断开。

(4)本设计要求使用共阳极的数码管,如下是共阳极的数码管的0-9编码:0xc0,0x92,0x82,0xf8,0x80,0x90,0xf9,0xa4,0xb0,0x99.(5)控制电路:S2按下电路停止计时,S3按下电路恢复计时。

二、程序流程图主程序流程图三、检测安装与调试1.元件检测共阳极数码管检测管脚序号利用万用表二极管档红表笔接一个抵住两个管脚,利用另一个接触其他,找出1,2两个管脚,继续分别找出A,D,C,D,E,F,G,Dp管脚。

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

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)电路,片内时钟振荡器。

倒计时报警器电路设计

倒计时报警器电路设计

成绩课程设计说明书题目:倒计时报警器电路设计课程名称:数字电子技术学院: 电子信息与电气工程学院学生姓名:学号:************专业班级:自动化2011级2班指导教师:**2013年6 月课程设计任务书倒计时报警电路设计摘要:设计制作了一个倒计时报警器控制电路,该电路倒计时的时间范围为1~99秒,并且倒计时时间可调;当倒计时时间结束时,电路发出光报警信号,报警时间长度为5秒,报警信号用红色LED表示。

控制电路主要由:555定时器、十进制可逆计数器74LS192、共阳极驱动器74LS47、共阳极数码管、四输入与非门74LS00、拨码开关等组成。

555定时器构成多谐振荡器,产生振荡周期为1秒的时钟信号;74LS192构成十进制计数器,并对时钟信号进行计数;74LS47可以将输入的BCD 代码译成共阳极数码管所需的驱动代码。

关键词:555定时器;计数器;译码器;数码管;电路仿真目录1.设计背景 (1)1.1 Multisim 10的定义及对PCB的认识 (1)1.2 了解数字电路系统和数字电路的定义和组成 (1)2. 设计方案 (1)2.1 任务分析 (1)2.2 方案论证 (2)3. 方案实施 (2)3.1 原理图设计 (2)3.2 仿真电路 (4)3.3 PCB板制作 (5)3.4 安装与调试 (5)4. 结果与结论 (6)5. 收获与致谢 (6)6. 参考文献 (7)7. 附件 (7)7.1 电路原理图 (7)7.2 PCB布线图 (8)7.3 实际电路图 (8)7.4 元器件清单 (9)1. 设计背景1.1 Multisim 10的定义及对PCB的认识Multisim是一款专门用于电子线路仿真与设计的END工具软件。

Multisim 10是一个完整的集成化设计环境,他将计算机仿真和虚拟仪器技术完美的结合在一起,为电子线路的仿真和设计提供了良好的环境。

PCB不仅仅是固定或装配各种电子零件的基板,更重要的是实现各种电子元器件的电气连接或电绝缘,提供电路要求的电气特性(特性阻抗等)。

基于单片机的00秒_99秒的秒表设计说明

基于单片机的00秒_99秒的秒表设计说明

课程设计题目:用单片机AT89C51设计一个2位的LED数码显示作为“秒表”专业: 12自动化(2)班学号: 3姓名:华指导教师:蜀阳日期: 2015年6月17日目录一、设计题目和要求:1二、设计目的:1三、设计容:2四、课程设计心得体会18五、参考文献18一、前言21世纪是一个电子技术和电子元件有更大发展的世纪。

回顾百年来电子技术和电子工业发展的成就,举世瞩目。

作为一个电气专业的大学生,我们不但要有扎实的基础知识、课本知识,还应该有较强的动手能力。

现实也要求我们既精通电子技术理论,更要掌握电子电路设计、实验研究和调试技术。

课程设计就是一个理论联系实际的机会。

本次设计主要完成具备基本功能的电子秒表的理论设计,电子秒表是重要的记时工具,广泛运用于各行各业中。

作为一种测量工具,电子秒表相对其它一般的记时工具具有便捷、准确、可比性高等优点,不仅可以提高精确度,而且可以大大减轻操作人员的负担,降低错误率。

在设计中应用到数码管,数码管主要用于楼体墙面,广告招牌、高档的DISCO、酒吧、夜总会、会所的门头广告牌等。

特别适合应用于广告牌背景、立交桥、河、湖护栏、建筑物轮廓等大型动感光带之中,可产生彩虹般绚丽的效果。

用护栏管装饰建筑物的轮廓,可以起到突出美彩亮化建筑物的效果。

事实证明,它已经成为照明产品中的一只奇葩,绽放在动感都市。

二、设计题目和要求:秒表应用AT89C51的定时器设计一个2位的LED数码显示作为“秒表”:显示时间为00~99s,每秒自动加1,设计一个“开始”键,按下“开始”键秒表开始计时。

设计一个“复位”键,按下“复位”键后,秒表从0开始计时。

三、设计目的:1.进一步掌握AT89C51单片机的结构和工作原理;2.掌握单片机的接口技术与外围芯片的工作原理与控制方法;3.进一步掌握单片机程序编写与程序调试过程,掌握模块化程序设计方法;4.掌握PROTEUS仿真软件的使用方法;5.掌握LED数码管原理与使用方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
TL0=0xf0; //低8位
IE= 0x82; //打开中断
TR0=1; //打开定时开关(定时器运行控制位,置1启动定时器0)
TMOD |= 0x01; //使用模式1,16位定时器
TH0=0x00;
TL0=0x00;
EA=1; //总中断打开
ET0=1; //定时器中断打开
TR0=1; //定时器开关打开
中断触发定时器:99秒计时+99秒倒计时
#include
code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char Dis_Shiwei;
unsigned char Dis_Gewei;
*/
______________________________________________
功能:99秒倒计时
时间:2010718
______________________________________________
#include
code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
1 0000 0000 0000 0000
1101 1000 1111 0000
0010 0111 0001 0000
TIme=16(1+16+32+64+512)=16*625=10000us=10ms
主函数中的关于定时器和中断的控制位:
TMOD |=0x01; //模式选择
TH0=0xd8; //高8位
{
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++;
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=99,count;
TH0=0xd8;
TL0=0xf0;
count++;
if(count==100)
{
count=0;
second--;
if(second==0)
{
second=99;
}
Dis_Shiwei=tab[second/10];
Dis_Gewei=tab[second%10];
unsigned char Dis_Shiwei;
unsigned char Dis_Gewei;
void delay(unsigned int cnt)
{
while(--cnt);
}
main()
{
TMOD |=0x01; //10mTL0=0xf0;
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,实际情况可能有延误。
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)
相关文档
最新文档