《单片机及应用》课程设计报告书--消毒柜控制电路的设计.docx

上传人:lao****ou 文档编号:1120804 上传时间:2024-11-22 格式:DOCX 页数:54 大小:244.30KB
下载 相关 举报
《单片机及应用》课程设计报告书--消毒柜控制电路的设计.docx_第1页
第1页 / 共54页
《单片机及应用》课程设计报告书--消毒柜控制电路的设计.docx_第2页
第2页 / 共54页
《单片机及应用》课程设计报告书--消毒柜控制电路的设计.docx_第3页
第3页 / 共54页
《单片机及应用》课程设计报告书--消毒柜控制电路的设计.docx_第4页
第4页 / 共54页
《单片机及应用》课程设计报告书--消毒柜控制电路的设计.docx_第5页
第5页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《《单片机及应用》课程设计报告书--消毒柜控制电路的设计.docx》由会员分享,可在线阅读,更多相关《《单片机及应用》课程设计报告书--消毒柜控制电路的设计.docx(54页珍藏版)》请在第一文库网上搜索。

1、单片机及应用课程设计报告书课题名称消毒柜控制电路的设计摘要第一部分:题目要求(O1)第二部分:方案论证与选择(02)第三部分:电路设计与参数选择(03)第四部分:系统软件设计(04)第五部分:系统调试与仪器使用(15)第六部分:使用说明书(16)总结(16)摘要本作品是以STC89C52RC芯片为核心,DS18B20温度传感器、1CD1602显示、电子开关管等电路构成的智能消毒柜控制电路。这种智能消毒柜控制电路具有温度测量、温度反馈、恒温控制、定时开启以及定时关闭等一系列功能。第一部分题目要求一、基本要求我们要设计一台消毒柜控制系统,要求:(1)显示消毒柜温度、保持时间;可以键盘设定消毒柜温度

2、、定时时间;可以实现实时中断功能;消毒后自动关机;测温误差:0.5;定时误差:20秒/月。;二、发挥与创新部分我们设计的消毒柜控制系统,摒弃了只有传统的开启与关闭功能,通过对STC89C52RC芯片的充分利用,给其增加了温度反馈和定时开启、关闭的功能,并且使其能在温度到达设定温度时自动恒温。而且能定时开启或定时关闭。第二部分方案论证与选择一、系统主要部分有:1:中央处理器电路:采用单片机芯片机外围电路构成最小系统。2:温度探测电路:DS18B20温度传感器3:人机接口电路:包括按键电路、1CDI602显示电路。4:信号处理电路:包括传感器、信号处理、等电路。5:执行部件电路:包括显示器、状态指

