欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 基于STC12C5A60S2單片機密碼鎖設計 [打印本頁]

作者: maoai    時間: 2018-9-9 16:50
標題: 基于STC12C5A60S2單片機密碼鎖設計
       采用單片機設計一種可防止多次試探破譯的密碼鎖系統,系統采用電磁鎖,有門內/外兩個鍵盤,由單片機根據輸入的密碼情況,控制電磁鎖的開關。具體功能如下:
可設置8位密碼,每位密碼可取值0~9;
  ②用戶能夠自行設定和修改密碼;
  ③輸入密碼時,每個按鍵有提示音;
  ④若輸入的8位密碼不正確,則報警3秒提示;
  若連續三次輸入錯誤密碼,系統報警1分鐘,報警器間輸入密碼無效,以防竊賊多次試探密碼;
  若輸入的8位密碼完全正確,開鎖,同時發出1秒的提示音;
  ⑤系統使用電磁鎖,開鎖時,電磁線圈打開5s,而后恢復初始狀態;
  †系統設有兩個鍵盤,門外密碼鍵盤只提供數字0~9用于輸入密碼,門內鍵盤除帶有數字鍵外,還提供確認和設定按鍵,以便重新設置密碼;
  ‡門內部分帶有顯示器件,要求使用8LED數碼管,用于提示密碼的設定情況;
設定密碼時,增加LCD顯示設定的密碼,輸入完畢后,按下確認鍵,如果不足8位,LCD顯示ERR(數碼管也可顯示類似字型),此時設定的密碼無效。如果輸入的密碼滿8位,則LCD顯示AGN提示字符,要求重新輸入一遍,兩次輸入吻合的情況下,密碼設定成功,LCD顯示OK提示,并伴有2S的提示音。
附上部分代碼:
#include <STC12C5A60S2.h>
#include <string.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int
#define fadd 0x0000
sbit P3_7=P3^7;
uchar *q;
uchar Temp;
uint r,t,e,dat;
uchar flag=0;   //用戶自定義定時溢出標志位
uchar buffer[8]="00000000";  //huan cun
sbit rs=P2^7;
sbit rd=P2^6;
sbit lcden=P2^5;
sbit relay=P2^4;    //定義繼電器引腳
sbit laba=P2^3;
uchar  DSY_BUFFER[16]="                "; //數組用于存放顯示符號
uchar  DSY_BUFFER1[16]="                "; //數組用于存放顯示符號
uchar idata Userpassword[8]={0};     //存放用戶密碼
uchar code table2[8]="01234567";    //初始化密碼
uchar code table[]="Input Password..";
uchar temp,i=0,j=0,k=0,n;
uchar IS_valid_user;
/*************delay************/
void delayms(uint z)    //延時毫秒級
{
uint x,y;
for(x=z;x>0;x--)
  for(y=110;y>0;y--);
}
void delay5s()    //延時5s
{
unsigned char i, j, k;
_nop_();
_nop_();
i = 228;
j = 253;
k = 219;
do
{
  do
  {
   while (--k);
  } while (--j);
} while (--i);
}

void delay3s()    //延時3s
{
unsigned char i, j, k;
_nop_();
_nop_();
i = 137;
j = 203;
k = 232;
do
{
  do
  {
   while (--k);
  } while (--j);
} while (--i);
}

void delay1s()    //延時1s
{
unsigned char i, j, k;
_nop_();
_nop_();
i = 12;
j = 103;
k = 57;
do
{
  do
  {
   while (--k);
  } while (--j);
} while (--i);
}

void delay()
{
unsigned char i, j, k;
_nop_();
_nop_();
i = 5;
j = 144;
k = 71;
do
{
  do
  {
   while (--k);
  } while (--j);
} while (--i);
}

/****************lcd1602******************/
void write_com(uchar com)
{
rs=0;
rd=0;
lcden=0;
P0=com;
delayms(3);
lcden=1;
delayms(3);
lcden=0;
}
void write_date(uchar date)
{
rs=1;
rd=0;
lcden=0;
P0=date;
delayms(3);
lcden=1;
delayms(3);
lcden=0;
}
void Display_String(uchar *p,uchar com)
{  uchar i;
   write_com(com);
   for(i=0;i<16;i++)
   {
   write_date(p);
}
}
void init_lcd()
{
lcden=0;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
write_com(0x80);
    Display_String(table,0x80);
Display_String("Lock OK!         ",0xc0);
}

/***********EEPROM*************/
void chachu()
{
     dat=0x10;
  while(dat!=0)
{
IAP_CONTR=0x82;
IAP_CMD=0x03;
IAP_ADDRL=0x0000;
IAP_ADDRH=(0x0000>>8);
IAP_TRIG=0x5A;
IAP_TRIG=0xA5;
delay();
dat=(IAP_CONTR&0x10);
}
}


      

密碼鎖程序.docx

17.12 KB, 下載次數: 38, 下載積分: 黑幣 -5


作者: 鈴戀仙    時間: 2018-11-13 17:05
嘻嘻,不錯不錯
作者: Edenmashirio    時間: 2018-12-17 16:00
謝謝樓主分享
作者: Edenmashirio    時間: 2018-12-17 16:29
謝謝樓主分享 感謝感謝
作者: BruderLung    時間: 2019-5-29 09:37
電路仿真圖有么




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1