項目歷時幾個月了,但是由于LPC55S69雙核芯片出來不久,感覺開發(fā)起來還是很不順暢。拋開LPC55S69的TrustZone-M安全機制不說,其采用的 Arm? Cortex?-M33架構(gòu)就覺得很超前。
公司的產(chǎn)品都是用Keil5.23版本開發(fā)的,如果換成高一點的版本,會在在線Debug時出現(xiàn)莫名其妙的錯誤,因此不能升級。然而這款LPC55S69開發(fā)板又不能支持Keil5.26版本以下的開發(fā),因此只能抽擠下班休息時間,在IAR集成開發(fā)工具中摸索摸索。
不過還好,社區(qū)提供了智能門鎖的參考工程,其實市面上的門鎖都大同小異,現(xiàn)在有的門鎖都推崇了指靜脈鎖,認為指靜脈是采用生物活體取樣,比指紋模塊更安全。如下方圖片所示:
其實它們的應(yīng)用場景都差不多,在這次開發(fā)中,還是采用傳統(tǒng)的指紋模塊開發(fā),畢竟指靜脈采集的模板數(shù)據(jù)量太大。
言歸正傳,由于年底項目積壓,一直沒有多少時間深究LPC55S69的雙核工作原理,其加密強大之處。本次項目預期目標是:實現(xiàn)通過手機藍牙串口調(diào)試助手,以自定義的數(shù)據(jù)包格式發(fā)送給LPC55S69,LPC55S69從藍牙串口接收端讀取接收數(shù)據(jù),然后對數(shù)據(jù)包進行解析。
解析出的開鎖方式是固定密碼,則從LPC55S69的flash中讀取之前用戶存儲的密碼;如果解析出的開鎖方式是指紋模式,則需要通過OLED屏顯示“請放入手指”,讀取指紋信息后與存在指紋模塊里模板信息對比,經(jīng)過crc,MD5校驗后,說明前比1:1無誤,直接打開驅(qū)動電機GPIO口,將鎖體打開,并屏上顯示開鎖成功。
由于適用對象是個體家庭,因此這里不再考慮開鎖日志提取、查詢功能。由于采用的是雙核結(jié)構(gòu),這里各類外設(shè)通訊協(xié)議由Core0來管理,電機部分由Core0來監(jiān)控。用到的模塊有,藍牙模塊HC08 ,指紋模塊,ADC按鍵控制板,OLED顯示屏,ESP無線模塊,電機驅(qū)動模塊,部件如下圖所示:
OLED屏采用的是I2C通信接口,藍牙模塊HC08采用串口通訊,ESP無線模塊也是采用串口方式通訊。此次分享就上報到這里吧,后續(xù)有新的進展再更新出來,謝謝。
附上參考的工程源碼 : SmartLockDetector.zip (1.35 MB)