導航:首頁 > 操作系統 > 單片機供電自鎖電路設計

單片機供電自鎖電路設計

發布時間:2025-01-12 00:03:52

❶ 求單片機中六腳自鎖開關按鈕的原理圖

如圖所示:

實物是,一共2排,每排3個引腳(不是樓上所說2個或一對),中間一根是公共端,對應他左右2個腳一個常開一個常閉,另外一排和這個一樣,常開對常開,公共點對公共點,常閉對常閉,但是完全獨立的2組。

(可能要用到它的4個引腳,一次按下可以管理兩個電源)。

(1)單片機供電自鎖電路設計擴展閱讀:

電飯鍋、電熱水壺上的開關,按下後被鎖定,但加熱到指定條件後,鎖定開關狀態的磁鐵或雙金屬片動作,使開關復位同時切斷電源(電飯鍋是轉換到保溫狀態),也許不合「斷電後復位」要求。

斷電後復位,即鎖定機構握納譽工作應於電源相關,成品好象沒有,因為該要求可以使用一般按鈕開關與繼電器組成的電路可以達到;

但如果僅使用一個繼電器(或接觸器),將其一組常開觸點用來控制該繼電器(接觸器)工作線圈電源,把繼電器衡鐵當作開關按鈕,按下衡鐵後,繼電器控制線圈的觸點閉合,線圈得電,繼電器保持吸合(自鎖),其餘觸點控制其他線路;

當一茄困旦電源斷電,繼電器隨即斷電,衡鐵復位,相當按鈕復位,需要再次按動繼電器衡鐵,電源才能再次接通。這繼電器此時相段段當一個帶電鎖定的按鈕開關。

❷ 用單片機設計一個簡易的密碼鎖,用鍵盤輸入0~9三位數的密碼.密碼輸入正確顯示「P」約3s,並通過P3.0埠將

你這個問題內容量太大,不可能有誰那麼多時間給你開發,我這邊有個做過的類似的,代碼送你了。

#include<msp430x14x.h>
#include"Delay.h"
#include"x24c02.h"
#include"LCD1602.h"

ucharLCD_ID_1[16]={"Password:------"};
ucharLCD_ID_2[16]={"OldCode:------"};
ucharLCD_ID_3[16]={""};
ucharLCD_ID_4[16]={"NewCode:------"};

#defineJI_OPENP3OUT|=BIT6
#defineJI_CLOSEP3OUT&=~BIT6

uchara=10,b=10+0x40,c=0,i=0,j=0,k=0,super=0;

ucharflag=0;

uchartable1[6]={1,2,3,4,5,6};
uchartable2[6]={0,0,0,0,0,0};
uchartable3[6]={0,0,0,0,0,0};
ucharsupercode[6]={8,8,8,8,8,8};
//SCL時鍾線
#defineSCO_SETP1OUT|=BIT3//輸出高
#defineSCO_RESETP1OUT&=(~BIT3)//輸出低
#defineSCO_IN(P1IN&BIT3)//輸出
#defineSCOINP1DIR&=(~BIT3)//設置輸入
#defineSCOOUTP1DIR|=BIT3//設置輸出
//SDA數據線
#defineSDO_SETP1OUT|=BIT2
#defineSDO_RESETP1OUT&=(~BIT2)
#defineSDO_IN(P1IN&BIT2)
#defineSDOINP1DIR&=(~BIT2)
#defineSDOOUTP1DIR|=BIT2

voidshuru(void);
voidshe(void);
voidbijiao(void);

ucharchumo_read(void)
{
uchari,dat;
SCOOUT;//設置輸出
SCO_RESET;//輸出低

SDOOUT;
SDO_SET;
delay_us(93);
SDO_RESET;
delay_us(10);
SDOIN;

for(i=0;i<16;i++)
{
SCO_SET;
delay_us(5);

if(SDO_IN!=0)
{
dat=i+1;
}

SCO_RESET;
delay_us(5);
}
delay_ms(2);
returndat;
}

voidOPEN(void)
{
P1OUT|=BIT4;
P3OUT&=~BIT5;
delay_ms(1000);delay_ms(1000);
P3OUT&=~BIT5;
P1OUT&=~BIT4;
}
voidCLOSE(void)
{
P3OUT|=BIT5;
P1OUT&=~BIT4;
delay_ms(1000);delay_ms(1000);
P3OUT&=~BIT5;
P1OUT&=~BIT4;
}
voidmain(void)
{
//系統初始化
WDT_Init();//STOPWDT
MCLK_Init();//MCLK=8M
Port_Init();//CLOSEALLPORT

P3DIR|=BIT5;
P1DIR|=BIT4;
P3OUT&=~BIT5;
P1OUT&=~BIT4;
d24c_init();

L1602_Init();
L1602_string(1,1,LCD_ID_1);

P3DIR|=BIT6;
P3DIR&=~BIT7;
P6DIR|=BIT2;
JI_CLOSE;

delay_ms(10);
table1[0]=d24c_read(1);
delay_ms(20);
table1[1]=d24c_read(2);
delay_ms(20);
table1[2]=d24c_read(3);
delay_ms(20);
table1[3]=d24c_read(4);
delay_ms(20);
table1[4]=d24c_read(5);
delay_ms(20);
table1[5]=d24c_read(6);
delay_ms(500);

while(1)
{
delay_ms(100);

shuru();
she();
bijiao();
}
}

