国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

51單片機制作簡易密碼鎖

這篇具有很好參考價值的文章主要介紹了51單片機制作簡易密碼鎖。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

51單片機期末考試設(shè)計題目

設(shè)計要求:

設(shè)計具有16個按鍵和1個數(shù)碼管顯示的密碼鎖,具體要求: 輸入一位密碼(為0~9,A~F之間的數(shù)字),密碼輸入正確顯示“F”并將鎖打開;否則顯示“E”,繼續(xù)保持鎖定狀態(tài)。

基本要求:

密碼鎖的基本功能如下:16個按鍵,分別代表數(shù)字0、1、2......9和英文字符A~F;密碼在程序中事先設(shè)定為:“8”;系統(tǒng)上電時,數(shù)碼管顯示“-”,表示等待密碼輸入;密碼輸入正確時顯示字符“F”約3s,并通過P3.0端口將鎖打開;否則顯示字符“E”約3s,繼續(xù)保持鎖定狀態(tài)。

原理圖設(shè)計如下:

51單片機制作簡易密碼鎖

?程序設(shè)計如下:

#include "regx52.h"			 //此文件中定義了單片機的一些特殊功能寄存器

typedef unsigned int u16;	  //對數(shù)據(jù)類型進行聲明定義
typedef unsigned char u8;

#define GPIO_DIG P0   //數(shù)碼管
#define GPIO_KEY P3		//按鍵
 

u8 KeyValue,mark;	//KeyValue用來存放讀取到的鍵值,mark用來存取按鍵按下標志位

u8 code smgduan[]=
{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};//顯示0~F的值

/*******************************************************************************
* 函 數(shù) 名         : Delay
* 函數(shù)功能		   : 延時xms個1ms時間
***+****************************************************************************/
void Delay(u16 xms)
{
	u8 i, j;
	while(xms--)
	{
		i = 2;
		j = 239;
		do
		{
			while (--j);
		} while (--i);
	}
}

/*******************************************************************************
* 函 數(shù) 名         : KeyDown
* 函數(shù)功能		   : 按鍵檢測并返回鍵值
***+****************************************************************************/
void KeyDown(void)
{
	char a=0;
	GPIO_KEY=0x0f;
	if(GPIO_KEY!=0x0f)//讀取按鍵是否按下
	{
		Delay(10);//延時10ms進行消抖
		if(GPIO_KEY!=0x0f)//再次檢測鍵盤是否按下
		{	
			mark=1;
			//測試列
			GPIO_KEY=0X0F;			//逐列
			switch(GPIO_KEY)
			{
				case(0X07):	KeyValue=0;break;				//左1列
				case(0X0b):	KeyValue=1;break;				//  2
				case(0X0d): KeyValue=2;break;				//	3
				case(0X0e):	KeyValue=3;break;				//	4
			}
			//測試行
			GPIO_KEY=0XF0;			//逐行
			switch(GPIO_KEY)
			{
				case(0X70):	KeyValue=KeyValue;break;     //	第一行
				case(0Xb0):	KeyValue=KeyValue+4;break;		//   2
				case(0Xd0): KeyValue=KeyValue+8;break;		//   3
				case(0Xe0):	KeyValue=KeyValue+12;break;		//	4
			}
			
		}
	}
	while((a<10)&&(GPIO_KEY!=0xf0))	 //檢測按鍵松手檢測
	{
		Delay(1);
		a++;
	}
}

/*******************************************************************************
* 函 數(shù) 名     : main

* 函數(shù)功能		   : 無按鍵按下顯示默認值-,當按鍵按下顯示鍵值,
									如果正確顯示F并亮led燈,錯誤顯示E,各階段延時1秒鐘。
***+****************************************************************************/
void main()
{	
	while(1)
	{	
		KeyDown();		   //按鍵判斷函數(shù)
		P0=0xbf;		//初始值 -
		if(mark==1)	//如果按鍵按下
		{
			if(KeyValue==8)
			{
				GPIO_DIG=smgduan[KeyValue];
				Delay(1000);
				GPIO_DIG=smgduan[15];
				P2_1=0;
				Delay(1000);
				P2_1=1;
				mark=0;
			}
			else
			{
				GPIO_DIG=smgduan[KeyValue];
				Delay(1000);
				GPIO_DIG=smgduan[14];
				Delay(1000);
				mark=0;
			}	
		}
	}		
}

注意事項:

1.原理圖的矩陣按鍵,引腳不用接錯了,引腳接錯那掃描結(jié)果就不一樣,而且容易出現(xiàn)亂碼的情況。

2.如果密碼正確和密碼錯誤需要顯示的不是E,F(xiàn),自己可以在段碼表加在后面你想要的段碼值,自己二進制轉(zhuǎn)16進制計算咯,然后讓數(shù)碼管顯示【你那個段碼值】。

3.還有啥了,大概其實也沒有什么寫的應該比較簡單易懂,而且可移植性很強,比如按鍵掃描函數(shù),你以后需要用到矩陣按鍵,(噢,這個矩陣按鍵接線方法都和單片機開發(fā)板的一樣)完全可以照搬,你只要知道怎么用就可以了。至于他的掃描方式,那注釋也比較清楚,灑灑水了。

4.我這里有一整套的,程序+原理圖+實驗報告,需要可以私信,絕得可以,打賞一點也可以的。文章來源地址http://www.zghlxwxcb.cn/news/detail-507745.html

