新增数据访问溢出断言接管,修复部分错误

This commit is contained in:
SEEKFREE_BUDING
2022-12-16 17:54:46 +08:00
parent 18883a9dfc
commit 4927eab76e
45 changed files with 195 additions and 90 deletions

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------

View File

@@ -132,6 +132,7 @@ void IfxCpu_Trap_memoryManagementError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_memoryManagement, tin);
IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch); IFX_CFG_CPU_TRAP_MME_HOOK(trapWatch);
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -143,6 +144,9 @@ void IfxCpu_Trap_internalProtectionError(uint32 tin)
volatile IfxCpu_Trap trapWatch; volatile IfxCpu_Trap trapWatch;
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_internalProtection, tin);
IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_IPE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFA3AC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>˿յ<CBBF><D5B5>ڴ<EFBFBD>λ<EFBFBD>ã<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>dz<EFBFBD>˵<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>Խ<EFBFBD><D4BD>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */
__asm("rfe"); __asm("rfe");
@@ -177,8 +181,9 @@ void IfxCpu_Trap_busError(uint32 tin)
trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin); trapWatch = IfxCpu_Trap_extractTrapInfo(IfxCpu_Trap_Class_bus, tin);
IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch); IFX_CFG_CPU_TRAP_BE_HOOK(trapWatch);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դû<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
// <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> // <20>ٸ<EFBFBD><D9B8><EFBFBD><EFBFBD>ӣ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>pwm_init<69><74>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>pwm_set_duty<74><79><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
// Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڴ<EFBFBD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĵط<C4B5>
IFX_CFG_CPU_TRAP_DEBUG; IFX_CFG_CPU_TRAP_DEBUG;
__asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */ __asm("rslcx"); /* Restore lower context before returning. lower context was stored in the trap vector */

View File

@@ -68,11 +68,13 @@
#define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #define zf_log(x, str) (debug_log_handler((x), (str), __FILE__, __LINE__)) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD>
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> // <20><>ע<EFBFBD><D7A2>Ϣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>log<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
#define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Some peripherals are not initialized"); while(1); #define IFX_CFG_CPU_TRAP_BE_HOOK(x) zf_log(0, "Memory access failure or Use an uninitialized peripheral, please check"); while(1);
#define IFX_CFG_CPU_TRAP_IPE_HOOK(x) zf_log(0, "Accessing an null address, array access may be out of bounds, please check"); while(1);
typedef struct typedef struct
{ {

View File

@@ -62,7 +62,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_ms<6D><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>ms) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_ms_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5ms
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
@@ -70,7 +70,7 @@ void pit_init (pit_index_enum pit_index, uint32 time);
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC> // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> pit_us<75><73>ʼ<EFBFBD><CABC>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3> // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> pit_index ѡ<><D1A1>CCU6ģ<36><C4A3>
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) // <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> time <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>΢<EFBFBD><EFBFBD>)
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void // <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
// ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us // ʹ<><CAB9>ʾ<EFBFBD><CABE> pit_us_init(CCU60_CH0, 5); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>5us
//------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------