voidshuru(void)
{
wcmd(0x80+a+c);
wcmd(0x0f);

if((chumo_read()!=0)&&(chumo_read()<11))
{
delay_ms(10);
if(chumo_read()!=0)
{
table2[c]=chumo_read();
L1602_char(1,a+c+1,(chumo_read()%10)+0X30);
c++;
delay_ms(500);
if(c==6)
{
c=0;
L1602_string(1,1,LCD_ID_1);
}
}
}

j=0;
for(i=0;i<6;i++)
{
if(table1[i]!=table2[i])
{
j=1;
break;
}
}

if(chumo_read()==13)
{
delay_ms(10);
if(chumo_read()==13)
{
c=0;
L1602_string(1,1,LCD_ID_1);
delay_ms(1000);
}
}
}

voidshe(void)
{
if(chumo_read()==16)
{
delay_ms(10);
if(chumo_read()==16)
{
L1602_string(1,1,LCD_ID_3);
L1602_string(2,1,LCD_ID_2);
flag=1;
c=0;
delay_ms(500);
}
}
while(flag==1)
{
wcmd(0x80+0x40+a+c);
wcmd(0x0f);

if((chumo_read()!=0)&&(chumo_read()<11))
{
delay_ms(10);
if(chumo_read()!=0)
{
table2[c]=chumo_read();
L1602_char(2,a+c+1,(chumo_read()%10)+0X30);
c++;
delay_ms(500);
if(c==6)
{
c=0;
L1602_string(2,1,LCD_ID_2);
super=1;
for(i=0;i<6;i++)
{
if(supercode[i]!=table2[i])
{
super=0;
break;
}
}
}
}
}

k=1;
for(i=0;i<6;i++)
{
if(table1[i]!=table2[i])
{
k=0;
break;
}
}

if(chumo_read()==13)
{
delay_ms(10);
if(chumo_read()==13)
{
c=0;
L1602_string(2,1,LCD_ID_2);
delay_ms(1000);
}
}

if(k==1||super==1)
{
L1602_string(2,1,LCD_ID_4);
}
while(k==1||super==1)
{
wcmd(0x80+0x40+a+c);
wcmd(0x0f);

if((chumo_read()!=0)&&(chumo_read()<11))
{
delay_ms(10);
if(chumo_read()!=0)
{
table1[c]=chumo_read();
L1602_char(2,a+c+1,(chumo_read()%10)+0X30);
c++;
if(c==6)
{
delay_ms(1000);
c=0;
flag=0;
k=0;
super=0;
d24c_write(1,table1[0]);
delay_ms(30);
d24c_write(2,table1[1]);
delay_ms(30);
d24c_write(3,table1[2]);
delay_ms(30);
d24c_write(4,table1[3]);
delay_ms(30);
d24c_write(5,table1[4]);
delay_ms(30);
d24c_write(6,table1[5]);
delay_ms(30);

L1602_string(1,1,LCD_ID_1);
L1602_string(2,1,LCD_ID_3);
}
}
delay_ms(400);
}
delay_ms(100);
if(chumo_read()==13)
{
delay_ms(10);
if(chumo_read()==13)
{
c=0;
L1602_string(2,1,LCD_ID_2);
delay_ms(500);
}
}
}
}
}
voidbijiao()
{
if((j==0)||((P3IN&BIT7)!=0))
{
JI_OPEN;
P6OUT&=~BIT2;
OPEN();
delay_ms(2000);
L1602_string(1,1,LCD_ID_1);
for(i=0;i<6;i++)
{
table2[i]=0;
}
JI_CLOSE;
CLOSE();
}
else
{
P6OUT|=BIT2;
}
}
閱讀全文

與單片機供電自鎖電路設計相關的資料

熱點內容
工商銀行app房貸還款在哪裡看 瀏覽:759
最新民生通訊app從哪裡下載 瀏覽:378
如何在發簡訊時給自己手機號加密 瀏覽:773
擴展單片機ram定址方式是什麼 瀏覽:318
phpide是什麼 瀏覽:752
單片機相關軟體 瀏覽:818
eclipse如何編譯c11 瀏覽:286
加密游戲app 瀏覽:73
vs2010編譯嵌套太深 瀏覽:980
程序員面試注意事項 瀏覽:740
scratch編譯為h5 瀏覽:208
威聯通套件編譯 瀏覽:232
清刻pdf 瀏覽:984
可編程延時發生器 瀏覽:93
濱州用伺服器織夢要怎麼上傳文件 瀏覽:867
java7與java8 瀏覽:959
真空壓縮袋什麼材質好 瀏覽:936
excel批量見建文件夾 瀏覽:558
黑馬程序員就業班筆記 瀏覽:370
單片機供電自鎖電路設計 瀏覽:57