本系統(tǒng)主要使用了指紋模塊,MicroSD卡讀寫模塊,PCF8563模塊,蜂鳴器模塊,矩陣按鍵模塊,lcd1602,和STC90C516RD+
系統(tǒng)框圖
1)指紋模塊
采用FPM10A光學指紋模塊。FPM10A光學指紋模塊是經(jīng)典的光學指紋模塊,性能穩(wěn)定,應(yīng)用范圍廣,可選用TTL串口或USB接口,可使用51單片機
2)存儲模塊方案一:采用EEPROM模塊
EEPROM模塊簡單,采用iic通訊,但存儲量小,壽命有限,沒有鍛煉價值,所以棄用。
方案二:采用MicroSD卡讀寫模塊
MicroSD讀寫卡模塊,采用SPI協(xié)議通訊,這個通訊協(xié)議還沒接觸過,且比EEPROM存儲量大,使用普遍,所以本系統(tǒng)采用MicroSD讀寫卡模塊。
3)實時時鐘采用PCF8563模塊。該芯片比DS1302更為穩(wěn)定,走時更準,功耗最低。
程序設(shè)計和設(shè)計思路程序流程圖
該項目實現(xiàn)簽到,添加指紋,刪除單個指紋,搜索指紋,和清空指紋等操作。
簽到是搜索該指紋ID后,存儲時間戳到MicroSD對應(yīng)的扇區(qū)中,且蜂鳴器會響視為簽到成功。功能選擇使用4個按鍵,用循環(huán)向下選擇的方式。添加指紋中,首先先獲得指紋圖像1,存儲到buffer1中,再獲得指紋圖像2,存儲到buffer2中,再寫命令使buffer1和buffer2形成特征模板,再存入特定的ID中,最后初始化ID對應(yīng)的MicroSD扇區(qū)。刪除單個指紋和搜索指紋中,我使用兩種方法找到該指紋的ID,一種是按鍵輸入,還是用四個按鍵循環(huán),二種是通過搜索指紋找到該指紋的ID,在按鍵指紋中需要判斷該ID是否存在,通過在對應(yīng)MicroSD卡設(shè)置標志位的方法,確定該ID是否在用,該標志位與指紋模塊同步。搜索指紋找到ID后顯示,對應(yīng)ID的簽到時間。清空指紋是清空指紋模塊和對應(yīng)的MicroSD卡扇區(qū)。