標(biāo)題:
基于51單片機(jī)密碼鎖設(shè)計(jì)LCD1602顯示(原理圖+程序)
[打印本頁(yè)]
作者:
劉志超
時(shí)間:
2019-3-26 10:09
標(biāo)題:
基于51單片機(jī)密碼鎖設(shè)計(jì)LCD1602顯示(原理圖+程序)
兄弟們加油!
電路原理圖如下:
0.png
(86.37 KB, 下載次數(shù): 54)
下載附件
2019-3-29 04:47 上傳
單片機(jī)源程序如下:
#include <reg52.h>
#include <stdio.h>
#include <intrins.h>
#include "uart.h"
#include "fpmxx.h"
#include "lcd.h"
#include "keyboard.h"
#include "main.h"
#include "eeprom.h"
#include "12864.h"
#include "led.h"
#include "font.h"
#include "password.h"
sbit UART_RXD = P3^0;
sbit UART_TXD = P3^1;
sbit JIDIANQI = P3^7;
volatile unsigned char Menu_Max_Item = 4;
volatile unsigned char Menu_Select = 1;
//測(cè)試?yán)^電器開工并關(guān)閉一次
void Jidianqi_Test()
{
JIDIANQI = 0;
Delay_Ms(100);
JIDIANQI = 1;
}
void main()
{
unsigned char first = 1;
unsigned char ucKey = 0xFF;
Buzzer_On();
LED_Blink();
Jidianqi_Test();
LCD_Init();
UART_Init_57600();
Password_Init();
while(1)
{
if(first == 1)
{
FPMXX_Find_Fingerprint();
LCD_Main_Menu(1);
Menu_Select = 1;
first =2;
}
ucKey = getKeyPressed(); //掃描鍵盤輸入
if(ucKey == 11) //#
{
do
{
ucKey = getKeyPressed();
}
while(ucKey != 11); //等待松開按鍵
switch(Menu_Select)
{
//查找指紋
case 1:
FPMXX_Find_Fingerprint();
LCD_Main_Menu(1);
Menu_Select = 1;
first =2;
break;
//添加指紋
case 2:
FPMXX_Add_Fingerprint();
break;
//清空指紋
case 3:
FPMXX_Delete_All_Fingerprint();
break;
case 4:
Change_Password();
break;
}
}
if(ucKey == 8) //下
{
// Delay_Ms(100);
do
{
ucKey = getKeyPressed();
}
while(ucKey != 8); //等待松開按鍵
//當(dāng)前箭頭+1
if(Menu_Select!=Menu_Max_Item)
{
Menu_Select++;
}
LCD_Main_Menu(Menu_Select);
}
if(ucKey == 2) //上
{
do
{
ucKey = getKeyPressed();
}
while(ucKey != 2); //等待松開按鍵
//當(dāng)前箭頭+1
if(Menu_Select!=1)
{
Menu_Select--;
}
LCD_Main_Menu(Menu_Select);
}
Delay_Ms(100); //延時(shí)判斷100MS檢測(cè)一次
}
}
復(fù)制代碼
所有資料51hei提供下載:
FPMXX_89C52RC_演示版資料.zip
(197.02 KB, 下載次數(shù): 48)
2019-3-26 10:08 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
作者:
顧天羽
時(shí)間:
2019-6-2 18:04
謝謝大佬
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1