1.概述
(1)本設計採用stc89c52作為主控晶元,專用讀卡器模組用來讀射頻卡的資訊,當有卡進入到讀卡器讀卡的範圍內時就會讀取到相應的卡序列號,並根據得到的卡序列號做出相應的操作。若正確則開門,若不正確則報警並顯示錯誤資訊。
(2)本設計實現了自動、準確的識別卡序列號,對門禁系統起著重要的作用eeprom採用at24c04晶元,掉電後可以儲存密碼,從而保證了系統的安全性。人機互動通道部分採用了4×4矩陣鍵盤輸入以及lcd12864標準字元型液晶顯示。針對於用按鍵輸入密碼,根據密碼的正確與否來進行相應的操作,管理員可以自行設定和修改密碼;輸出系統部分包括驅動開鎖電路和報警電路;其中,在本系統設計中,驅動開鎖電路用發光二極體表示,而報警電路則使用蜂鳴器。
2.硬體設計
本次設計的硬體電路是由stc89c52 微控制器為控制核心,射頻卡資訊由mfrc522模組讀出,通過mcu在lcd12864上顯示,通過按鍵完成密碼驗證和修改密碼的功能,並根據輸入密碼的對錯,執行相應繼電器的動作和蜂鳴器的狀態,整個門禁系統框圖如圖3-1所示。
(1) rfid射頻模組電路
a.射頻識別識別系統原理
典型rfid系統由應答器(tag)、讀寫器(read and write device)以及計算機系統等組成。
讀寫器由無線收發模組、天線、控制模組及介面電路等組成
應答器也稱電子標籤,它具有可儲存讀寫資訊及對資訊進行加密的能力,是射頻識別系統主要的核心
計算機系統是以微控制器或微處理器為資料處理核心,主要是對讀取到電子標籤進行相關的資訊管理。
在閱讀器的感應範圍之外,電子標籤無源無法工作,只有在閱讀器感應範圍之內,電子標籤才是有源的。應答器工作所需的能量,是通過讀寫器的耦合單元傳輸給應答器的。應答器如果是無源系統,即應答器內不含電池,則應答器工作的能量是由讀寫器發出的射頻脈衝提供[8]。應答器如果是有源系統,即應答器內含有電池,則應答器工作能量和工作壽命有電池決定。rfid射頻系統結構圖如圖:
實用rfid系統為無源系統,即射頻卡能量由讀寫器發出的射頻脈衝訊號提供。無源系統的通訊優劣取決於讀寫器發出的脈衝訊號能否被射頻卡完整接受。當射頻卡進入讀卡器接受範圍後,如果接收到讀卡器發出的射頻訊號,就能憑藉產生的感應電流所獲得的能量傳送出儲存在卡片中的資訊,通過讀卡器的處理,將資訊送至資訊管理系統進行有關資料處理。
b.mfrc522射頻模組
mfrc522是應用於13.56mhz 非接觸式通訊中高整合度讀寫卡系列晶元中的一員,是nxp公司推出的一款非接觸式讀寫卡晶元。mfrc522利用了先進的調製和解調的技術,完全整合了在13.56mhz下所有型別的通訊協議,支援多種工作在13.56mhz下的射頻卡讀寫操作 。其內部傳送器部分可驅動讀寫器天線與射頻卡和應答機的通訊,無需其它的電路。模組的控制介面採用了標準spi通訊介面,由於mfrc522射頻模組採用3.3v供電電源,所以需利用ldo穩壓電路將5v轉換為3.3v,模組電路連線圖如圖:
(2)lcd12864顯示屏電路
lcd12864顯示屏電路主要採用了資料並行的控制方式(psb接地為序列模式,psb接電源為並行模式),同時使用了可調電位器實現顯示屏背光的調節,電路如圖:
(3)eeprom儲存電路
為了實現使用者密碼和rfid卡資訊的儲存,本設計採用eeprom儲存晶元at24c02,其內部整合了256個8位位元組共2k bit的儲存空間,並採用了iic匯流排介面進行操作,具有乙個專門的寫保護功能。電路如圖:
由於其他電路相對簡單,在此不做介紹了。
(4)總體硬體電路圖
3.軟體設計
本設計的軟體主要採用狀態機的原理對整體功能實現進行程式設計,主要實現四個操作:
按鍵輸入功能獲取
顯示屏操作重新整理及切換
rfid標籤資訊獲取及處理
使用者密碼輸入及對比
(1)主函式
void main(void) //主函式
}
(2)狀態機處理程式
void ctrl_process( void )
switch(states)
else display(2,0,6);
relay_off();
}break;
case 1:
display(1,0,2); //密碼輸入
display2(3,0,table,8);
key_count=0;
while(1)
if(key_value==13)
if(key_value>=0 && key_value <=9)//有按鍵輸入
if(key_value==11)//退格
if(key_count==8)
else //密碼錯誤}}
break ;
case 2:
display(1,0,3); //ic卡登記
if(ic_read())
break ;
case 3:
display(1,0,4); //密碼設定
display2(3,0,table,8);
key_count=0;
while(1)
if(key_value>=0 && key_value <=9)//有按鍵輸入
if(key_value==11)//退格
if(key_count==8 && key_value == 15) //按下確定鍵
}
break ;
default : break;
}
if( bpass ) //處理成功
if( bwarn ) //處理失敗
}
基於51微控制器的智慧型溫控風扇
1.功能 本設計為一種溫控風扇系統,具有靈敏的溫度感測和顯示功能,系統選用stc89c52微控制器作為控制平台對風扇轉速進行控制。可在測得溫度值在高低溫度之間時開啟風扇弱風檔,當溫度公升高超過所設定的溫度時自動切換到大風檔,當溫度小於所設定的溫度時自動關閉風扇,控制狀態隨外界溫度而定。2.硬體設計 ...
基於樹莓派的智慧型安全門(微控制器)
先用微控制器 薄膜鍵盤做密碼鍵盤的輸入,通過串列埠把獲取到的按鍵值發給樹莓派去識別和操作。這裡用了 號鍵作為密碼輸入結束的確定鍵。微控制器程式和樹莓派程式調通後,列印外殼,焊板子 因為體積關係不可能直接塞個直插封裝的微控制器下去,所以就買了比較方便焊接體積又相對小的dip封裝的微控制器,這裡用了st...
基於51微控制器的智慧型計算器
其實,說智慧型也不算智慧型,就是在計算器上加上了日曆 時鐘和溫度顯示而已。具體用到的也是51很基礎的模組,乙個鍵盤,乙個1602,溫度顯示那塊用到了ds18b20,硬體除錯的部分也很少,主要是 的書寫。功能簡介 1 開啟電源時,顯示歡迎字樣 2 計算器功能 3 日曆及時鐘功能 4 溫度實時測量 然後...