基于某51单片机地厨房定时器可预置分秒倒计时装置

上传人:hs****ma 文档编号:469650786 上传时间:2024-01-23 格式:DOC 页数:16 大小:288.50KB
返回 下载 相关 举报
基于某51单片机地厨房定时器可预置分秒倒计时装置_第1页
第1页 / 共16页
基于某51单片机地厨房定时器可预置分秒倒计时装置_第2页
第2页 / 共16页
基于某51单片机地厨房定时器可预置分秒倒计时装置_第3页
第3页 / 共16页
基于某51单片机地厨房定时器可预置分秒倒计时装置_第4页
第4页 / 共16页
基于某51单片机地厨房定时器可预置分秒倒计时装置_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《基于某51单片机地厨房定时器可预置分秒倒计时装置》由会员分享,可在线阅读,更多相关《基于某51单片机地厨房定时器可预置分秒倒计时装置(16页珍藏版)》请在金锄头文库上搜索。

1、word基于51单片机的厨房定时器设计报告学院:信息光电子科技学院专业:光电信息科学与工程年级:某某:学号:一、设计报告概述日常生活中熬个汤、煮个蛋都需要预定一定的时间,设计一个厨房定时器,用户预设倒计时的时长,启动后系统开始倒计时,当时间为0后,启动蜂鸣器报警。本设计报告中的厨房定时器,是以单片机STC89C52,四位七段数码管、按键开关和蜂鸣器等组成的综合设计系统电路。上电,电源指示灯点亮,数码管显示为0000,用户可以通过按键开关预设定时时间,启动后系统开始倒计时,当时间为0后,蜂鸣器报警。数码管显示分、秒,计时时间上限为99分钟,按键开关以10分钟或1分钟单位调整时间。显示电路四位七段

2、数码管复位电路时钟震荡电路STC89C52二、设计总体框图报警电路蜂鸣器按键开关图1 系统设计结构图本系统组成如图1 系统设计结构图所示,主要由五个局部组成。控制芯片AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器RAM,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。AT89C52为8 位通用微处理器,采用工业标准的C51内核,在内部功能与管脚排布上与通用的8xc52 一样,其主要用于会聚调整时的功能控制

3、。图2AT98C52引脚图2.时钟震荡电路AT89C52中有一个用于构成内部振荡器的高增益反相放大器,与作为反应元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。外接石英晶体或陶瓷谐振器与电容C1、C2接在放大器的反应回路中构成并联振荡电路。如果使用石英晶体,电容使用30pF10pF,而如使用陶瓷谐振器建议选择40pF10pF,可以使系统更稳定,防止噪音干扰而死机。此设计采用的是12MHz的石英晶振。图3晶振震荡电路图3.按键控制电路本设计共有5个按键,功能依次为复位、启动、增加10分钟定时时间、增加1分钟定时时间、减少1分钟定时时间,

4、由于按键较少,故直接连接I/O口。复位键原理:当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平。单片机系统自动复位。图4复位电路图图5按键电路图数码管主要有共阴极和共阳极两种型号,共阴极的数码管就是公共端接地,共阳极的数码管就是公共端接电源。此设计采用的是4位一体共阳数码管。数码管显示分为静态显示与动态显示,此设计中采用的是动态显示。动

5、态显示是按位轮流点亮各位数码管的显示方式。在多位显示时,为了简化硬件电路,通常将所有位的段选线相应地并联在一起,由一个8位I/O口实现控制,形成段选线的多路复用。而各位的共阳极分别由相应的I/O口线控制,实现各位的分时选能,在任一时段,只有一位数码管显示,其它的数码管都处于熄灭状态。 图6数码显示电路图蜂鸣器有无源蜂鸣器和有源蜂鸣器两种类型,区别在于有源蜂鸣器只需参加一个触发电平就可以发声,而无源蜂鸣器需要输入一定频率的脉冲才可以发声。此设计中采用的是有源蜂鸣器,从而选择简单高效的有源蜂鸣器。图7蜂鸣器报警电路图三、设计图示四、源程序C语言#include/定义函数变量int sec;unsi

6、gned char beepset;unsigned char num;unsigned char n;unsigned char minu10;unsigned char minu;unsigned char sec10;unsigned char num;/定义数组,共阳数码管的段位码Unsignedchar code table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/定义引脚sbit start=P34; /将start定义为P3.4 启动计时sbit min1=P35; /将min1定义为P3.5 分加10sbit min

7、2=P36; /将min2定义为P3.6 分加1 sbit min3=P37; /将min3定义为P3.5 分减1sbit beep=P30; /将beep定义为P3.0 sbit led=P31;/将led定义为P3.1 sbit min11=P20; /控制位选码sbit min22=P21; sbit sec33=P22; sbit sec44=P23; /预先定义显示子函数void disp();/延时子函数void delay(unsigned int ms) unsigned int i,j; for(i=ms;i0;i-) for(j=110;j0;j-);/键盘扫描子函数voi

8、d key_scan() if(P3!=0xff)/判断是否有按键按下 delay(2); disp();/延时处理,进展键盘消抖 delay(2);disp(); delay(2);disp(); delay(2);disp(); delay(2); disp(); if(P3!=0xff)/再次判断按键 if(min1=0) while(!min1);/按键2,功能为加10分钟 sec=sec+600; if(sec5940) sec=0; else if(min2=0) while(!min2); /按键3,功能为加1分钟 sec=sec+60; if(sec5940) sec=0; e

9、lse if(min3=0) while(!min3);/按键4,功能为减1分钟 sec=sec-60; if(sec60) sec=0; else if(start=0) while(!start);/按键1,功能为开始倒计时 TR0=1; /数码管扫描显示子函数void disp() minu10=sec/600;/对计数值进展预处理,分别得出每个数码管显示的值 minu=sec%600/60; sec10=sec%600%60/10; num=sec%600%60%10; switch(n)/扫描显示,分别选中位选码之后显示段选码,再熄灭跳出 case 0x01:min11=1;P0=t

10、ableminu10,delay(1);min11=0;break;case 0x02:min22=1;P0=tableminu,delay(1);min22=0;break;case 0x03:sec33=1;P0=tablesec10,delay(1);sec33=0;break;case 0x04:sec44=1;P0=tablenum,delay(1);sec44=0;break; if(n=0x04) n=0; else n+;/主函数void main() sec=0;/设置初值 num=0; n=0; beepset=0; EA=1; ET0=1; EX0=1; TMOD=0x0

11、1;/使用定时器T0,工作模式1 TH0=0x3c;/定时器高八位赋初值 TH0=(65536-50000)/256,即50ms TL0=0xb0;/定时器低八位赋初值 TH0=(65536-50000)%256 while(1) if(TR0=0)key_scan();disp();else if(TR0=1) if(num=20)/20*50ms,定时时间为1秒 num=0; if(sec!=0)sec-; if(sec=0) beepset+;beep=0;if(beepset=10)beepset=0; beep=1;TR0=0; disp(); void T0_time()interrupt 1 TH0=0x3c; TL0=0xb0; num+;void Ex()interrupt 0TR0=0;附:电子元件个别说明以下元件焊接要注意引脚的正确与否1四位共阳数码管SR420561K :4位一体数码管,其内部段已连接好,引脚如下列图正面朝自己,小数点在下方。a、b、c、d、e、f、g、dP为段引脚,1、2、3、4分别表示四个数码管的位。1 a f 2 3 b。 。 。 。 。 。 。 。 。 。 。e d dp c g 42PNP三极管:3其他:一般两脚的电子元件,正极一端较长。 /

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号