84 lines
2.5 KiB
C
84 lines
2.5 KiB
C
/*!
|
||
Copyright 2017 АО "НИИЭТ" и ООО "НПФ ВЕКТОР"
|
||
|
||
Licensed under the Apache License, Version 2.0 (the "License");
|
||
you may not use this file except in compliance with the License.
|
||
You may obtain a copy of the License at
|
||
|
||
http://www.apache.org/licenses/LICENSE-2.0
|
||
|
||
Unless required by applicable law or agreed to in writing, software
|
||
distributed under the License is distributed on an "AS IS" BASIS,
|
||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
See the License for the specific language governing permissions and
|
||
limitations under the License.
|
||
|
||
\file DRV_INTERFACE.h
|
||
\brief Через данные модуль обеспечиваетсЯ работа с банком аварий (чтение, очистка).
|
||
//ПредполагаетсЯ, что модуль может расширЯть функциональность (скачивать каие-то другие данные)...
|
||
//ПРИМЕЧАНИЕ для программиста:
|
||
1.для команд работающих по сети с автоматизированными системами (Юникон,, пульты и т.д.) после выполнения команды поле ans_data должно быть установлено значением запроса:
|
||
p->ans_data = temp;
|
||
что сообщит внешней системе, что запрос обработан. В этом случае поле p->ans_data обнуляется внешней автоматизированной системой после сбора информации с полей
|
||
p->data_Low
|
||
p->data_High
|
||
2.для внутренних вызовов поле p->ans_data трогать не нужно
|
||
\author ООО "НПФ Вектор". http://motorcontrol.ru
|
||
\version v 2.1 2017_07_24
|
||
|
||
*/
|
||
// пример использованиЯ в модуле main
|
||
#ifndef DRV_INTERFACE_H
|
||
#define DRV_INTERFACE_H
|
||
|
||
#ifdef __cplusplus
|
||
extern "C"
|
||
{
|
||
#endif
|
||
|
||
#define DRV_INTERFACE_RESET_TIME 10 //выдержка в сек перед обнулением параметра Ans_Data
|
||
|
||
//!запрос на чтение аварии
|
||
#define DATA_REQUEST_READ_FAULT 1
|
||
//!запрос на запись аварии
|
||
#define DATA_REQUEST_WRITE_FAULT 2
|
||
//!запрос на запись рабочего времени
|
||
#define DATA_REQUEST_WRITE_WORK_TIME 3
|
||
//!запрос на чтение рабочего времени
|
||
#define DATA_REQUEST_READ_WORK_TIME 4
|
||
#define DATA_REQUEST_WRITE_OPER_TIME 5
|
||
//!запрос на чтение времени во включенном состоЯнии
|
||
#define DATA_REQUEST_READ_OPER_TIME 6
|
||
//!очистка всего
|
||
#define DATA_REQUEST_CLEAR_ALL 10
|
||
|
||
|
||
struct SDrvInterface
|
||
{
|
||
long req_data;
|
||
long ans_data;
|
||
long data_High;
|
||
long data_Low;
|
||
|
||
long INTERFACE_time_sec;//!<
|
||
long INTERFACE_delta_time_sec;//!<
|
||
void (*calc)(struct SDrvInterface*);
|
||
};
|
||
|
||
typedef struct SDrvInterface TDrvInterface;
|
||
|
||
#define DRV_INTERFACE_DEFAULTS {0,0,0,0,\
|
||
0,0,\
|
||
DRV_INTERFACE_Calc,\
|
||
}
|
||
|
||
void DRV_INTERFACE_Calc(TDrvInterface*);
|
||
|
||
#ifdef __cplusplus
|
||
}
|
||
#endif
|
||
|
||
#endif
|
||
|
||
|