?1.?系統設備識別寄存器(SCM)
7個位域。?記錄設備信息。Z20K11x[FAM_ID:Z20K/Z20M,SUBF_ID:1/3,SER_ID:1/4]+特征ID+版本號+FLASH存儲器大小+封裝類型。
1-1?
SYSCTRL_DeviceId_t SYSCTRL_GetDeviceId(void)
讀取設備信息。
2.獨一ID號寄存器(SCM)
4個該寄存器存儲完整的ID號(n=0~3),共128位。?
2-1?
void SYSCTRL_Get128BitUniqueId(uint32_t uniqueId[])
讀取ID號。
3.PARCC相關寄存器(PARCC)
不同模塊的PARCC位域不同,平均10個位域。通過輸入的mod對PARCC的指針進行偏移,指向對應模塊的PARCC寄存器, 模塊=存儲器+外設。?
3-1?
void SYSCTRL_ResetModule(SYSCTRL_Module_t mod)
模塊復位。1個位域。配置對應PRSTB位域先邏輯0后邏輯1完成一次復位。
3-2
void SYSCTRL_EnableModule(SYSCTRL_Module_t mod)
模塊使能并在停止模式依舊使能。2個位域。配置對應PCKMD為1使能模塊時鐘,再將PRSTB置高電平。?
3-3
void SYSCTRL_EnableModuleWithOffInStopMode(SYSCTRL_Module_t mod)
?模塊使能但在停止模式失能。2個位域。配置對應PCKMD為2使能模塊時鐘,再將PRSTB置高電平。?
3-4
void SYSCTRL_DisableModule(SYSCTRL_Module_t mod)
?模塊失能。2個位域。配置對應PCKMD為0失能模塊時鐘,再將PRSTB置低電平。??
3-5
void SYSCTRL_ModuleWriteControl(SYSCTRL_Module_t mod, ControlState_t writeLock,ControlState_t supervisorEn)
模塊相關的寄存器寫入鎖定和管理模式下外設訪問使能。2個位域。
4.運行內存錯誤校正選項寄存器(SCM)
8個位域。2個運行內存。每4個配置運行內存的ECC的寫使能、讀使能、單位使能、多位使能。
4-1
void SYSCTRL_SramEccConfig(SYSCTRL_Sram_t sram, const SYSCTRL_SramEcc_t *eccConfig)
選擇運行內存進行完全配置。?共8個位域。
5.運行內存0/1錯誤校正狀態寄存器
各7個位域。分別對應運存0和1的ECC的信息?。
5-1?
FlagStatus_t SYSCTRL_GetSramEccErrStatus(SYSCTRL_Sram_t sram, uint32_t errMask)
根據參數2判斷對應錯誤類型是否發生。?范圍整個寄存器。
5-2
void SYSCTRL_ClearSramEccErrStatus(SYSCTRL_Sram_t sram, uint32_t errMask)
根據參數2清除對應錯誤類型。?范圍整個寄存器。??
5-3?
void SYSCTRL_GetSramEccErrCause(SYSCTRL_Sram_t sram, SYSCTRL_SramEccErrCause_t *cause)
根據參數2在寄存器5批量判斷哪些錯誤類型發生,在寄存器6中同時讀取錯誤的位置和數據。范圍整個5寄存器和6寄存器。
6.運行內存0/1ECC錯誤數據/地址寄存器
?都是一個位域,當運行內存產生錯誤時FADDR記錄錯誤地址,FDATA記錄錯誤數據。
6-1?
void SYSCTRL_GetSramEccErrCause(SYSCTRL_Sram_t sram, SYSCTRL_SramEccErrCause_t *cause)
即5-3.根據參數2在寄存器5批量判斷哪些錯誤類型發生,在寄存器6中同時讀取錯誤的位置和數據。范圍整個5寄存器和6寄存器。
7.系統其他項控制寄存器
1個位域,4位。第1位使觸發復用單元(TMU)能進行軟件觸發。后三位區分觸發源號數和觸發方式。如第二位為1,則是高電平觸發并為源0。或第三位為0,則源1并是低電平觸發。?
7-1?
void SYSCTRL_SoftTriggerToTmu(SYSCTRL_TriggerSrc_t source, SYSCTRL_TriggerLevel_t level)
?設置軟件的觸發源號數和其高低電平觸發方式。