matlab_23550/Inu/Src/N12_Xilinx/xp_cds_status_bus.h
Razvalyaev 7e0063eee0 #3 Скомпилилось, но пока ничего не вызывается
Все основные файлы подтянуты без изменений

Изменены (только папка main_matlab):
- заглушки для ненужных функций (main_matlab.c)
- iq библиотека (IQmathLib_matlab.c)
- библиотеки DSP281x
2025-01-13 11:09:58 +03:00

96 lines
3.0 KiB
C

#ifndef XP_CDS_STATUS_BUS_H
#define XP_CDS_STATUS_BUS_H
#include "x_basic_types.h"
#define ITS_WRITE_BUS 0
#define ITS_READ_BUS 1
#define TYPE_CDS_XILINX_NOT_INITED -1
#define TYPE_CDS_XILINX_SP2 0
#define TYPE_CDS_XILINX_SP6 1
#define MAX_WRITE_ERROR_SBUS_DEFAULT 1 // êîëè÷åñòâî ïîâòîðíûõ îïåðàöèé äî âîçíèêíîâåíèß îøèáêè - ñíßòèå Ready
#define MAX_READ_ERROR_SBUS_DEFAULT 1 // êîëè÷åñòâî ïîâòîðíûõ îïåðàöèé äî âîçíèêíîâåíèß îøèáêè - ñíßòèå Ready
#define MAX_WRITE_ERROR_PBUS_DEFAULT 1 // êîëè÷åñòâî ïîâòîðíûõ îïåðàöèé äî âîçíèêíîâåíèß îøèáêè - ñíßòèå Ready
#define MAX_READ_ERROR_PBUS_DEFAULT 1 // êîëè÷åñòâî ïîâòîðíûõ îïåðàöèé äî âîçíèêíîâåíèß îøèáêè - ñíßòèå Ready
#define MAX_WRITE_ERROR_HWPBUS_DEFAULT 1 // êîëè÷åñòâî ïîâòîðíûõ îïåðàöèé äî âîçíèêíîâåíèß îøèáêè - ñíßòèå Ready
#define MAX_READ_ERROR_HWPBUS_DEFAULT 1 // êîëè÷åñòâî ïîâòîðíûõ îïåðàöèé äî âîçíèêíîâåíèß îøèáêè - ñíßòèå Ready
#define T_cds_status_serial_bus_DEFAULT {0,0,0,0,0,0,0,MAX_WRITE_ERROR_SBUS_DEFAULT,MAX_READ_ERROR_SBUS_DEFAULT}
#define T_cds_status_parallel_bus_DEFAULT {0,0,0,0,0,0,0,MAX_WRITE_ERROR_PBUS_DEFAULT,MAX_READ_ERROR_PBUS_DEFAULT}
#define T_cds_status_hwp_bus_DEFAULT {0,0,0,0,0,0,0,MAX_WRITE_ERROR_HWPBUS_DEFAULT,MAX_READ_ERROR_HWPBUS_DEFAULT}
/*-----------------------------------------------------------------------------
Define the types
-----------------------------------------------------------------------------*/
typedef struct {
UInt16 status;
UInt16 count_read_ok;
UInt16 count_write_ok;
UInt16 count_read_error;
UInt16 count_write_error;
UInt16 cur_read_error;
UInt16 cur_write_error;
UInt16 max_write_error;
UInt16 max_read_error;
} T_cds_status_serial_bus;
typedef struct {
UInt16 status;
UInt16 count_read_ok;
UInt16 count_write_ok;
UInt16 count_read_error;
UInt16 count_write_error;
UInt16 cur_read_error;
UInt16 cur_write_error;
UInt16 max_write_error;
UInt16 max_read_error;
} T_cds_status_parallel_bus;
typedef struct {
UInt16 status;
UInt16 count_read_ok;
UInt16 count_write_ok;
UInt16 count_read_error;
UInt16 count_write_error;
UInt16 cur_read_error;
UInt16 cur_write_error;
UInt16 max_write_error;
UInt16 max_read_error;
} T_cds_status_hwp_bus;
typedef struct {
UInt16 type_xilinx;
} T_cds_type_xilinx;
#define TYPE_CDS_XILINX_DEFAULTS TYPE_CDS_XILINX_NOT_INITED
#define TYPE_IN_1_2_DEFAULTS TYPE_IN_1_2_NOT_INITED
void clear_stat_sbus(T_cds_status_serial_bus *v);
void clear_stat_pbus(T_cds_status_parallel_bus *v);
void clear_stat_hwpbus(T_cds_status_hwp_bus *v);
void clear_cur_stat_sbus(T_cds_status_serial_bus *v);
void clear_cur_stat_pbus(T_cds_status_parallel_bus *v);
void clear_cur_stat_hwpbus(T_cds_status_hwp_bus *v);
int check_cds_ready_sbus(int err, int wr_rd, T_cds_status_serial_bus *v);
int check_cds_ready_pbus(int err, int wr_rd, T_cds_status_parallel_bus *v);
int check_cds_ready_hwpbus(int err, int wr_rd, T_cds_status_hwp_bus *v);
void set_status_cds(int err_ready, T_component_status *ss);
#endif