\doxysection{modbus\+\_\+core.\+h}
\hypertarget{modbus__core_8h_source}{}\label{modbus__core_8h_source}\index{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Inc/modbus\_core.h@{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Inc/modbus\_core.h}}
\mbox{\hyperlink{modbus__core_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00001}00001\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00002}00002\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00003}00003\ \textcolor{comment}{*\ @file\ modbus\_core.h}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Ядро\ Modbus\ протокола\ -\/\ определения\ и\ структуры}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00005}00005\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00006}00006\ \textcolor{comment}{@addtogroup\ MODBUS\_INTERNAL\ Modbus\ Internal\ Tools}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00007}00007\ \textcolor{comment}{@ingroup\ MODBUS}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00008}00008\ \textcolor{comment}{@brief\ Внутренние\ штуки\ библиотеки}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00009}00009\ \textcolor{comment}{@\{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00010}00010\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00011}00011\ \textcolor{comment}{*\ @details}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00012}00012\ \textcolor{comment}{Базовые\ определения\ для\ реализации\ Modbus\ RTU\ устройства:}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00013}00013\ \textcolor{comment}{-\/\ Структуры\ сообщений\ Modbus}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00014}00014\ \textcolor{comment}{Коды\ функций\ и\ исключений}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00015}00015\ \textcolor{comment}{Константы\ размеров\ полей}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00016}00016\ \textcolor{comment}{Вспомогательные\ макросы}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00017}00017\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00018}00018\ \textcolor{comment}{@section\ msg\ Структура\ сообщения:}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00019}00019\ \textcolor{comment}{[ADDR][FUNC][DATA...][CRC]}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00020}00020\ \textcolor{comment}{-\/\ Адрес:\ 1\ байт}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00021}00021\ \textcolor{comment}{-\/\ Функция:\ 1\ байт\ \ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00022}00022\ \textcolor{comment}{-\/\ Данные:\ переменной\ длины}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00023}00023\ \textcolor{comment}{-\/\ CRC:\ 2\ байта}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00024}00024\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00025}00025\ \textcolor{comment}{******************************************************************************/}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00026}00026\ \textcolor{preprocessor}{\#ifndef\ \_\_MODBUS\_CORE\_H\_}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00027}00027\ \textcolor{preprocessor}{\#define\ \_\_MODBUS\_CORE\_H\_}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00028}00028\ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00029}00029\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__config_8h}{modbus\_config.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00030}00030\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__data_8h}{modbus\_data.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00031}00031\ \textcolor{preprocessor}{\#include\ "{}\_\_crc\_algs.h"{}}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00032}00032\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{____modbus__compat_8h}{\_\_modbus\_compat.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00033}00033\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00034}00034\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00035}00035\ \textcolor{comment}{\ \ *\ @addtogroup\ MODBUS\_MESSAGE\_DEFINES\ Modbus\ Message\ Tools}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00036}00036\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ MODBUS}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00037}00037\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Определения\ протокола\ модбас}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00038}00038\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00039}00039\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00040}00040\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00041}00041\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00042}00042\ \textcolor{comment}{////////////////////-\/-\/-\/MODBUS\ MESSAGE\ DEFINES-\/-\/-\//////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00043}00043\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/DEFINES\ FOR\ STRUCTURE-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00044}00044\ \textcolor{comment}{/*\ defines\ for\ structure\ of\ modbus\ message\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00045}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gae135b86915da05ee9991ef1c50d3527f}{00045}}\ \textcolor{preprocessor}{\#define\ TransactionID\_size\ \ \ \ \ \ 2\ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ size\ of\ (Transaction\ ID)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00046}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga9d21532e66376b674c8bc7523d51350e}{00046}}\ \textcolor{preprocessor}{\#define\ ProtocolID\_size\ \ \ \ \ \ \ \ \ 2\ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ size\ of\ (Protocol\ ID)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00047}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga69ca2a9dbd269a5b39dd5d29a7601a12}{00047}}\ \textcolor{preprocessor}{\#define\ PDULength\_size\ \ \ \ \ \ \ \ \ \ 2\ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ size\ of\ (PDU\ Length)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00048}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga1be71951697002df6f3259ca41dc4853}{00048}}\ \textcolor{preprocessor}{\#define\ MbAddr\_SIZE\ \ \ \ \ \ \ \ \ \ \ \ \ 1\ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ size\ of\ (Slave\ Addr)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00049}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga3372a9da9b653cd351256d2e805a1b5b}{00049}}\ \textcolor{preprocessor}{\#define\ Func\_Code\_SIZE\ \ \ \ \ \ \ \ \ \ 1\ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ size\ of\ (Function\ Code)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00050}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gab4b8423205cc250a9f050f4fff252d5d}{00050}}\ \textcolor{preprocessor}{\#define\ Addr\_SIZE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 2\ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ size\ of\ (Address)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00051}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gab4ed36ca923f2c451475f233124f24c4}{00051}}\ \textcolor{preprocessor}{\#define\ Qnt\_SIZE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 2\ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ size\ of\ (Quantity)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00052}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga2141ab64ec40fd3e7bfaafcf02f1c81b}{00052}}\ \textcolor{preprocessor}{\#define\ ByteCnt\_SIZE\ \ \ \ \ \ \ \ \ \ \ \ 1\ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ size\ of\ (Byte\ Count)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00053}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gaf55149bc1f05cf18af067a302e31e3f9}{00053}}\ \textcolor{preprocessor}{\#define\ DATA\_SIZE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 125\ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ maximum\ number\ of\ data:\ DWORD\ (NOT\ MESSAGE\ SIZE)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00054}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gaa93e89217587fdff12bf43b5d7f54f74}{00054}}\ \textcolor{preprocessor}{\#define\ CRC\_SIZE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 2\ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ size\ of\ (MbCRC)\ in\ bytes}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00055}00055\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00056}00056\ \textcolor{preprocessor}{\#ifndef\ MODBUS\_PROTOCOL\_TCP}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00057}00057\ \textcolor{comment}{/**\ @brief\ Size\ of\ whole\ RTU\ message\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00058}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga600f4a134e94bc9ddf7a37d8f49cadcc}{00058}}\ \textcolor{preprocessor}{\#define\ INFO\_SIZE\_MAX\ \ \ \ \ \ \ \ \ \ \ (MbAddr\_SIZE+Func\_Code\_SIZE+Addr\_SIZE+Qnt\_SIZE+ByteCnt\_SIZE)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00059}00059\ \textcolor{preprocessor}{\#else}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00060}00060\ \textcolor{comment}{/**\ @brief\ Size\ of\ whole\ TCP\ message\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00061}00061\ \textcolor{preprocessor}{\#define\ INFO\_SIZE\_MAX\ \ \ \ \ \ \ \ \ \ \ (TransactionID\_size+ProtocolID\_size+PDULength\_size+MbAddr\_SIZE+Func\_Code\_SIZE+Addr\_SIZE+Qnt\_SIZE)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00062}00062\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00063}00063\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00064}00064\ \textcolor{comment}{/**\ @brief\ Size\ of\ first\ part\ of\ message\ that\ will\ be\ received}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00065}00065\ \textcolor{comment}{first\ receive\ info\ part\ of\ message,\ than\ defines\ size\ of\ rest\ message*/}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00066}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga18eb6d0d9fdb6274341e892e2b41d88b}{00066}}\ \textcolor{preprocessor}{\#define\ RX\_FIRST\_PART\_SIZE\ \ \ \ \ \ INFO\_SIZE\_MAX}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00067}00067\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00068}00068\ \textcolor{comment}{/**\ @brief\ Size\ of\ buffer:\ max\ size\ of\ whole\ message\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00069}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga7d1e9e8bb8f40ce788836da0739f897c}{00069}}\ \textcolor{preprocessor}{\#define\ MSG\_SIZE\_MAX\ \ \ \ \ \ \ \ \ \ \ \ (INFO\_SIZE\_MAX\ +\ DATA\_SIZE*2\ +\ CRC\_SIZE)\ }\textcolor{comment}{//\ max\ possible\ size\ of\ message}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00070}00070\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00071}00071\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00072}00072\ \textcolor{comment}{\ \ *\ @brief\ Enum\ for\ modbus\ exception\ codes\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00073}00073\ \textcolor{comment}{\ \ *\ @details\ Prefix\ ET\ for\ Error\ Type}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00074}00074\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00075}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga4ade64cb3fabf37f010c1e297489980c}{00075}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ \textcolor{comment}{//MB\_ExceptionTypeDef}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00076}00076\ \{}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00077}00077\ \ \ \textcolor{comment}{//\ reading}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00078}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980caa6980c7a8d924dd975b8fa06a300eb74}{00078}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980caa6980c7a8d924dd975b8fa06a300eb74}{ET\_NO\_ERRORS}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =\ 0x00,\ \ \ \textcolor{comment}{///<\ no\ errors}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00079}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980cae81af967ab54904738ee391eb7478ad1}{00079}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980cae81af967ab54904738ee391eb7478ad1}{ET\_ILLEGAL\_FUNCTION}}\ \ \ \ \ \ \ \ \ \ =\ 0x01,\ \ \ \textcolor{comment}{///<\ Принятый\ код\ функции\ не\ может\ быть\ обработан}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00080}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980caea312adaf18aa7ebd17aca8883550425}{00080}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980caea312adaf18aa7ebd17aca8883550425}{ET\_ILLEGAL\_DATA\_ADDRESS}}\ \ \ \ \ \ =\ 0x02,\ \ \ \textcolor{comment}{///<\ Адрес\ данных,\ указанный\ в\ запросе,\ недоступен}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00081}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980ca47d6168d0692ccb7e09e19084287aba3}{00081}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980ca47d6168d0692ccb7e09e19084287aba3}{ET\_ILLEGAL\_DATA\_VALUE}}\ \ \ \ \ \ \ \ =\ 0x03,\ \ \ \textcolor{comment}{///<\ Значение,\ содержащееся\ в\ поле\ данных\ запроса,\ является\ недопустимой\ величиной}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00082}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980cacae4572933c1b43491d452f912341277}{00082}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga4ade64cb3fabf37f010c1e297489980cacae4572933c1b43491d452f912341277}{ET\_SLAVE\_DEVICE\_FAILURE}}\ \ \ \ \ \ =\ 0x04,\ \ \ \textcolor{comment}{///<\ Невосстанавливаемая\ ошибка\ имела\ место,\ пока\ ведомое\ устройство\ пыталось\ выполнить\ затребованное\ действие}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00083}00083\ \textcolor{comment}{//\ \ ET\_ACKNOWLEDGE\ =\ \ \ \ \ \ \ \ \ \ \ 0x05,\ \ \ ///<\ idk}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00084}00084\ \textcolor{comment}{//\ \ ET\_SLAVE\_DEVICE\_BUSY\ =\ \ \ \ \ 0x06,\ \ \ ///<\ idk}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00085}00085\ \textcolor{comment}{//\ \ ET\_MEMORY\_PARITY\_ERROR\ =\ \ \ 0x08,\ \ \ ///<\ idk}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00086}00086\ \}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga4ade64cb3fabf37f010c1e297489980c}{MB\_ExceptionTypeDef}};}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00087}00087\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00088}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{00088}}\ \textcolor{preprocessor}{\#define\ FC\_ERR\_VALUES\_START\ \ \ \ \ \ \ \ 0x80U\ \ \ \ \ \ \ }\textcolor{comment}{///<\ from\ this\ value\ starts\ error\ func\ codes}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00089}00089\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00090}00090\ \textcolor{comment}{\ \ *\ @brief\ Enum\ for\ modbus\ func\ codes\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00091}00091\ \textcolor{comment}{\ \ *\ @details\ Prefix\ FC\ for\ Function\ Code}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00092}00092\ \textcolor{comment}{\ \ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00093}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga38d42495bf262b70048e6d6a7af175d2}{00093}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ \textcolor{comment}{//MB\_FunctonTypeDef}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00094}00094\ \{}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00095}00095\ \ \ \textcolor{comment}{/*\ COMMANDS\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00096}00096\ \ \ \textcolor{comment}{//\ reading}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00097}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a399bcd53bc32faca81bbc3d1ff8b5bb6}{00097}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a399bcd53bc32faca81bbc3d1ff8b5bb6}{FC\_R\_COILS}}\ \ \ \ \ \ \ \ \ \ \ \ =\ 0x01,\ \ \ \ \ \textcolor{comment}{///<\ Чтение\ битовых\ ячеек}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00098}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a438c348676901d3e0263fd1f8d94bf11}{00098}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a438c348676901d3e0263fd1f8d94bf11}{FC\_R\_DISC\_IN}}\ \ \ \ \ \ \ \ \ \ =\ 0x02,\ \ \ \ \ \textcolor{comment}{///<\ Чтение\ дискретных\ входов}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00099}00099\ \textcolor{preprocessor}{\#ifndef\ MODBUS\_SWITCH\_COMMAND\_R\_IN\_REGS\_AND\_R\_HOLD\_REGS}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00100}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2ae03921b16750ef290fdd7d19a08a29a2}{00100}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2ae03921b16750ef290fdd7d19a08a29a2}{FC\_R\_HOLD\_REGS}}\ \ \ \ \ \ \ \ =\ 0x03,\ \ \ \ \ \textcolor{comment}{///<\ Чтение\ входных\ регистров}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00101}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a76139e9b7ae78856fd3a297c9f751944}{00101}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a76139e9b7ae78856fd3a297c9f751944}{FC\_R\_IN\_REGS}}\ \ \ \ \ \ \ \ \ \ =\ 0x04,\ \ \ \ \ \textcolor{comment}{///<\ Чтение\ регистров\ хранения}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00102}00102\ \textcolor{preprocessor}{\#else}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00103}00103\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2ae03921b16750ef290fdd7d19a08a29a2}{FC\_R\_HOLD\_REGS}}\ \ \ \ \ \ \ \ =\ 0x04,\ \ \ \ \ \textcolor{comment}{///<\ Чтение\ входных\ регистров}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00104}00104\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a76139e9b7ae78856fd3a297c9f751944}{FC\_R\_IN\_REGS}}\ \ \ \ \ \ \ \ \ \ =\ 0x03,\ \ \ \ \ \textcolor{comment}{///<\ Чтение\ регистров\ хранения}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00105}00105\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00106}00106\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00107}00107\ \ \ \textcolor{comment}{//\ writting}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00108}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a832b94af2c427d0daae721da2528f44a}{00108}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a832b94af2c427d0daae721da2528f44a}{FC\_W\_COIL}}\ \ \ \ \ \ \ \ \ \ \ \ \ =\ 0x05,\ \ \ \ \ \textcolor{comment}{///<\ Запись\ битовой\ ячейки}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00109}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a1b66683f704ef9072329e997312e3b83}{00109}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a1b66683f704ef9072329e997312e3b83}{FC\_W\_HOLD\_REG}}\ \ \ \ \ \ \ \ \ =\ 0x06,\ \ \ \ \ \textcolor{comment}{///<\ Запись\ одиночного\ регистра}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00110}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a43a1b810697ea15ef91008dbc0187127}{00110}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a43a1b810697ea15ef91008dbc0187127}{FC\_W\_COILS}}\ \ \ \ \ \ \ \ \ \ \ \ =\ 0x0F,\ \ \ \ \ \textcolor{comment}{///<\ Запись\ нескольких\ битовых\ ячеек}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00111}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2affa24c54ee0b59e9810f1dbdc949e684}{00111}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2affa24c54ee0b59e9810f1dbdc949e684}{FC\_W\_HOLD\_REGS}}\ \ \ \ \ \ \ \ =\ 0x10,\ \ \ \ \ \textcolor{comment}{///<\ Запись\ нескольких\ регистров}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00112}00112\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00113}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2aa6423de9e908dc38ce9f1c8027ad72ec}{00113}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2aa6423de9e908dc38ce9f1c8027ad72ec}{FC\_R\_DIAGNOSTICS}}\ \ \ \ \ \ =\ 0x08,\ \ \ \ \ \textcolor{comment}{///<\ Чтение\ диагностической\ информации\ устройства}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00114}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a37ddf147e08b6d205319c31e6750d47c}{00114}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a37ddf147e08b6d205319c31e6750d47c}{FC\_R\_DEVICE\_ID}}\ \ \ \ \ \ \ \ =\ 0x2B,\ \ \ \ \ \textcolor{comment}{///<\ Чтение\ информации\ об\ устройстве}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00115}00115\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00116}00116\ \ \ \textcolor{comment}{/*\ ERRORS\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00117}00117\ \ \ \textcolor{comment}{//\ error\ reading}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00118}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a730c5f56799669c612945a55aa9494c4}{00118}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a730c5f56799669c612945a55aa9494c4}{FC\_ERR\_R\_COILS}}\ \ \ \ \ \ \ \ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a399bcd53bc32faca81bbc3d1ff8b5bb6}{FC\_R\_COILS}}\ \ \ \ \ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Ошибка\ чтения\ битовых\ ячеек}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00119}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a592aee113b711b5976ce914f727c9f77}{00119}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a592aee113b711b5976ce914f727c9f77}{FC\_ERR\_R\_DISC\_IN}}\ \ \ \ \ \ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a438c348676901d3e0263fd1f8d94bf11}{FC\_R\_DISC\_IN}}\ \ \ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \ \ \ \textcolor{comment}{///<\ Ошибка\ чтения\ дискретных\ входов}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00120}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2ad7f2601e81f84b15cc898c490e429dd5}{00120}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2ad7f2601e81f84b15cc898c490e429dd5}{FC\_ERR\_R\_IN\_REGS}}\ \ \ \ \ \ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a76139e9b7ae78856fd3a297c9f751944}{FC\_R\_IN\_REGS}}\ \ \ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \ \ \ \textcolor{comment}{///<\ Ошибка\ чтения\ регистров\ хранения}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00121}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2abe215454c122b35aa658a8c11b37a258}{00121}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2abe215454c122b35aa658a8c11b37a258}{FC\_ERR\_R\_HOLD\_REGS}}\ \ \ \ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2ae03921b16750ef290fdd7d19a08a29a2}{FC\_R\_HOLD\_REGS}}\ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \ \textcolor{comment}{///<\ Ошибка\ чтения\ входных\ регистров}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00122}00122\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00123}00123\ \ \ \textcolor{comment}{//\ error\ writting}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00124}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2abaa0b334409929c82ec44960d368114b}{00124}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2abaa0b334409929c82ec44960d368114b}{FC\_ERR\_W\_COIL}}\ \ \ \ \ \ \ \ \ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a832b94af2c427d0daae721da2528f44a}{FC\_W\_COIL}}\ \ \ \ \ \ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Ошибка\ записи\ битовой\ ячейки}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00125}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a21ba95630e4914c2706e8f48f6839e16}{00125}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a21ba95630e4914c2706e8f48f6839e16}{FC\_ERR\_W\_HOLD\_REG}}\ \ \ \ \ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a1b66683f704ef9072329e997312e3b83}{FC\_W\_HOLD\_REG}}\ \ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \ \ \textcolor{comment}{///<\ Ошибка\ записи\ одиночного\ регистра}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00126}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2af018f1e1deef493cfa1074583e421cc8}{00126}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2af018f1e1deef493cfa1074583e421cc8}{FC\_ERR\_W\_COILS}}\ \ \ \ \ \ \ \ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a43a1b810697ea15ef91008dbc0187127}{FC\_W\_COILS}}\ \ \ \ \ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Ошибка\ записи\ нескольких\ битовых\ ячеек}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00127}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a4de9a680cbe955bc5b30f4c497b06ff8}{00127}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a4de9a680cbe955bc5b30f4c497b06ff8}{FC\_ERR\_W\_HOLD\_REGS}}\ \ \ \ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2affa24c54ee0b59e9810f1dbdc949e684}{FC\_W\_HOLD\_REGS}}\ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \ \textcolor{comment}{///<\ Ошибка\ записи\ нескольких\ регистров}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00128}00128\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00129}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a8fd1f1aa92af4555bafd96c835ea473c}{00129}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a8fd1f1aa92af4555bafd96c835ea473c}{FC\_ERR\_R\_DIAGNOSTIC}}\ \ \ \ \ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2aa6423de9e908dc38ce9f1c8027ad72ec}{FC\_R\_DIAGNOSTICS}}\ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \textcolor{comment}{///<\ Ошибка\ чтения\ диагностической\ информации\ устройства}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00130}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a1577351173a660924f7bf33d4c2ec003}{00130}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a1577351173a660924f7bf33d4c2ec003}{MB\_FC\_ERR\_R\_DEVICE\_INFO}}\ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga38d42495bf262b70048e6d6a7af175d2a37ddf147e08b6d205319c31e6750d47c}{FC\_R\_DEVICE\_ID}}\ \ \ \ +\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga822b0fd9ae9ff25dfa6748473e8e8627}{FC\_ERR\_VALUES\_START}},\ \ \ \textcolor{comment}{///<\ Ошибка\ чтения\ информации\ об\ устройстве}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00131}00131\ \}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga38d42495bf262b70048e6d6a7af175d2}{MB\_FunctonTypeDef}};}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00132}00132\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00133}00133\ \textcolor{comment}{/**\ @brief\ Enum\ for\ MEI\ func\ codes\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00134}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gaeaafeacbd239428c7e59e40d2df16ae2}{00134}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ \textcolor{comment}{//MB\_FunctonTypeDef}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00135}00135\ \{}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00136}00136\ \ \ MEI\_DEVICE\_IDENTIFICATIONS\ =\ 0x0E,}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00137}00137\ \}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gaeaafeacbd239428c7e59e40d2df16ae2}{MB\_MEITypeDef}};}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00138}00138\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00139}00139\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00140}00140\ \textcolor{comment}{\ \ *\ @brief\ Enum\ for\ Read\ Device\ Id\ codes\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00141}00141\ \textcolor{comment}{\ \ *\ @details\ Prefix\ RID\ for\ Read\ ID}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00142}00142\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00143}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga63c3a2a3adb05f591399e2c4def7c14a}{00143}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ \textcolor{comment}{//MB\_FunctonTypeDef}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00144}00144\ \{}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00145}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga63c3a2a3adb05f591399e2c4def7c14aac792ca720b19c89783b70cdeba0c9248}{00145}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga63c3a2a3adb05f591399e2c4def7c14aac792ca720b19c89783b70cdeba0c9248}{RID\_BASIC\_IDENTIFICATIONS}}\ \ \ \ \ \ \ \ \ =\ 0x01,\ \ \ \textcolor{comment}{/*!<\ \ @brief\ Basic\ Device\ Identifications.\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00146}00146\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ @details\ All\ objects\ of\ this\ category\ are\ mandatory:\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00147}00147\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ VendorName,\ Product\ code,\ and\ revision\ number\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00148}00148\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00149}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga63c3a2a3adb05f591399e2c4def7c14aab930f13868df5243566759bbcf52a19d}{00149}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga63c3a2a3adb05f591399e2c4def7c14aab930f13868df5243566759bbcf52a19d}{RID\_REGULAR\_IDENTIFICATIONS}}\ \ \ \ \ \ \ =\ 0x02,\ \ \ \textcolor{comment}{/*!<\ \ @brief\ Regular\ Device\ Identifications.\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00150}00150\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ @details\ The\ device\ provides\ additional\ and\ optional\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00151}00151\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ identifications\ and\ description\ data\ objects\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00152}00152\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00153}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga63c3a2a3adb05f591399e2c4def7c14aaca82385c8d88d6d762c369b4da4c4db8}{00153}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga63c3a2a3adb05f591399e2c4def7c14aaca82385c8d88d6d762c369b4da4c4db8}{RID\_EXTENDED\_IDENTIFICATIONS}}\ \ \ \ \ \ =\ 0x03,\ \ \ \textcolor{comment}{/*!<\ \ @brief\ Extended\ Device\ Identifications.\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00154}00154\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ @details\ The\ device\ provides\ additional\ and\ optional\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00155}00155\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ identifications\ and\ description\ private\ data\ about\ the\ physical}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00156}00156\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ device\ itself.\ All\ of\ these\ data\ are\ device\ dependent.\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00157}00157\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00158}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga63c3a2a3adb05f591399e2c4def7c14aabb8d7527a3aabb1eac974474255d0c5e}{00158}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gga63c3a2a3adb05f591399e2c4def7c14aabb8d7527a3aabb1eac974474255d0c5e}{RID\_SPEDIFIC\_IDENTIFICATIONS}}\ \ \ \ \ \ =\ 0x04,\ \ \ \textcolor{comment}{/*!<\ \ @brief\ Specific\ Device\ Identifications.\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00159}00159\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ @details\ The\ device\ provides\ one\ specific\ identifications\ object.\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00160}00160\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00161}00161\ \}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga63c3a2a3adb05f591399e2c4def7c14a}{ReadDevId}};}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00162}00162\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00163}00163\ \textcolor{comment}{/**\ @brief\ Structure\ for\ device\ identifications\ message\ type\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00164}\mbox{\hyperlink{struct_m_b___dev_id_msg_type_def}{00164}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00165}00165\ \{}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00166}\mbox{\hyperlink{struct_m_b___dev_id_msg_type_def_aefb693da9f6b86a6da833c4177302092}{00166}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gaeaafeacbd239428c7e59e40d2df16ae2}{MB\_MEITypeDef}}\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_m_b___dev_id_msg_type_def_aefb693da9f6b86a6da833c4177302092}{MEI\_Type}};\ \ \ \ \ \ \ \textcolor{comment}{///<\ MEI\ Type\ assigned\ number\ for\ Device\ Identifications\ Interface}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00167}00167\ \ \ ReadDevId\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ReadDevId;}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00168}\mbox{\hyperlink{struct_m_b___dev_id_msg_type_def_a1ef4b6db2785f723b26b0d9abe6f371e}{00168}}\ \ \ uint8\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_m_b___dev_id_msg_type_def_a1ef4b6db2785f723b26b0d9abe6f371e}{Conformity}};\ \ \ \ \ \textcolor{comment}{///<\ Identification\ conformity\ level\ of\ the\ device\ and\ type\ of\ supported\ access\ @ref\ MODBUS\_DEVICE\_CONFORMITY}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00169}00169\ \ \ uint8\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ MoreFollows;}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00170}00170\ \ \ uint8\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ NextObjId;}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00171}00171\ \ \ uint8\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ NumbOfObj;\ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00172}00172\ \}\mbox{\hyperlink{struct_m_b___dev_id_msg_type_def}{MB\_DevIdMsgTypeDef}};}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00173}00173\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00174}00174\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00175}00175\ \textcolor{comment}{/**\ @brief\ Structure\ for\ modbus\ messsage\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00176}\mbox{\hyperlink{struct_r_s___msg_type_def}{00176}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct\ \ }\textcolor{comment}{//\ RS\_MsgTypeDef}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00177}00177\ \{}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00178}00178\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_PROTOCOL\_TCP}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00179}00179\ \ \ uint16\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ TransactionID;\ \ \ \ \ \textcolor{comment}{///<\ Modbus\ TCP:\ ID\ Transaction}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00180}00180\ \ \ uint16\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ ProtocolID;\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Modbus\ TCP:\ ID\ Protocol}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00181}00181\ \ \ uint16\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ PDULength;\ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Modbus\ TCP:\ PDU\ Length}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00182}00182\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00183}00183\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00184}\mbox{\hyperlink{struct_r_s___msg_type_def_a277ed439b65aedbf03bd112c073e6a32}{00184}}\ \ \ uint8\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def_a277ed439b65aedbf03bd112c073e6a32}{MbAddr}};\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Modbus\ Slave\ Address}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00185}\mbox{\hyperlink{struct_r_s___msg_type_def_a176d779ab0d7fd06a4303e6e6acb6ca9}{00185}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga38d42495bf262b70048e6d6a7af175d2}{MB\_FunctonTypeDef}}\ \ \ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def_a176d779ab0d7fd06a4303e6e6acb6ca9}{FuncCode}};\ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Modbus\ Function\ Code}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00186}\mbox{\hyperlink{struct_r_s___msg_type_def_a51c020dacb24e4ffcff28b1d3c6a01ae}{00186}}\ \ \ \mbox{\hyperlink{struct_m_b___dev_id_msg_type_def}{MB\_DevIdMsgTypeDef}}\ \ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def_a51c020dacb24e4ffcff28b1d3c6a01ae}{DevId}};\ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Read\ Device\ Identifications\ Header\ struct}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00187}\mbox{\hyperlink{struct_r_s___msg_type_def_af99048a71119ba4c17772bd5544b3eef}{00187}}\ \ \ uint16\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def_af99048a71119ba4c17772bd5544b3eef}{Addr}};\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Modbus\ Address\ of\ data}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00188}\mbox{\hyperlink{struct_r_s___msg_type_def_a1ccb2bf492218a6ae3a5b6ad5cd4c82f}{00188}}\ \ \ uint16\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def_a1ccb2bf492218a6ae3a5b6ad5cd4c82f}{Qnt}};\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Quantity\ of\ modbus\ data}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00189}\mbox{\hyperlink{struct_r_s___msg_type_def_a5c69bf212dc5e7dc2eaa50971e27e2a6}{00189}}\ \ \ uint8\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def_a5c69bf212dc5e7dc2eaa50971e27e2a6}{ByteCnt}};\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Quantity\ of\ bytes\ of\ data\ in\ message\ to\ transmit/receive}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00190}00190\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00191}\mbox{\hyperlink{struct_r_s___msg_type_def_aacbc6754621bd84742cd6c2ba65ad094}{00191}}\ \ \ uint16\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def_aacbc6754621bd84742cd6c2ba65ad094}{MbData}}[\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gaf55149bc1f05cf18af067a302e31e3f9}{DATA\_SIZE}}];\ \ \textcolor{comment}{///<\ Modbus\ Data}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00192}\mbox{\hyperlink{struct_r_s___msg_type_def_a3dab5eaf3a1dd5719b8bfec1adad0d39}{00192}}\ \ \ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga4ade64cb3fabf37f010c1e297489980c}{MB\_ExceptionTypeDef}}\ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def_a3dab5eaf3a1dd5719b8bfec1adad0d39}{Except\_Code}};\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Exception\ Code\ for\ the\ command}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00193}00193\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00194}\mbox{\hyperlink{struct_r_s___msg_type_def_a423ab838d4c113fd6392452fd44dc1c0}{00194}}\ \ \ uint16\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def_a423ab838d4c113fd6392452fd44dc1c0}{MbCRC}};\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Modbus\ CRC}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00195}00195\ \}\mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}};}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00196}00196\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00197}00197\ \textcolor{keyword}{extern}\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga679c526f339999281b97010876e7a295}{MODBUS\_MSG}};\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00198}00198\ \textcolor{comment}{////////////////////-\/-\/-\/MODBUS\ MESSAGE\ DEFINES-\/-\/-\//////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00199}00199\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00200}00200\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00201}00201\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00202}00202\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00203}00203\ \textcolor{comment}{////////////////////-\/-\/-\/MODBUS\ FUNCTION\ DEFINES-\/-\/-\/////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00204}00204\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00205}00205\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00206}00206\ \textcolor{comment}{\ \ *\ @brief\ \ Macros\ to\ set\ pointer\ to\ 16-\/bit\ array}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00207}00207\ \textcolor{comment}{\ \ *\ @param\ \ \_arr\_\ \ \ \ \ \ \ \ \ -\/\ массив\ регистров\ (16-\/бит).}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00208}00208\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00209}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_gaed24f1f06633b92de65f4fab2b4e005b}{00209}}\ \textcolor{preprocessor}{\#define\ MB\_Set\_Arr16\_Ptr(\_arr\_)\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((uint16\_t*)(\&(\_arr\_)))}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00210}00210\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00211}00211\ \textcolor{comment}{\ \ *\ @brief\ \ Macros\ to\ set\ pointer\ to\ register}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00212}00212\ \textcolor{comment}{\ \ *\ @param\ \ \_parr\_\ \ \ \ \ \ \ \ -\/\ массив\ регистров.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00213}00213\ \textcolor{comment}{\ \ *\ @param\ \ \_addr\_\ \ \ \ \ \ \ \ -\/\ Номер\ регистра\ (его\ индекс)\ от\ начала\ массива\ \_arr\_.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00214}00214\ \textcolor{comment}{\ \ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00215}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga938b632e20454741b2a7f97928583776}{00215}}\ \textcolor{preprocessor}{\#define\ MB\_Set\_Register\_Ptr(\_parr\_,\ \_addr\_)\ \ \ \ \ \ \ \ \ \ \ ((uint16\_t\ *)(\_parr\_)+(\_addr\_))}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00216}00216\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00217}00217\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00218}00218\ \textcolor{comment}{\ \ *\ @brief\ \ Макрос\ для\ установки\ указателя\ на\ регистр,\ содержащий\ запрашиваемый\ коил}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00219}00219\ \textcolor{comment}{\ \ *\ @param\ \ \_parr\_\ \ -\/\ массив\ коилов.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00220}00220\ \textcolor{comment}{\ \ *\ @param\ \ \_coil\_\ \ -\/\ Номер\ коила\ от\ начала\ массива\ \_arr\_.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00221}00221\ \textcolor{comment}{\ \ *\ @note\ \ \ Используется\ вместе\ с\ @ref\ MB\_Set\_Coil\_Mask}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00222}00222\ \textcolor{comment}{\ \ @code\ Пояснение\ выражений}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00223}00223\ \textcolor{comment}{\ \ -\/\ (\_coil\_/16)\ -\/\ индекс\ регистра,\ в\ котором\ содержится\ коил\ по\ адресу\ \_coil\_}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00224}00224\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00225}00225\ \textcolor{comment}{Визуальный\ пример:\ 30\ коил\ будет\ в\ 30/16\ =\ 1\ регистре\ (индексация\ с\ 0)}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00226}00226\ \textcolor{comment}{\ \ xxxxxxxx\ xxxxxxxx\ xxxxxxxx\ xxxxxxCx}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00227}00227\ \textcolor{comment}{\ \ |register[0]-\/-\/-\/-\/|\ |register[1]-\/-\/-\/-\/|}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00228}00228\ \textcolor{comment}{\ \ |skip\ this-\/-\/-\/-\/-\/-\/|\ |get\ this-\/-\/-\/-\/-\/-\/-\/|}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00229}00229\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ |shift\ to\ 14\ bit|}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00230}00230\ \textcolor{comment}{\ \ @endcode}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00231}00231\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00232}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga9648b00f955b16e107b901812031cee3}{00232}}\ \textcolor{preprocessor}{\#define\ MB\_Set\_Coil\_Reg\_Ptr(\_parr\_,\ \_coil\_)\ \ \ \ \ \ \ \ \ \ \ ((uint16\_t\ *)(\_parr\_)+((\_coil\_)/16))}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00233}00233\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00234}00234\ \textcolor{comment}{\ \ *\ @brief\ \ Макрос\ для\ установки\ маски,\ чтобы\ выделить\ запрашиваемый\ коил\ из\ регистра}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00235}00235\ \textcolor{comment}{\ \ *\ @param\ \ \_coil\_\ \ -\/\ Номер\ коила\ от\ начала\ массива\ \_arr\_.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00236}00236\ \textcolor{comment}{\ \ *\ @note\ \ \ Используется\ вместе\ с\ @ref\ MB\_Set\_Coil\_Reg\_Ptr}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00237}00237\ \textcolor{comment}{\ \ @code\ Пояснение\ выражений}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00238}00238\ \textcolor{comment}{\ \ -\/\ (16*(\_coil\_/16)\ -\/\ сколько\ коилов\ нужно\ пропустить.\ прим.\ (16*30/16)\ -\/\ первые\ 16\ коилов\ находятся\ вне\ регистра}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00239}00239\ \textcolor{comment}{\ \ -\/\ \_coil\_-\/(16*(\_coil\_/16))\ -\/\ сдвинуть\ бит\ на\ место\ запрашиваемого\ коила\ в\ регистре}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00240}00240\ \textcolor{comment}{\ \ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00241}00241\ \textcolor{comment}{\ \ Визуальный\ пример:\ 30\ коил\ будет\ регистре[1],\ на\ 14\ бите:}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00242}00242\ \textcolor{comment}{\ \ \ \ register\ =\ 30/16\ =\ 1}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00243}00243\ \textcolor{comment}{\ \ \ \ bit\ =\ 30\ -\/\ (16*30/16)\ =\ 30\ -\/\ 16\ =\ 14}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00244}00244\ \textcolor{comment}{\ \ \ \ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00245}00245\ \textcolor{comment}{\ \ xxxxxxxx\ xxxxxxxx\ xxxxxxxx\ xxxxxxCx}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00246}00246\ \textcolor{comment}{\ \ |register[0]-\/-\/-\/-\/|\ |register[1]-\/-\/-\/-\/|}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00247}00247\ \textcolor{comment}{\ \ |skip\ this-\/-\/-\/-\/-\/-\/|\ |get\ this-\/-\/-\/-\/-\/-\/-\/|}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00248}00248\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ |shift\ to\ 14\ bit|}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00249}00249\ \textcolor{comment}{\ \ @endcode}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00250}00250\ \textcolor{comment}{\ \ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00251}\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga6ab08ed18663bc72f80e4e60b30ab429}{00251}}\ \textcolor{preprocessor}{\#define\ MB\_Set\_Coil\_Mask(\_coil\_)\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (1\ <<\ (\ \_coil\_\ -\/\ (16*((\_coil\_)/16))\ ))}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00252}00252\ \ \ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00253}00253\ \textcolor{comment}{/**\ GENERAL\_MODBUS\_STUFF}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00254}00254\ \textcolor{comment}{\ \ *\ @\}\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00255}00255\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00256}00256\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00257}00257\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00258}00258\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/OTHER\ DEFINES-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00259}00259\ \textcolor{preprocessor}{\#define\ RegisterType\_Holding\ \ \ \ \ \ \ \ 0}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00260}00260\ \textcolor{preprocessor}{\#define\ RegisterType\_Input\ \ \ \ \ \ \ \ \ \ 1}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00261}00261\ \textcolor{preprocessor}{\#define\ RegisterType\_Discrete\ \ \ \ \ \ \ 2}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00262}00262\ \textcolor{comment}{//\ create\ hadnles\ and\ settings\ for\ uart,\ tim,\ rs\ with\ \_modbus\_\ name}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00263}00263\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00264}00264\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00265}00265\ \textcolor{preprocessor}{\#ifndef\ Divide\_Up}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00266}00266\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00267}00267\ \textcolor{comment}{\ \ *\ @brief\ \ Calc\ dividing\ including\ remainder}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00268}00268\ \textcolor{comment}{\ \ *\ @param\ \ \_val\_\ \ \ -\/\ делимое.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00269}00269\ \textcolor{comment}{\ \ *\ @param\ \ \_div\_\ \ \ -\/\ делитель.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00270}00270\ \textcolor{comment}{\ \ *\ @details\ \ Если\ результат\ деления\ без\ остатка:\ он\ возвращается\ как\ есть}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00271}00271\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ Если\ с\ остатком\ -\/\ округляется\ вверх}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00272}00272\ \textcolor{comment}{\ \ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00273}00273\ \textcolor{comment}{//\#define\ Divide\_Up(\_val\_,\ \_div\_)\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((\_val\_)\%(\_div\_))?\ (\_val\_)/(\_div\_)+1\ :\ (\_val\_)/\_div\_)\ \ /*\ через\ тернарный\ оператор\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00274}00274\ \textcolor{preprocessor}{\#define\ Divide\_Up(\_val\_,\ \_div\_)\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((\_val\_\ -\/\ 1)\ /\ \_div\_)\ +\ 1\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{/*\ через\ мат\ выражение\ */}\textcolor{preprocessor}{\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00275}00275\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00276}00276\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00277}00277\ \textcolor{preprocessor}{\#ifndef\ ByteSwap16}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00278}00278\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00279}00279\ \textcolor{comment}{\ \ *\ @brief\ \ Swap\ between\ Little\ Endian\ and\ Big\ Endian}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00280}00280\ \textcolor{comment}{\ \ *\ @param\ \ v\ \ \ \ \ \ \ -\/\ Переменная\ для\ свапа.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00281}00281\ \textcolor{comment}{\ \ *\ @return\ v\ (new)\ -\/\ Свапнутая\ переменная.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00282}00282\ \textcolor{comment}{\ \ *\ @details\ \ Переключения\ между\ двумя\ типами\ хранения\ слова:\ HI-\/LO\ байты\ и\ LO-\/HI\ байты.}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00283}00283\ \textcolor{comment}{\ \ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00284}00284\ \textcolor{preprocessor}{\#define\ ByteSwap16(v)\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((v\&0xFF00)\ >>\ (8))\ |\ ((v\&0x00FF)\ <<\ (8)))}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00285}00285\ \textcolor{preprocessor}{\#endif}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00286}00286\ \textcolor{comment}{////////////////////-\/-\/-\/MODBUS\ MESSAGE\ DEFINES-\/-\/-\//////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00287}00287\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00288}00288\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00289}00289\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00290}00290\ \textcolor{comment}{/////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\//////////////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00291}00291\ \ \ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00292}00292\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00293}00293\ \textcolor{comment}{\ \ *\ @addtogroup\ MODBUS\_CMD\_PROCESS\_FUNCTIONS}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00294}00294\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00295}00295\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00296}00296\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00297}00297\ \textcolor{comment}{/*\ Реализация\ этих\ функций\ лежит\ в\ modbus\_data.c\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00298}00298\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00299}00299\ \textcolor{comment}{/*\ Check\ is\ address\ valid\ for\ certain\ array\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00300}00300\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga4ade64cb3fabf37f010c1e297489980c}{MB\_ExceptionTypeDef}}\ \mbox{\hyperlink{group___m_o_d_b_u_s___c_m_d___p_r_o_c_e_s_s___f_u_n_c_t_i_o_n_s_ga278ca9791c69aef8adeb9e7c4b273c50}{MB\_Check\_Address\_For\_Arr}}(uint16\_t\ Addr,\ uint16\_t\ Qnt,\ uint16\_t\ R\_ARR\_ADDR,\ uint16\_t\ R\_ARR\_NUMB);}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00301}00301\ \textcolor{comment}{/*\ Define\ Address\ Origin\ for\ Input/Holding\ Registers\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00302}00302\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga4ade64cb3fabf37f010c1e297489980c}{MB\_ExceptionTypeDef}}\ \mbox{\hyperlink{group___m_o_d_b_u_s___c_m_d___p_r_o_c_e_s_s___f_u_n_c_t_i_o_n_s_ga1e90bb28a4cf997250daab6470d5ffe3}{MB\_DefineRegistersAddress}}(uint16\_t\ **pRegs,\ uint16\_t\ Addr,\ uint16\_t\ Qnt,\ uint8\_t\ RegisterType);}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00303}00303\ \textcolor{comment}{/*\ Define\ Address\ Origin\ for\ coils\ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00304}00304\ \mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s_ga4ade64cb3fabf37f010c1e297489980c}{MB\_ExceptionTypeDef}}\ \mbox{\hyperlink{group___m_o_d_b_u_s___c_m_d___p_r_o_c_e_s_s___f_u_n_c_t_i_o_n_s_gade717a6829a062a8a198bd933c8b2221}{MB\_DefineCoilsAddress}}(uint16\_t\ **pCoils,\ uint16\_t\ Addr,\ uint16\_t\ Qnt,\ uint16\_t\ *start\_shift,\ uint8\_t\ WriteFlag);\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00305}00305\ \textcolor{comment}{/**\ MODBUS\_CMD\_PROCESS\_FUNCTIONS}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00306}00306\ \textcolor{comment}{\ \ *\ @\}\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00307}00307\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00308}00308\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00309}00309\ }
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00310}00310\ \ \ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00311}00311\ \textcolor{comment}{/////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\//////////////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00312}00312\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\_\_MODBUS\_CORE\_H\_}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00313}00313\ \textcolor{comment}{/**\ MODBUS\_INTERNAL}}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00314}00314\ \textcolor{comment}{\ \ *\ @\}\ }}
\DoxyCodeLine{\Hypertarget{modbus__core_8h_source_l00315}00315\ \textcolor{comment}{\ \ */}\textcolor{preprocessor}{}}

\end{DoxyCode}
