/* * Модель ответов TMS для эмулятора контроллера. Синтетические аналоговые и дискретные значения * упаковываются в ожидаемый формат терминала, чтобы проверять клиент без подключения рабочего * контроллера. */ #ifndef SET_EMU_TMS_H #define SET_EMU_TMS_H #include "set_regmap.h" #ifdef __cplusplus extern "C" { #endif #define SET_TMS_WORDS 80u typedef struct { uint8_t controls[6], running; uint16_t commands[10], divider; int32_t frequency, target; } set_tms_emu; PCAN_ABI_API void set_tms_init(set_tms_emu *); PCAN_ABI_API void set_tms_tick(set_tms_emu *); PCAN_ABI_API unsigned set_tms_read(void *,uint16_t,uint16_t,uint16_t *); PCAN_ABI_API unsigned set_tms_write(void *,uint16_t,uint16_t); PCAN_ABI_API size_t set_tms_rtu(set_tms_emu *,unsigned device,const uint8_t *, size_t,uint8_t *,size_t); #ifdef __cplusplus } #endif #endif