到了這里,關(guān)于51單片機制作簡易密碼鎖的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 51單片機-電子密碼鎖

    51單片機-電子密碼鎖

    實物演示效果: https://www.bilibili.com/video/BV1xh4y1K7uV/?vd_source=6ff7cd03af95cd504b60511ef9373a1d 電子密碼鎖的主要功能 1.按鍵設(shè)置6位密碼,輸入密碼若密碼正確,則鎖打開。顯示open! 2.密碼可以自己修改(6位密碼),必須是鎖打開時才能改密。為防止誤操作,修改密碼得輸入兩次。

    2024年01月17日
    瀏覽(30)
  • 51單片機“密碼鎖”代碼詳解

    51單片機“密碼鎖”代碼詳解

    注:此代碼一經(jīng)過驗證,讀者不必懷疑其正確性,如果燒錄進去沒有反應,請自行檢查引腳端口配置,以及仔細分析代碼實現(xiàn)原理。倘若能靜下心來分析代碼,一定能受益匪淺。 廢話不多說,,直接上代碼。如有問題,請下方評論并私信我,收到后一定及時回復! ?? ?功能

    2024年02月08日
    瀏覽(28)
  • 基于51單片機的密碼鎖設(shè)計

    基于51單片機的密碼鎖設(shè)計

    電子密碼鎖設(shè)計,以AT89C51為主控,晶振電路和復位電路共同組成最小系統(tǒng),使得單片機可以正常運行。矩陣按鍵作為輸入模塊,輸入密碼,LCD1602作為顯示設(shè)備,顯示輸入的密碼和提示語句,AT24C02作為EEPROM存儲器,使用LED模擬“鎖”,表示鎖的開啟和關(guān)閉狀態(tài)。系統(tǒng)掉電后,

    2024年02月11日
    瀏覽(20)
  • 基于51單片機的電子密碼鎖

    基于51單片機的電子密碼鎖

    主要功能: 1、6位密碼開鎖 可以修改用戶密碼和管理員密碼 斷電記憶 3次錯誤報警鎖住鍵盤

    2024年02月11日
    瀏覽(26)
  • 51單片機實現(xiàn)矩陣鍵盤密碼鎖

    51單片機實現(xiàn)矩陣鍵盤密碼鎖

    使用51單片機的矩陣鍵盤模塊以及l(fā)ed1602顯示屏,實現(xiàn)模擬密碼鎖。 當程序燒錄到單片機中后,led1602屏幕會顯示文字。 第一行會顯示單詞“PASSWORD”,第二行顯示4個0,表示我們要寫入的四位密碼,每位默認為0。 矩陣鍵盤前兩行與第三行的前兩個分別代表輸入1-9與0,第三行第

    2024年02月03日
    瀏覽(25)
  • 基于51單片機的電子密碼鎖設(shè)計

    基于51單片機的電子密碼鎖設(shè)計

    一.硬件方案 ????????本系統(tǒng)由STC89C52單片機、4*4矩陣鍵盤,蜂鳴器,復位電路和晶振電路、繼電器等組成,4*4鍵盤主要用于密碼的輸入和修改,蜂鳴器報警,復位電路和晶振電路與STC89C52單片機組成單片機最小系統(tǒng)。它具有設(shè)置、修改6位用戶密碼、輸錯報警、密碼錯誤報

    2024年02月16日
    瀏覽(27)
  • 51單片機學習--矩陣鍵盤、電子密碼鎖

    51單片機學習--矩陣鍵盤、電子密碼鎖

    矩陣鍵盤的模塊原理圖: 功能:按下矩陣按鍵,在LCD上顯示對應的數(shù)值。 采用模塊化編程,在此只給出MatrixKey.c 和 main.c 兩部分代碼 這里要注意必須先判斷KeyNum是否為0,否則while不斷循環(huán)會不斷顯示0,導致看不到按下按鈕顯示的數(shù)字 要利用寫好的矩陣鍵盤來制作一個密碼鎖

    2024年02月16日
    瀏覽(26)
  • C51單片機密碼鎖課程設(shè)計

    C51單片機密碼鎖課程設(shè)計

    提示:文章寫完后,目錄可以自動加粗樣式生成,如何生成可參考右邊的幫助文檔 微機原理及單片機應用技術(shù)的課程設(shè)計,C51設(shè)計一個密碼鎖; 要求:鍵盤上有0-9個數(shù)字按鍵,功能鍵:確認和取消等,可設(shè)置復合鍵。密碼的位數(shù)及密碼可以任意設(shè)定,,當輸入數(shù)字和設(shè)置的密

    2023年04月10日
    瀏覽(22)
  • 【Proteus仿真】【51單片機】電子密碼鎖設(shè)計

    【Proteus仿真】【51單片機】電子密碼鎖設(shè)計

    本項目使用Proteus8仿真51單片機控制器,使用LCD1602液晶、矩陣按鍵、蜂鳴器、EEPROM模塊、繼電器模塊等。 系統(tǒng)運行后,LCD1602顯示密碼輸入提示界面,系統(tǒng)存儲在EEPROM的初始密碼為123456, 用戶可通過矩陣按鍵S1-S10輸入數(shù)值0-9,當在密碼輸入過程中有誤,可按S11鍵回刪并重新輸

    2024年02月13日
    瀏覽(21)
  • (含代碼)基于51單片機電子密碼鎖設(shè)計

    (含代碼)基于51單片機電子密碼鎖設(shè)計

    一.硬件說明 采用STC89C51作為主控芯片,結(jié)合矩陣按鍵輸入模塊、數(shù)碼管顯示模塊、LCD1602液晶顯示、LED、蜂鳴器報警器等電路模塊實現(xiàn)開鎖、上鎖、報警、密碼更改等功能,設(shè)計一款可修改密碼且具有報警功能的液晶顯示電子密碼鎖。 主要由STM32單片機+最小系統(tǒng)+LCD1602液晶顯

    2024年01月16日
    瀏覽(30)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包