mirror of
https://gitee.com/seekfree/TC264_Library.git
synced 2026-06-04 03:32:56 +00:00
修改多核心同步函数,取消信号量控制方式
This commit is contained in:
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -37,12 +37,14 @@
|
||||
#include "Ifxstm.h"
|
||||
#include "Cpu0_Main.h"
|
||||
#include "Cpu/Std/IfxCpu.h"
|
||||
#include "zf_driver_delay.h"
|
||||
#include "zf_common_interrupt.h"
|
||||
#include "zf_common_clock.h"
|
||||
|
||||
|
||||
App_Cpu0 g_AppCpu0; // Ƶ<><C6B5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0; // <20>¼<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
static uint8 cpu_init_finsh[IfxCpu_Id_none]; // <20><><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>־λ
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϵͳƵ<CDB3><C6B5>
|
||||
@@ -106,8 +108,20 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
uint8 i;
|
||||
uint8 all_cpu_init_finsh;
|
||||
|
||||
// <20><><EFBFBD>ô˺<C3B4><CBBA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־λ<D6BE><CEBB>һ
|
||||
cpu_init_finsh[IfxCpu_getCoreId()] = 1;
|
||||
|
||||
// <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
do
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
all_cpu_init_finsh = 1;
|
||||
for(i = 0; i < IfxCpu_Id_none; i++)
|
||||
{
|
||||
all_cpu_init_finsh *= cpu_init_finsh[i];
|
||||
}
|
||||
system_delay_ms(1);
|
||||
}while(0 == all_cpu_init_finsh);
|
||||
}
|
||||
|
||||
@@ -106,6 +106,8 @@ void clock_init (void)
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void cpu_wait_event_ready (void)
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
IfxCpu_waitEvent(&g_cpuSyncEvent, 0xFFFF);
|
||||
while(IfxCpu_waitEvent(&g_cpuSyncEvent, 5))
|
||||
{
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user