厨房报警器单片机课程设计_第1页
厨房报警器单片机课程设计_第2页
厨房报警器单片机课程设计_第3页
厨房报警器单片机课程设计_第4页
厨房报警器单片机课程设计_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录1.课程设计目的2.课程设计正文 3程序流程图 4程序 5硬件分析 6原理图 7 PCB图 8元件功能 9系统调试 10课程设计总结 参考文献一 课程设计目的通过自主的设计和调试一个简单实际系统;熟练单片机仿真系统的使用方法,达到提高综合运用相关知识的能力;进一步熟悉和掌握Protel99的使用方法;掌握单片机系统设计全部过程的目的。二 课程设计正文厨房报警器是一个具有设定功能的计时报警器。它应用于普通家庭生活,设计简单,价格便宜有较强的实用性。它能通过三个按键设定延迟时间,在此期间人们可以做一些另外的工作,倒计时完成后蜂鸣器响,保证不会发生意外。虽然其原理简单,但我们相信,作为一个大学生

2、课程设计,其严谨的逻辑和创造的思维,使我们在将来工作中获益匪浅。三 程序流程图显示0000并设定时间无人按复位键按下确认键定时器到时响定时器开始定时有人按下复位键重新显示0000.四 程序#include "reg51.h"sbit P10=P10;sbit P11=P11;sbit P12=P12;sbit P13=P13;sbit P14=P14;sbit P27=P27;sbit P20=P20;sbit P21=P21;sbit P22=P22;sbit P23=P23;sbit P17=P17;int zhongjian;int tt=0;int mm;int l

3、l;int flag=1;int miniute1=0,miniute2=0,second=0,secondshi=0; int secondsum=0,miniutesum=0;/int miniute,miniute0,second0,second1; int miao;/函数功能:延时/void delay(unsigned int m)while(m-);/函数功能:系统初始化/ void systemInit() /P0=0x00;/ P1=0x00;P2=0x00;TMOD=0x01;/11.0592,50ms TH0=0x3c;TL0=0xb0;/IT0=1;/IT1=1;/函数

4、功能:八段数码管的显示/ void segmentdisplay() P23=1;P0=miniute2;delay(30);P23=0;P22=1;P0=miniute1;delay(30);P22=0;P21=1;P0=secondshi;delay(30);P21=0;P20=1;P0=second;delay(30);P20=0;/函数功能:键值读取/ void keyread()if(flag=1)if(P11=0)/delay(500);while(P11=0);miniute2+;if(miniute2>9)miniute2=0; /if(P12=0) / delay(50

5、0);while(P12=0);miniute1+;if(miniute1>9)miniute1=0; /if(P13=0) / delay(500);while(P13=0);secondshi+;if(secondshi>6)secondshi=0; /if(P17=0) /delay(500);while(P17=0);secondsum=secondshi*10;/miniutesum=miniute2*10+miniute1;/ ll=1;flag=0;if(secondsum!=0|miniutesum!=0) TR0=1;EA=1;/ /flag=1 if(P10=0

6、) delay(500); while(P10=0); flag=1; ll=0; TR0=0; EA=0;zhongjian=0; second=0; secondshi=0; miniute1=0; miniute2=0; miniutesum=0; secondsum=0; delay(600);/函数功能:主函数/void main()systemInit();EA=1;ET0=1;/P27=0;while(1)/P0=0x02;keyread();if(ll=1)miniute2=miniutesum/10;/分钟十位 miniute1=miniutesum%10; /分钟个位 se

7、condshi=secondsum/10;second=secondsum%10;if(zhongjian=1)P27=1;segmentdisplay(); /函数功能:定时中断/time2() interrupt 1 using 1 tt+;if(tt=20)tt=0;secondsum-;miao+;if(secondsum<0)if(miniutesum>0) miniutesum-;secondsum=59;else /miniutesum<=0 secondsum=0;miniutesum=0;P27=1;TR0=0;else if(miao>59)miao

8、=0;if(miniutesum>0)miniutesum-;secondsum=59;elsesecondsum=0;miniutesum=0;P27=1;TR0=0;if(secondsum=0&&miniutesum=0) zhongjian=1;TH0=0x3c;TL0=0xb0;五 硬件分析本设计是采用单片机设计的厨房报警器系统。它具有电路简单、功能齐全、制作成本低、性价比高等特点。硬件部分主要由89s51单片机、 CD4511译码器、LED数码管、蜂鸣器、三极管和其它基本外围电子电路组成 。PCB图八 元件功能CD4511驱动译码单片机,输入接单片机的P1口,

9、输出接数码管的七段;三极管驱动发光二极管和蜂鸣器;排阻用做P0口的上拉电阻。九 系统调试故障: 调试时定时到时时刻蜂鸣器未响,不能发音,将板子的电阻取下后,再用仿真器仿真,蜂鸣器恢复功能,当定时到时立即响起。通过一番整理和修改后,在电脑上进行仿真,仿真成功后准备焊接电路板。在焊接电路板中,我们首先对硬件电路进行布局,然后确认无误后,在电路板上进行焊接,这个过程我们觉得是做得比较快的,以至于后面出现了虚焊的错误。焊接电路板完工,细心检查后,进行通电测试。结果一个数码管没有显示,通过检查,原来是数码管极性用错了,在换了块新的后,能显示显示值。但还有个问题是,当报警电路不会报警,在请教老师后,发现走

10、动蜂鸣器的电压太低了,是因为串接了一个太大的电阻。然后,我们换了一个小电阻,但这时蜂鸣器却一直在叫,停不下来,不过,在我们四人的细心检查下,原来是在放大电路的一端虚焊了,这说明我们焊接电路的技术还不够好。在重新焊接那端后电路终于成功实现功能。十 课程设计总结通过这次课程设计,掌握51单片机的原理,初步掌握单片机调整及测试方法,提高动手能力和排除故障的能力。同时通过本课题设计与装配、调试,提高自己的动手能力,巩固已学的理论知识,建立单片机理论和实践的结合,了解各单元电路之间的关系及相互影响,从而能正确设计、计算定时计数的各个单元电路。初步掌握厨房报警器的调整及测试方法。提高动手能力和排除故障的能力在完成单片机课程设计后,我们发现我们还有许多不足,所学到的知识还远远不够,以至于还有一些功能不能被动完成。但通过学习这一次实践,增强了我们的动手能力,提高和巩

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论