【 E-Lock NXP LPC55 】 系統解析(2) – 數據資料儲存之設計

一. 前言

        本文主要介紹以 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 

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★博文作者未開放評論功能