matlab_23550/Inu/Src/main/log_to_mem.h

120 lines
2.8 KiB
C

/****************************************************************/
/* TMS320C32 */
/* ====== BIOS, ÊËÀÈÍ, ÊËÂÑÏ ====== */
/* ÖÍÈÈ ÑÝÒ (ñ) 1998-2001ã. */
/****************************************************************/
/* log_to_mem.h
****************************************************************
* Çàïèñü ëîãîâ â ïàìyòü *
****************************************************************/
#ifndef _LOG_TO_MEM
#define _LOG_TO_MEM
#define SLOW_LOG 1
#define FAST_LOG 0
#ifdef __cplusplus
extern "C" {
#endif
typedef struct
{
int stop_log_level_1;
int stop_log_level_2;
int stop_log_level_3;
int stop_log_slow_level_1;
int stop_log_slow_level_2;
int stop_log_slow_level_3;
int log1;
int log2;
int log3;
int log4;
int log5;
int log6;
int log7;
int log8;
int log9;
int log10;
int log11;
int log12;
int log13;
int log14;
int log15;
int log16;
int log17;
int log18;
int log19;
int log20;
long addres_mem; //Àäðåñ ïàìyòè äëy çàïèñè ëîãîâ
int count_log_params_fast_log; //Êîëè÷åñòâî çàïèñûâàåìûõ â ëîã ïàðàìåòðîâ
int start_write_fast_log; //Íà÷àëî çàïèñè ëîãà, äëÿ îïðåäåëåíèÿ count_log_params_fast_log
long real_finish_addres_mem; //Àäðåñ ïàìyòè äëy çàïèñè ëîãîâ
} LOGSPARAMS;
#define LOGSPARAMS_DEFAULTS { 0,0,0,0,0,0,0,0, \
0,0,0,0,0,0,0,0, \
0,0,0,0,0,0,0,0, \
0,0,0,0,0,0 }
/* Îïðåäåëåíèy äëy ðàáîòû ëîããåðà */
#define START_ADDRESS_LOG 0x0a0000
#define END_ADDRESS_LOG 0x0bf000
//#define START_ADDRESS_LOG 0xa0000 /* 0x904000 */
//#define END_ADDRESS_LOG 0x0cf000 /* 0x90a000 */
#define END_ADDRESS_LOG_LEVEL_2 0xa8000
#define END_ADDRESS_LOG_LEVEL_3 0xb0000
#define START_ADDRESS_LOG_SLOW 0x0d0000 /* 0x904000 */
#define END_ADDRESS_LOG_SLOW 0x0ef000 /* 0x90a000 */
#define END_ADDRESS_LOG_SLOW_LEVEL_2 0xdb000
#define END_ADDRESS_LOG_SLOW_LEVEL_3 0xe5000
#define LENGTH_HAZARD 100
#define COUNT_SAVE_LOG_OFF 500
/* íå ïðîâîäèòü ðîòàöèþ ëîãîâ */
#define NO_ROTATE_LOG 0
extern int no_write; // Ôëàã, ÷òîáû íå ïèñàòü (åñëè ÷òî)
extern int stop_log; // Ëîãè îñòàíîâèëèñü
/* Çàïèñü äâóõ ìëàäøèõ áàéòîâ àðãóìåíòà â ïàìyòü, ãäå ëîãè ëåæàò */
void write_to_mem(int tlog,int DataM);
void write_to_mem_a(int DataM);
void start_write_acp(int Data1, int Data2, int Data3, int Data4, int Data5);
/* Ïðîâåðêà ãðàíèöû ïàìyòè äëy ëîãîâ */
void test_mem_limit(int tlog,int ciclelog);
void test_mem_limit_a(void);
void set_start_mem(int tlog);
void get_log_params_count(void);
/* Î÷èñòêà ïàìyòè (îáíóëåíèå) */
void clear_mem(int tlog);
//Î÷èñòêà ïîëåé logpar.logNN
void clear_logpar();
extern LOGSPARAMS logpar;
#ifdef __cplusplus
}
#endif
#endif /* _LOG_TO_MEM */