MODBUS. More...
Data Structures | |
struct | modbus_channel_attr_t |
struct | modbus_comm_attr_t |
struct | modbus_handle_t |
Enumerations | |
enum | modbus_result_t { MODBUS_RESULT_OK , MODBUS_RESULT_INVALID , MODBUS_RESULT_UNSUPPORTED , MODBUS_RESULT_BUSY , MODBUS_RESULT_PARITY_ERROR , MODBUS_RESULT_ERR , TOTAL_MODBUS_RESULT } |
enum | modbus_status_t { MODBUS_STATUS_UNKNOWN , MODBUS_STATUS_OK , MODBUS_STATUS_BUSY , MODBUS_STATUS_STOP , MODBUS_STATUS_SENDING , MODBUS_STATUS_RECEIVING , MODBUS_STATUS_ERR , TOTAL_MODBUS_STATUS } |
enum | modbus_func_t { MODBUS_FUNC_READ_COIL = 1U , MODBUS_FUNC_READ_DISCRETE_INPUT = 2U , MODBUS_FUNC_READ_HOLDING_REG = 3U , MODBUS_FUNC_READ_INPUT_REG = 4U , MODBUS_FUNC_WRITE_SINGLE_COIL = 5U , MODBUS_FUNC_WRITE_SINGLE_REG = 6U , MODBUS_FUNC_WRITE_MULTIPLE_COIL = 15U , MODBUS_FUNC_WRITE_MULTIPLE_REG = 16U , TOTAL_MODBUS_FUNC } |
enum | modbus_baudrate_t { MODBUS_BAUDRATE_9600 = 9600U , MODBUS_BAUDRATE_19200 = 19200U , TOTAL_MODBUS_BAUDRATE } |
Functions | |
modbus_result_t | hal_modbus_init (modbus_handle_t *handle, const modbus_channel_attr_t attr) |
Configure Modbus channel with specific attributes. | |
modbus_result_t | hal_modbus_read (modbus_handle_t *handle, const modbus_comm_attr_t comm_attr, uint8_t *rx_buffer, const size_t len) |
Write data to Modbus. | |
modbus_result_t | hal_modbus_stop (modbus_handle_t *handle) |
Stop Modbus operation. | |
modbus_status_t | hal_modbus_get_status (modbus_handle_t *handle) |
Get Modbus channel status. | |
modbus_result_t | hal_modbus_mutex_take (const uint8_t channel, const uint32_t timeout_ms) |
Try acquire RTOS mutex for specified channel. | |
modbus_result_t | hal_modbus_mutex_give (const uint8_t channel) |
Release RTOS mutex for specified channel. | |
MODBUS.
enum modbus_baudrate_t |
#include <modbus/public_inc/hal_modbus.h>
Enumerator | |
---|---|
MODBUS_BAUDRATE_9600 | |
MODBUS_BAUDRATE_19200 | |
TOTAL_MODBUS_BAUDRATE |
enum modbus_func_t |
#include <modbus/public_inc/hal_modbus.h>
enum modbus_result_t |
#include <modbus/public_inc/hal_modbus.h>
enum modbus_status_t |
#include <modbus/public_inc/hal_modbus.h>
modbus_status_t hal_modbus_get_status | ( | modbus_handle_t * | handle | ) |
#include <modbus/public_inc/hal_modbus.h>
Get Modbus channel status.
[in,out] | handle | Modbus handler |
modbus_result_t hal_modbus_init | ( | modbus_handle_t * | handle, |
const modbus_channel_attr_t | attr ) |
#include <modbus/public_inc/hal_modbus.h>
Configure Modbus channel with specific attributes.
[in,out] | handle | Modbus handler |
[in] | attr | Modbus channel attribute |
MODBUS_RESULT_OK | Success configure Modbus channel |
MODBUS_RESULT_INVALID | Configuration attributes invalid |
MODBUS_RESULT_UNSUPPORTED | Operation not supported |
MODBUS_RESULT_ERR | Failed configure Modbus channel |
modbus_result_t hal_modbus_mutex_give | ( | const uint8_t | channel | ) |
#include <modbus/public_inc/hal_modbus.h>
Release RTOS mutex for specified channel.
[in] | channel | Modbus channel's mutex to be released |
MODBUS_RESULT_OK | Success release mutex |
MODBUS_RESULT_INVALID | Invalid channel |
MODBUS_RESULT_UNSUPPORTED | Operation not supported |
MODBUS_RESULT_ERR | Failed release mutex |
modbus_result_t hal_modbus_mutex_take | ( | const uint8_t | channel, |
const uint32_t | timeout_ms ) |
#include <modbus/public_inc/hal_modbus.h>
Try acquire RTOS mutex for specified channel.
[in] | channel | Modbus channel's mutex to be locked |
[in] | timeout_ms | Mutex acquiring timeout in milliseconds |
MODBUS_RESULT_OK | Success acquire mutex |
MODBUS_RESULT_INVALID | Invalid channel |
MODBUS_RESULT_UNSUPPORTED | Operation not supported |
MODBUS_RESULT_ERR | Failed acquire mutex |
modbus_result_t hal_modbus_read | ( | modbus_handle_t * | handle, |
const modbus_comm_attr_t | comm_attr, | ||
uint8_t * | rx_buffer, | ||
const size_t | len ) |
#include <modbus/public_inc/hal_modbus.h>
Write data to Modbus.
[in,out] | handle | Modbus handler |
[in] | comm_attr | Communication attribute |
[out] | rx_buffer | Receiving buffer |
[in] | len | Buffer size |
MODBUS_RESULT_OK | Success write Modbus data |
MODBUS_RESULT_BUSY | Modbus busy |
MODBUS_RESULT_PARITY_ERROR | Modbus parity error |
MODBUS_RESULT_ERR | Failed read Modbus data |
modbus_result_t hal_modbus_stop | ( | modbus_handle_t * | handle | ) |
#include <modbus/public_inc/hal_modbus.h>
Stop Modbus operation.
[in,out] | handle | Modbus handler |
MODBUS_RESULT_OK | Success stop Modbus operation |
MODBUS_RESULT_UNSUPPORTED | Operation not supported |
MODBUS_RESULT_ERR | Failed stop Modbus operation |