Files
templates/c/set-protocol/include/protocan_transport.h
T
Andrey 876b58517c feat(set-protocol): Раздели GAS и добавь пакетный сбор регистров
Сохрани адресацию отдельных регистров GAS 0x3 и выдели слотам тип 0x4 с маской Word0. Добавь единое C-ядро GAS_WATCH2, тонкие Python/JNI-порты и проверки общих эталонных байтов.

Совместимость: тип 0x4 больше не обслуживает Modbus Coil. Потребителям PCAN_MSG_MODBUS_COIL и ProtoCanMsgToModbusCoil нужно перейти на GAS_SLOT и отдельный API слотов; регистровый GAS остаётся на 0x3.
2026-10-23 14:14:48 +03:00

37 lines
1.6 KiB
C

/*
* Общий заголовок подключения библиотеки протокола. Он собирает публичные определения в одной
* точке; конкретные контракты кадров, буферов и кодов ошибок описаны в подключаемых
* специализированных заголовках.
*/
/**
* @file protocan_transport.h
* @brief Зонтичный заголовок библиотеки. Достаточно подключить его одного.
*
* Библиотека переносимая: C99, без динамической памяти, без ОС,
* без зависимостей от HAL и от конкретного МК. Платформа подключается
* через pcan_io_t (см. pcan_link.h) и примеры в ports/.
*/
#ifndef PROTOCAN_TRANSPORT_H
#define PROTOCAN_TRANSPORT_H
#define PCAN_VERSION_MAJOR 1
#define PCAN_VERSION_MINOR 0
#define PCAN_VERSION_PATCH 0
#define PCAN_VERSION_U16 ((PCAN_VERSION_MAJOR << 8) | \
(PCAN_VERSION_MINOR << 4) | \
PCAN_VERSION_PATCH)
#include "pcan_config.h"
#include "pcan_abi.h"
#include "pcan_crc.h"
#include "pcan_frame.h"
#include "pcan_gas.h"
#include "pcan_gas_slot.h" /* Слотный тип 0x4 имеет маску Word0 и собственный обработчик, регистровый GAS 0x3 сохраняет отдельные адреса слов. */
#include "pcan_id.h"
#include "pcan_link.h"
#include "pcan_modbus_server.h"
#include "pcan_ring.h"
#endif /* PROTOCAN_TRANSPORT_H */