创新设计(路灯控制系统)_第1页
创新设计(路灯控制系统)_第2页
创新设计(路灯控制系统)_第3页
创新设计(路灯控制系统)_第4页
创新设计(路灯控制系统)_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、PAGE PAGE 18创新设计(学校路灯控制系统)专业班级:08电子(1)班 姓名:吴 剑 学号:200810330126设计简介:本设计是一一个通过过51单单片机来来控制路路灯亮/灭。例例如:晚晚上199:300路灯亮亮,到早早上6:00熄熄灭,当当时钟走走到199:300时路灯灯点亮,同同理在66:000时熄灭灭,实现现自动控控制。为为了防止止偶尔断断电或停停机后再再开机致致使设定定值丢失失,这里里使用了了AT224C002来记记忆设定定的定时时值。PP1口作作为控制制输出口口控制继继电器从从而达到到控制路路灯的作作用。亮亮、灭时时间可随随时调整整,提高高了控制制的灵活活性和准准确性。为

2、了进行校校时及定定时值设设定,规规定了六六种工作作状态。状状态0(sstattus=0):正常走走时;状状态1(sstattus=1):输入定定时1的的“分”状态;状态22(sttatuus=22):输输入定时时1的“时”状态;状态33(sttatuus=33):输输入定时时2的“分”状态;状态44(sttatuus=44):输输入定时时2的“时”状态;状态55(sttatuus=55):校校正走时时态。状态0:从从左往右右六只数数码管依依次显示示走时的的时、分分、秒。状态1:从从左往右右的显示示依次为为:状态态1显示示(1位位);无无显示;定时11的“分”显示。后后两位无无显示。按按下S66

3、/S55进行加加减。状态2:从从左往右右的显示示依次为为:状态态2显示示(1位位);无无显示;定时11的“时”显示。后后两位无无显示。按按下S66/S55进行加加减状态3:从从左往右右的显示示依次为为:状态态3显示(11位);无显示示;定时时2的“分”显示。后后两位无无显示。按按下S66/S55进行加加减。状态4:从从左往右右的显示示依次为为:状态态4显示示(1位位);无无显示;定时22的“时”显示。后后两位无无显示。按按下S66/S55进行加加减。状态5:从从左往右右的显示示依次为为:状态态5显示示(1位位);无无显示;时钟的的“分”显示。后后两位无无显示。按按下S66/S55进行加加减。对

4、AT244C022内部储储存单元元规划:80、881单元元存放定定时1的的分、时时值;990、991单元元存放定定时2的的分、时时值;1100号号单元存存放首次次写入的的标志,若若写入过过,则1100号号单元置置数1000.框图如下: AT89S51控制中心AT89S51控制中心及其外围电路路灯系统AT24C02电路图如下下:源程序如下下:#inclludee #defiine uchhar unssignned chaar#defiine uinnt uunsiigneed iintucharr coode SEGG7110=0 xxa0,0 xbbe,00 x622,0 xx2a,0 x3

5、3c,00 x299,0 xx21,0 xbba,00 x200,0 xx28; /*共阳阳*/ucharr coode ACTT4=00 xbff,0 xxdf,0 xeef,00 x7ff,0 xxfd,0 xffe;sbit outtputt=P110;#defiine INCC_KEEY 00 xfbb /S66按下#defiine DECC_KEEY 00 xf77 /S55按下#defiine OK_KEYY 0 xxef /S44按下#defiine STAATUSS_KEEY 00 xdff /S3按按下ucharr sttatuus;ucharr deeda,secc,mii

6、n,hhourr;ucharr seet1_datt2,seet2_datt2;bit sset11_fllag,sett2_fflagg;sbit SDAA=P220;sbit SCLL=P221;statiic uuchaar ttimee_cnnt; statticbitt biit_fflagg;void dellay_iccc(innt nn)int i;for(ii=1;inn;i+);void dellay();void dellay11ms(uinnt zz)uintt i,j;for(ii=0;izz;i+)for(jj=0;j1110;j+);void staart()/开

7、始函函数SDA=1;delayy();SCL=11;delayy();SDA=00;delayy();void stoop()/停停止函数数SDA=0;delayy();SCL=11;delayy();SDA=11;delayy();void ressponns()/应应答函数数uchaar ii;SCL=11;delayy();whilee(SSDA=1)&(i2250)i+;SCL=00;delayy();void wriite_bytte(uuchaar ddatee)/写一字字节uchaar ii,teemp;temp=datte;for(ii=0;i88;i+)tempp=teemp

8、1;SCL=00;delayy();SDA=CCY;delayy();SCL=11;delayy();SCL=00;delayy();SDA=11;delayy();ucharr reead_bytte()uchaar ii,k;SCL=00;delayy();SDA=11;delayy();for(ii=0;i88;i+)SCL=1;delayy();k=(k=20)deeda=0;ssec+; if(secc9)seec=00;miin+; if(minn9)miin=00;hoour+; if(houur223)houur=00; /*/void timme1() iinteerruup

9、t 3 TH1=(6555366-10000)/2556; TL1=(6555366-10000)%2556; timee_cnnt+; bit_flaag=bitt_fllag; if(sstattus=0)iff(tiime_cntt3)timme_ccnt=0; elseeiff(tiime_cntt9)timme_ccnt=0;ucharr keey()uchaar ttempp;P3=0 xxff;temp=P3;if(teemp!=0 xxff)delaay_iicc(30);P3=0 xxff;temp=P3;returrn(ttempp);void pouut()/输输出判断断

10、子函数数 if(minn=sset11_daat00)&(hhourr=sset11_daat11)P1=0 x000; if(minn=sset22_daat00)&(hhourr=sset22_daat11)P1=0 xfff; /*/void maiin() uchaar kkey_vallue; inittiall(); for(;) keyy_vaaluee=keey(); poutt(); if(kkey_vallue=STTATUUS_KKEY)/如如果S44键按下下 staatuss+; if(sstattus=6) staatuss=0; EA=00; poutt(); wr

