0.2.2 doxygen update
This commit is contained in:
@@ -42,13 +42,14 @@ typedef enum
|
||||
//--------------------------------------------------
|
||||
|
||||
/**
|
||||
* @brief Macros to set pointer to a certain register that contains certain coil
|
||||
* @param _parr_ - массив коилов.
|
||||
* @param _coil_ - Номер коила от начала массива _arr_.
|
||||
* @brief Макрос для установки указателя на регистр, содержащий запрашиваемый коил
|
||||
* @param _parr_ - массив коилов.
|
||||
* @param _coil_ - Номер коила от начала массива _arr_.
|
||||
* @note Используется вместе с @ref MB_Set_Coil_Mask
|
||||
@verbatim Пояснение выражений
|
||||
(_coil_/16) - get index (address shift) of register that contain certain coil
|
||||
Visual explanation: 30th coil in coils registers array
|
||||
- (_coil_/16) - индекс регистра, в котором содержится коил по адресу _coil_
|
||||
|
||||
Визуальный пример: 30 коил будет в 30/16 = 1 регистре (индексация с 0)
|
||||
xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxCx
|
||||
|register[0]----| |register[1]----|
|
||||
|skip this------| |get this-------|
|
||||
@@ -57,15 +58,17 @@ typedef enum
|
||||
*/
|
||||
#define MB_Set_Coil_Reg_Ptr(_parr_, _coil_) ((uint16_t *)(_parr_)+((_coil_)/16))
|
||||
/**
|
||||
* @brief Macros to set mask to a certain bit in coils register
|
||||
* @param _coil_ - Номер коила от начала массива _arr_.
|
||||
* @brief Макрос для установки маски, чтобы выделить запрашиваемый коил из регистра
|
||||
* @param _coil_ - Номер коила от начала массива _arr_.
|
||||
* @note Используется вместе с @ref MB_Set_Coil_Reg_Ptr
|
||||
@verbatim Пояснение выражений
|
||||
(16*(_coil_/16) - how many coils we need to skip. e.g. (16*30/16) - skip 16 coils from first register
|
||||
_coil_-(16*(_coil_/16)) - shift to certain coil in certain register
|
||||
e.g. Coil(30) gets in register[1] (30/16 = 1) coil №14 (30 - (16*30/16) = 30 - 16 = 14)
|
||||
- (16*(_coil_/16) - сколько коилов нужно пропустить. прим. (16*30/16) - первые 16 коилов находятся вне регистра
|
||||
- _coil_-(16*(_coil_/16)) - сдвинуть бит на место запрашиваемого коила в регистре
|
||||
|
||||
Visual explanation: 30th coil in coils registers array
|
||||
Визуальный пример: 30 коил будет регистре[1], на 14 бите:
|
||||
register = 30/16 = 1
|
||||
bit = 30 - (16*30/16) = 30 - 16 = 14
|
||||
|
||||
xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxCx
|
||||
|register[0]----| |register[1]----|
|
||||
|skip this------| |get this-------|
|
||||
@@ -86,7 +89,7 @@ typedef enum
|
||||
*/
|
||||
|
||||
/**
|
||||
* @brief Read Coil at its local address.
|
||||
* @brief Считать коил по локальному адресу.
|
||||
* @param _parr_ - массив коилов.
|
||||
* @param _coil_ - Номер коила от начала массива _arr_.
|
||||
* @return uint16_t Возвращает запрошенный коил на 0м бите.
|
||||
@@ -95,7 +98,7 @@ typedef enum
|
||||
*/
|
||||
#define MB_Read_Coil_Local(_parr_, _coil_) (( *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) & MB_Set_Coil_Mask(_coil_) ) >> (_coil_))
|
||||
/**
|
||||
* @brief Set Coil at its local address.
|
||||
* @brief Выставить коил по локальному адресу.
|
||||
* @param _parr_ Указатель на массив коилов.
|
||||
* @param _coil_ - Номер коила от начала массива _arr_.
|
||||
*
|
||||
@@ -103,7 +106,7 @@ typedef enum
|
||||
*/
|
||||
#define MB_Set_Coil_Local(_parr_, _coil_) *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) |= MB_Set_Coil_Mask(_coil_)
|
||||
/**
|
||||
* @brief Reset Coil at its local address.
|
||||
* @brief Сбросить коил по локальному адресу.
|
||||
* @param _parr_ Указатель на массив коилов.
|
||||
* @param _coil_ - Номер коила от начала массива _arr_.
|
||||
*
|
||||
@@ -111,7 +114,7 @@ typedef enum
|
||||
*/
|
||||
#define MB_Reset_Coil_Local(_parr_, _coil_) *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) &= ~(MB_Set_Coil_Mask(_coil_))
|
||||
/**
|
||||
* @brief Set Coil at its local address.
|
||||
* @brief Переключить состояние коила по локальному адресу.
|
||||
* @param _parr_ Указатель на массив коилов.
|
||||
* @param _coil_ - Номер коила от начала массива _arr_.
|
||||
*
|
||||
@@ -119,9 +122,9 @@ typedef enum
|
||||
*/
|
||||
#define MB_Toogle_Coil_Local(_parr_, _coil_) *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) ^= MB_Set_Coil_Mask(_coil_)
|
||||
|
||||
/* Set or Reset Coil at its global address */
|
||||
/* Выставить/сбросить коил по глобальному адресу */
|
||||
MB_ExceptionTypeDef MB_Write_Coil_Global(uint16_t Addr, MB_CoilsOpTypeDef WriteVal);
|
||||
/* Read Coil at its global address */
|
||||
/* Считать коил по глобальному адресу */
|
||||
uint16_t MB_Read_Coil_Global(uint16_t Addr, MB_ExceptionTypeDef *Exception);
|
||||
|
||||
/** MODBUS_DATA_ACCESS_FUNCTIONS
|
||||
@@ -133,11 +136,11 @@ uint16_t MB_Read_Coil_Global(uint16_t Addr, MB_ExceptionTypeDef *Exception);
|
||||
* @addtogroup MODBUS_CMD_PROCESS_FUNCTIONS
|
||||
@{
|
||||
*/
|
||||
/* Proccess command Read Coils (01 - 0x01) */
|
||||
/* Обработать функцию Read Coils (01 - 0x01) */
|
||||
uint8_t MB_Proccess_Read_Coils(RS_MsgTypeDef *modbus_msg);
|
||||
/* Proccess command Write Single Coils (05 - 0x05) */
|
||||
/* Обработать функцию Write Single Coils (05 - 0x05) */
|
||||
uint8_t MB_Proccess_Write_Single_Coil(RS_MsgTypeDef *modbus_msg);
|
||||
/* Proccess command Write Multiple Coils (15 - 0x0F) */
|
||||
/* Обработать функцию Write Multiple Coils (15 - 0x0F) */
|
||||
uint8_t MB_Write_Miltuple_Coils(RS_MsgTypeDef *modbus_msg);
|
||||
|
||||
/** MODBUS_CMD_PROCESS_FUNCTIONS
|
||||
|
||||
Reference in New Issue
Block a user