一. 前言
二. 數據資料儲存規劃之設計
1. 數據資料儲存種類及所需空間大小介紹
① 系統數據儲存區塊 :
存放系統運作資料,包含預設語言、音量、密碼、卡片使用容量.. 等。
規劃空間為 1 Page ( 512 Byte )
② 密碼 (管理員、使用者) 儲存區塊 :
存放密碼資料,每筆密碼為 16Byte ( 13個字元密碼 ),存放 100筆。
規劃空間為 4 Page ( 2K Byte )
③ RFID 卡片數據儲存區塊 :
存放 RFID 卡片數據資料,每筆密碼為 16Byte,存放 100筆。
規劃空間為 4 Page ( 2K Byte )
④ 指紋辨識數據儲存區塊 :
存放指紋辨識數據資料,每筆密碼為 2KByte,存放 100筆。
規劃空間為 400 Page ( 200K Byte )
2. 數據資料儲存設計
由上得知,數據資料所需儲存容量約為 205KB,加上系統運行程序代碼約為 100KB。
所以挑選 MCU 容量需大於 305KB。
本方案所使用 LPC55S69 芯片,Flash 容量為 640KB,
並支援 ARM TrustZone® enabled 功能,大大提升數據資料安全性,
其中尚餘有 300KB 以上,可保留後續進行更多應用之擴充。
產品的設計,可依照實際需求規格,挑選更加合適儲存容量芯片:
3. 數據資料儲存區域規劃
本文主要介紹以 NXP LPC55S69 平台開發的 E-Lock 方案之數據資料儲存設計說明。
許多電子產品,都會有儲存參數、數據紀錄 .. 等使用情況發生。在儲存方面會有各種需求考量,如安全性、儲存空間大小、芯片體積 .. 等。
此方案資料、數據是採用 MCU 內部 Flash 一塊獨立空間來進行資料儲存使用,符合上述之優點。
二. 數據資料儲存規劃之設計
1. 數據資料儲存種類及所需空間大小介紹
① 系統數據儲存區塊 :
存放系統運作資料,包含預設語言、音量、密碼、卡片使用容量.. 等。
規劃空間為 1 Page ( 512 Byte )
② 密碼 (管理員、使用者) 儲存區塊 :
存放密碼資料,每筆密碼為 16Byte ( 13個字元密碼 ),存放 100筆。
規劃空間為 4 Page ( 2K Byte )
③ RFID 卡片數據儲存區塊 :
存放 RFID 卡片數據資料,每筆密碼為 16Byte,存放 100筆。
規劃空間為 4 Page ( 2K Byte )
④ 指紋辨識數據儲存區塊 :
存放指紋辨識數據資料,每筆密碼為 2KByte,存放 100筆。
規劃空間為 400 Page ( 200K Byte )
2. 數據資料儲存設計
由上得知,數據資料所需儲存容量約為 205KB,加上系統運行程序代碼約為 100KB。
所以挑選 MCU 容量需大於 305KB。
本方案所使用 LPC55S69 芯片,Flash 容量為 640KB,
並支援 ARM TrustZone® enabled 功能,大大提升數據資料安全性,
其中尚餘有 300KB 以上,可保留後續進行更多應用之擴充。
產品的設計,可依照實際需求規格,挑選更加合適儲存容量芯片:
3. 數據資料儲存區域規劃
依需求可在 apiFlash.h 進行區域大小調整配置
三. 數據資料儲存軟體 API 使用說明
1. MCU Flash Driver API 使用說明
IAP_Flash_Init (…); : Flash 存取初始化設定
IAP_Flash_Read (…); : 讀取 Flash 一個 Page (512B) 資料
IAP_Flash_Write (…); : 寫入 Flash 一個 Page (512B) 資料
IAP_Flash_Erase (…); : 清除 Flash 指定區域,在寫入之前必需進行
verify_status(…); : 確認 Flash 運行狀態
2. 系統數據存取 API 使用說明
System_Record_Read(&SysCfg); : 讀取系統配置數據
System_Record_Write(&SysCfg); : 寫入系統配置數據
3. 密碼數據存取 API 使用說明
flash_write_password(…); : 將密碼儲存至 Flash
PasswordVer(…); : 確認輸入密碼,是否正確
password_delete_all(…); : 清除全部密碼
password_delete(…); : 清除單一個密碼
4. RFID 卡片數據存取 API 使用說明
NFC_WritePassword (…); : 將 RFID 卡片數據儲存至 Flash
NFC_PasswordVerify (…); : 確認 RFID 卡片數據,是否正確
NFC_password_delete_all (…); : 清除全部 RFID 卡片數據
NFC_password_delete(…); : 清除單一個 RFID 卡片數據
四. 參考資料
① NXP 官網 : https://www.nxp.com/
② NXP LPC55S69 Doc ( Datasheet、User manual )
③ NXP MCUXpresso SDK API Reference Manual