ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:18.18KB ,
资源ID:16952163      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16952163.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(车库门设计系统C源程序清单Word文件下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

车库门设计系统C源程序清单Word文件下载.docx

1、uchar temp;uchar key;uchar keycount;uchar pslen=5;uchar getps6;bit keyoverflag;bit errorflag;bit rightflag;uint second3;uint aa,bb;uint cc;bit okflag;bit alarmflag;uchar oka,okb;sbit led=P36;sbit keyhong=P32;sbit keykong=P37;sbit VT=P33;void delay(uint z)/1ms uint x,y; for(x=z;x0;x-) for(y=110;yy-);

2、void keyscan() uchar i; P1=0xff; P1_4=0; temp=P1; temp=temp & 0x0f; if (temp!=0x0f) delay(5); switch(temp) case 0x0e: key=7; break; case 0x0d: key=8; case 0x0b: key=9; case 0x07: /第一列7,8,9,10 key=10; / P1_1=P1_1; if(key=0) & (key10) /如果键值为一位数字则使该位dispbufkeycount+2=19,能否显示还要做一些处理 if(keycount keyoverf

3、lag=1; /key overflow /当 keycount6 ,即超过密码长度时,令keycount=6并且 keyoverflag=1,报警标志位 else if(key=12)/delete key /若键值为12,则此键是删除键 if(keycount0) keycount-; /密码长度减一 getpskeycount=0; dispbufkeycount+2=16; /-相当于关断显示16 else /keycnt=0时即当前没有一位密码数据显示时却按下了delete key则发出警报 else if(key=15)/enter key / 除了键值小于10,键值=12的情况外

4、的另外一种情况,即enter key if(keycount!=pslen) /当密码长度与设定的值不同时,密码错误标志位置1,密码正确标志位置0,并且 second3=0,响警报 errorflag=1; rightflag=0; second3=0; for(i=0;ikeycount;i+) /若得到的密码与设定的不一致时,密码错误标志位置1,密码正确标志位置0,并且 second3=0,响警报 if(getpsi!=psi) i=keycount; goto a; errorflag=0; /否则密码正确,密码错误标志位置0,密码正确标志位置1,将 keycount给i,例如keyco

5、unt=5 rightflag=1; /判断按键是否松开了 while(temp! temp=P1; keyoverflag=0;/? /若按键松开了,则报警标志位置0,即停止报警 P1_5=0; temp=temp & key=4; key=5; key=6; /第二列对应4,5,6,11 key=11;10) /key overflow else if(key=12)/delete key keycount-; dispbufkeycount+2=16; else if(key=15)/enter key =pslen) i+) goto a4;a4: P1_6=0; key=1; key

6、=2; key=3; /第三列对应1,2,3,12 key=12; else if(key=12)/delete key else if(key=15)/enter key goto a3;a3: P1_7=0; key=0; key=13; key=14; /第四列对应0,13,14,15 key=15; goto a2;a2:void kaimen() led=0; P3_0=0; P3_1=1; delay(1000); P3_0=1;void guanmen() led=1; P3_1=0;void main() /VT=0;/ flag=0; cnt=0; cnt1=0; /keyh

7、ong=0; TMOD=0x010; TH1=(65536-500)/256; TL1=(65536-500)%256; ET1=1; EX0=1; IT0=1; EA=1; TR1=1; P0=0xff;/P3_0=0; /P3_1=0; while(1) if(VT=0) /解码器PT2272解码输出 if(VT=0) /马达正转车库门开,灯亮 只要解码成功就执行如下动作 kaimen(); if(keykong=0) cnt1+; switch(cnt1) case 1:/flag=1; EX0=0; break; case 2:/flag=0; cnt=0; guanmen(); wh

8、ile(!keykong); keyscan(); if(flag1=1) flag1=0; /* if(flag=1) /P2=0xff;/*void hongwai() /红外对管作用,车进门时不起作用,人出车库门时才起作用,车库内灯熄灭,马达反转门关 if(keyhong=0) cnt+; switch(cnt)led=1; delay(1000); P3_0=1; cnt=0; break; /while(keyhong); /delay(5); */void int0() interrupt 0 delay(1100);void t1() interrupt 3 flashcount

9、+; if(flashcount=8) /每4ms就进行段码和位码的扫瞄显示输出 flashcount=0; P2=dispcodedispbufdispcount; /dispcount从0开始,dispbuf0是,dispbuf 1熄,从dispbuf2开始为按键的值,只不过用8显示 / dispbufdispcount要么为16要么为19,当显示该位密码时为19,当删除该位密码数据时为16 P0=dispbitdispcount; dispcount+; if(dispcount=8) dispcount=0; if(errorflag=1) & (rightflag=0) /两种报警声

10、 bb+; if(bb=800) bb=0; alarmflag=alarmflag; if(alarmflag=1)/sound alarm signal P3_4=P3_4; second3+; if(second3=6400) alarmflag=0; else if(errorflag=0) & (rightflag=1) cc+; if(cc1000) okflag=1; else if(cc2000) okflag=0; P3_4=1; cc=0; oka=0; okb=0; if(okflag=1) oka+; if(oka=2) okb+; if(okb=3) if(keyoverflag=1)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1