3、示灯。二、方案论证及选择1、加热管控制部分由于市场上有许多的消毒柜,从而想用单片机来实现消毒柜的恒温功能和定时功能,通过5个按键代替市场上消毒柜的按键,分别为开启,关闭、左右、上下设定。通过反馈的温度于设定温度进行比较,从而控制MOS管的导通与关闭。通过按按键可设定定时时间以及设定温度,从而可以控制定时开启或者定时关闭。2、测温部分测温部分是基于DS18B20温度传感器的探测,然后实时传输给1602显示器。并且设有恒温系统。当环境温度等于设定温度时状态指示灯灭,加热管断开。当环境温度低于设定温度时状态指示灯亮,加热管导通。第三部分电路设计与参数选择一、单片机最小系统电路设计和元件的选择D1(心

4、.一冷5黑螳含罂蜀.-iiakc-(主电路图)17STC89C52-5V13RP3.5470RId(主控)温度传感器(温度检测电路)GND1CDI602液晶显示屏(显示电路)制冷电机与散热电机驱动电路(外围控制电路)第四部分软件设计部分一、主程序/*产品名称:消毒柜控制电路的设计/*成员:吴延、夏昕、苏梦野、郭美辰/*日期:2017.12.6inc1ude#inc1udeinc1udeWdefineuintunsignedint#defineucharunsignedcharWdefineu1unsigned1ong/*键盘使用o口*/sbitkey1=P00;sbitkey2=P01;sbi

5、tkey3=P02;sbitkey4=P03;sbitkey5=P04;/*制冷设备使用o口*/sbitmotor_co1d_1ed=P35;定时指示灯sbitSCP=P27;加热管(散热电机口)/*液晶使用I/O口*/sbit1CDRW=P33;液晶读写选择端ucharnum,num1,num2,ge1,bai1,shi1,ge2,shi2,count,s,m,h,ms,bai3,shi3,ge3;定义全局变量ucharfIag=O;ON/OFF标志位ucharwendu2=125;设定温度ucharkey_f1ag=0;按键标志位ucharTimer_fIag=I;显示(+)显示(-)标志

6、位UChartime_fIag=O;判断是否进入了定时模式标志位0为无,1为有uintwendu;uchara=0;毫秒ucharb=0;秒uintc=0;分钟ucharf1ag_T2=0;开始后是否进入模式二标志位ucharf1ag_T2_2=0;进入模式二voiddisp1ay();voidspeed();voidopen();voidstar();voidstop();voidTime();voidTimerchose();UintGet_Tmp();获取温度gettheWendueraturevoidDisp1ay(uintwendu);voidspeed();voidif_time(

7、);判断是否进入定时模式voidkayscan();按键函数uintx,y;for(x=time;x0;X一-)for(y=110;y0;y一一);P2=0X00;motor_co1d_1ed=1;count=0;/进入时间设定时候的延时s=0;毫秒分钟voidinit()初始化子程序/AUXR&=0x7F;定时器时钟12T模式TMOD&=OxFO;设置定时器模式TMODI=0x11;设置定时器模式T1O=0x00;设置定时初值IOmsTHO=OxDC;设置定时初值T11=0x00;设置定时初值20msTH1=0xB8;设置定时初值ETO=1;打开定时器To中断ET1=1;打开定时器T1中断T

8、FO=0;TF1=0;EA=1;开总中断voidT0_time(void)interrupt1(T1O=0x00;设置定时初值IOmsTHO=OxDC;设置定时初值ms+;if(ms=50)(motor_co1d_1ed=1;if(ms=100)如果记到IOo次说明IS已到ms=0;/num清0重新计数motor_co1d_1ed=0;s+;if(s=60)(s=O;m+;if(m=30)(m=0;h=h+5;if(h=num2)h=0;TRO=O;if(Timer_f1ag=1)(StopO;if(Timer_f1ag=0)star();voidT1_time()interrupt3定时器1

9、(T11=0x00;设置定时初值20msTH1=0xB8;设置定时初值a+;if(a=50)(a=0;毫秒b+;秒if(b=60)(b=0;秒c+;分钟if(c=999)TR1=O;/*液晶显示部分*/voidwrite_com(ucharcom)指令函数1CDRS=O;1CDRW=O;P1=com;deIayms(5);1CDEN=I;deIayms(5);1CDEN=O;voidwirte_dat(uchardat)数据函数1CDRS=I;1CDRW=O;P1=dat;deIayms(5);1CDEN=I;de1ayms(5);1CDEN=O;void1cd_init()液晶初始化(1CD

10、EN=O;write_com(0x38);write_com(OxOc);各种指令write_com(0x06);write_com(0x01);void1CD_P0S(ucharPOS)write_com(POS+0X80);地址函数voiddisp1ay_init()显示函数初始化(固定不变的字)(1CD_P0S(OXOa);wirte_dat(T);wirte_dat(:,);1CD_P0S(0X46);wirtedat(T);wirte_dat(i);wirte_dat(m);wirte_dat(e);wirte_dat(:);disp1ay();/We1comeToiContro1s

11、ystemvoiddisp1ay2_init()(1CD_POS(0X00);wirte_datC);wirte_dat();wirte_dat(W);wirte_dat(e);wirte_dat(,);wirte_dat(c);wirte_dat(o);wirte_dat(m);wirte_dat(e);1CD_P0S(OXOB);wirte_dat(T);wirte_dat(o);wirte_dat(:);1CD_POS(0X41);wirte_dat(,o,);wirte_dat(,n,);wirte_dat(t);wirte_dat(,r,);wirte_dat(o);wirte_da

12、t(,);1CD_P0S(0X49);wirte_dat(S);wirte_dat(y);wirte_dat(s);wirte_dat(t);wirte_dat(,e,);wirte_dat(,m,);de1ayms(12000);Icdinit();voiddisp1ay3_init()/版本号VerSionnumber:V2.01CD_P0S(0X00);wirte_dat(V);wirte_dat(e);wirte_dat(s);wirte_dat(i);wirte_dat(o);wirte_dat(n);wirte_dat();wirte_dat(N);wirte_dat(0);wir

13、te_dat(:);wirte_dat(V);wirte_dat(2);wirte_datwirte_dat(0);1CD_P0S(0X40);wirte_dat(P);wirte_dat(,);wirte_dat(e);wirte_dat(a);wirte_dat(s);wirte_dat(e);wirte_dat();wirtedat(W);wirte_dat(,a,);wirte_dat(,i,);wirte_dat(,t,);wirte_datwirte_datwirte_datde1ayms(15000);1cd_init();voidmath()运算函数shi2=num210;时间ge2=num2%10;bai3=wendu2/100%10;shi3=wendu2/10%10;设定温度ge3=wendu2%10;voidopen()/ON/OFF显示函数if(f1a

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 工作总结

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服