Projet

Général

Profil

////////////////////////////////////////////////////////////////////////////////
//
// kernel.cfg : building file for MR308 Ver.4.00
//
// Generated by M3T-MR308 GUI Configurator at 2013/01/08 15:28:33
//
////////////////////////////////////////////////////////////////////////////////

// system definition
system{
stack_size = 256;
priority = 8;
system_IPL = 4;
message_pri = 1;
timeout = YES;
task_pause = YES;
tic_nume = 1;
tic_deno = 1;
};

// max definition
maxdefine{
max_task = 3;
max_flag = 3;
max_dtq = 2;
max_cyh = 1;
max_vdtq = 1;
};

// system clock definition
clock{
mpu_clock = 20.000000MHz;
timer = A0;
IPL = 3;
};

task[]{
entry_address = main();
name = ID_main;
stack_size = 512;
stack_section = stack;
priority = 8;
initial_start = ON;
exinf = 0x0;
};
task[]{
entry_address = periph_tx();
name = ID_periph_tx;
stack_size = 256;
stack_section = stack;
priority = 3;
initial_start = ON;
exinf = 0x0;
};
task[]{
entry_address = periph_rx();
name = ID_periph_rx;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address = avance_voiture();
name = id_avance;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};


task[]{
entry_address = ass_roue();
name = id_roue;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address =temps_course();
name = id_temps;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};


task[]{
entry_address = p_noire();
name = id_noire;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address = mes_aber();
name = id_aber;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address = appui();
name = id_appui;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};


task[]{
entry_address = asservissement_tourelle();
name = id_ass_t;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address = mode_de_course();
name = id_mode;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address = piste_verte_bleue();
name = id_piste_verte_bleue;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address = detection();
name = id_detec;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address = piste();
name = id_piste;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};


task[]{
entry_address = acquis_distance();
name = id_dist;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};


task[]{
entry_address = acqui_angle_t();
name = id_angle;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address = trou();
name = id_trou;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};


task[]{
entry_address = capteur();
name = id_capt;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};


task[]{
entry_address = envoie_comm_v();
name = id_comm_v;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};

task[]{
entry_address = arret_urgence();
name = id_arret;
stack_size = 256;
stack_section = stack;
priority = 2;
initial_start = OFF;
exinf = 0x0;
};



flag[]{
name = ev_bus_fin_tr;
initial_pattern = 0x0000;
wait_queue = TA_TFIFO;
clear_attribute = YES;
wait_multi = TA_WMUL;
};
flag[]{
name = ev_periph;
initial_pattern = 0x0000;
wait_queue = TA_TFIFO;
clear_attribute = NO;
wait_multi = TA_WMUL;
};
flag[]{
name = event;
initial_pattern = 0x0000;
wait_queue = TA_TFIFO;
clear_attribute = NO;
wait_multi = TA_WMUL;
};


dataqueue[]{
name = CanTx;
wait_queue = TA_TFIFO;
buffer_size = 8;
};
dataqueue[]{
name = CanRx;
wait_queue = TA_TFIFO;
buffer_size = 4;
};




cyclic_hand[]{
entry_address = acqui();
name = ID_acqui;
exinf = 0x0;
start = OFF;
phsatr = OFF;
interval_counter = 0x64;
phs_counter = 0x0;
};


vdataqueue[]{
name = QdmTouche;
wait_queue = TA_TFIFO;
buffer_size = 16;
};

interrupt_vector[8]{
os_int = YES;
entry_address = uart0_dma0_tr_OK();
pragma_switch = ;
};
interrupt_vector[17]{
os_int = YES;
entry_address = uart0_itx_ok();
pragma_switch = ;
};
interrupt_vector[18]{
os_int = YES;
entry_address = uart0_irx();
pragma_switch = ;
};
interrupt_vector[21]{
os_int = YES;
entry_address = mesure();
pragma_switch = ;
};
interrupt_vector[43]{
os_int = YES;
entry_address = itouche();
pragma_switch = ;
};



//
// End of Configuration
//
(23-23/26)