11、ritee_addd(1100,88);deelayy_iccc(2250); wrritee_addd(880,sset11_daat00);dellay_iccc(2550); wrritee_addd(881,sset11_daat11);dellay_iccc(2550); wrritee_addd(990,sset22_daat00);dellay_iccc(2550); wrritee_addd(991,sset22_daat11);dellay_iccc(2550); wrritee_addd(770,(uchhar)sett1_fflagg);ddelaay_iicc(2500

12、); wrritee_addd(771,(uchhar)sett2_fflagg);ddelaay_iicc(2500); EAA=1; deelayy1mss(3000); if(keey_vvaluue=INCC_KEEY)/如果果S1键键按下 ppoutt(); swwitcch(sstattus) caase 1:iif(sset11_daat00660)sset11_daat00+;deelayy1mss(3000);breeak; caase 2:iif(sset11_daat11223)sset11_daat11+;deelayy1mss(3000);breeak; caase

13、3:iif(sset22_daat00660)sset22_daat00+;deelayy1mss(3000);breeak; caase 4:iif(sset22_daat11223)sset22_daat11+;deelayy1mss(3000);breeak; caase 5:iif(mmin00)seet1_datt0-;dellay11ms(3000);bbreaak; caase 2:iif(sset11_daat1100)seet1_datt1-;dellay11ms(3000);bbreaak; caase 3:iif(sset22_daat0000)seet2_datt0-;

14、dellay11ms(3000);bbreaak; caase 4:iif(sset22_daat1100)seet2_datt1-;dellay11ms(3000);bbreaak; caase 5:iif(mmin0)mmin;ddelaay1mms(3300);brreakk; deefauult:breeak; if(keey_vvaluue=OK_KEYY)if(staatuss=11)|(sttatuus=2)seet1_flaag=!sett1_fflagg;deelayy1mss(3000); if(staatuss=33)|(sttatuus=4)seet1_flaag=!s

15、ett1_fflagg;deelayy1mss(3000); if(sttatuus=0) pouut();switcch(ttimee_cnnt) casse 00:P00=SEEG7secc%100;PP2=AACT5;breeak; casse 11:P00=SEEG7secc/100;PP2=AACT4;breeak; casse 22:P00=SEEG7minn%100;PP2=AACT3;breeak; casse 33:P00=SEEG7minn/100;PP2=AACT2;breeak; casse 44:P00=SEEG7houur%110;P2=ACTT1;brreakk;

16、 casse 55:P00=SEEG7houur/110;P2=ACTT0;brreakk; deffaullt:bbreaak; if(sttatuus=1) pouut();switcch(ttimee_cnnt) casse 00:P00=SEEG7staatuss;PP2=AACT0;breeak; casse 11:P00=0 xxff;P2=ACTT1;brreakk; casse 22:P00=SEEG7sett1_ddat0%10;P22=ACCT33;bbreaak; casse 33:P00=SEEG7sett1_ddat0/10;P22=ACCT22;bbreaak; d

17、effaullt:iif(bbit_flaag)P0=SEGG7sset11_daat00%110;P2=ACTT3; elsse PP0=SSEG77seet1_datt0/100;PP2=AACT2; breeak; if(sttatuus=2) poout();switcch(ttimee_cnnt) casse 00:P00=SEEG7staatuss;PP2=AACT0;breeak; casse 11:iff(seet1_flaag)PP0=00 xfbb; ellse P0=0 xfff;PP2=AACT1;breeak; casse 22:P00=SEEG7sett1_ddat

18、1%10;P22=ACCT33;bbreaak; casse 33:P00=SEEG7sett1_ddat1/10;P22=ACCT22;bbreaak; deffaullt:iif(bbit_flaag)P0=SEGG7sset11_daat11%110;P2=ACTT3; elsse P0=SEGG7sset11_daat11/110;P2=ACTT2;bbreaak; if(sttatuus=3)swittch(timme_ccnt) casse 00:P00=SEEG7staatuss;PP2=AACT0;breeak; casse 11:P00=0 xxff;P2=ACTT1;brr

19、eakk; casse 22:P00=SEEG7sett2_ddat0%10;P22=ACCT33;bbreaak; casse 33:P00=SEEG7sett2_ddat0/10;P22=ACCT22;bbreaak; deffaullt:iif(bbit_flaag)P0=SEGG7sset22_daat00%110;P2=ACTT3; elsse PP0=SSEG77seet2_datt0/100;PP2=AACT2; breeak; if(sttatuus=4) swiitchh(tiime_cntt) casse 00:P00=SEEG7staatuss;PP2=AACT0;breeak; casse 11:iff(seet1_flaag)PP0=00 xfbb; ellse P0=0 xfff;PP2=AACT1;breeak; casse 22:P00=SEEG7sett2_ddat1%10;P22=ACCT33;bbreaak; casse 33:P00=SEEG7sett2_ddat1/10

温馨提示

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

评论

0/150

提交评论