/****************************************************************/ /* TMS320C32 */ /* ====== BIOS, КЛАИН, КЛВСП ====== */ /* ЦНИИ СЭТ (с) 1998-2001г. */ /****************************************************************/ /* log_to_mem.h **************************************************************** * Запись логов в памyть * ****************************************************************/ #ifndef _LOG_TO_MEM #define _LOG_TO_MEM #ifdef __cplusplus extern "C" { #endif #define SIZE_LOGS_ARRAY 92 #define INIT_LOG 3 //#define ERR_LOG 2 //#define ALARM_SAVE_MEMORY 1 #define FAST_LOG 0 #define SLOW_LOG 4 #define ALL_LOG 5 typedef struct { // int copy_log_to_const_memory; // //// int start_write_fast_log; //Начало записи лога, для определения count_log_params_fast_log //// int count_log_params_fast_log; //Количество записываемых в лог параметров // // int block_size_counter_fast; // int block_size_counter_slow; // int block_size_fast; int block_size_slow; int logs[SIZE_LOGS_ARRAY]; } LOGSDATA; //extern int LOAG[]; #define LOGSDATA_DEFAULT {0,0, {0} } /* не проводить ротацию логов */ #define NO_ROTATE_LOG 0 //extern int no_write; // Флаг, чтобы не писать (если что) //extern int stop_log; // Логи остановились //extern int Fast_log_written; //FAST LOG записан //extern int block_size_counter_slow; //extern int block_size_counter_fast; //extern int block_size_counter;// размер блока //extern int size_fast_done; //extern int size_slow_done; /* Запись двух младших байтов аргумента в памyть, где логи лежат */ void write_to_mem(int tlog,int DataM); void write_to_mem_a(int DataM); /* Проверка границы памyти длy логов */ void test_mem_limit(int tlog,int ciclelog); void set_start_mem(int tlog); /* Очистка памyти (обнуление) */ void clear_mem(int tlog); void clear_mem_all(void); void getFastLogs(int cicleLog); void getSlowLogs(int cicleLog); //Сохранение логов в незатираемую при работе часть памяти void copyLogsToSaveArea(void); //Сохранение с разворачиванием кольца. //Запись по времени начинается в начале участка памяти и заканчивается в конце. void copyLogsToSaveAreaUnrolled(void); void clear_logpar(void); extern LOGSDATA logsdata; #ifdef __cplusplus } #endif #endif /* _LOG_TO_MEM */