Go to the documentation of this file.
38 #include "mikrosdk_version.h"
41 #if mikroSDK_GET_VERSION < 20800ul
42 #include "rcu_delays.h"
48 #include "drv_digital_out.h"
49 #include "drv_digital_in.h"
62 #define DMX_MAP_MIKROBUS( cfg, mikrobus ) \
63 cfg.tx_pin = MIKROBUS( mikrobus, MIKROBUS_TX ); \
64 cfg.rx_pin = MIKROBUS( mikrobus, MIKROBUS_RX ); \
65 cfg.rst = MIKROBUS( mikrobus, MIKROBUS_RST ); \
66 cfg.abr = MIKROBUS( mikrobus, MIKROBUS_CS ); \
67 cfg.run = MIKROBUS( mikrobus, MIKROBUS_PWM ); \
68 cfg.int_pin = MIKROBUS( mikrobus, MIKROBUS_INT )
77 #define DMX_ERROR_TIMEOUT -2
84 #define DMX_RSP_OK "OK"
85 #define DMX_RSP_ERROR "ERR"
92 #define DMX_CMD_SADR "@SADR,001\0"
93 #define DMX_CMD_BLEN "@BLEN,006\0"
94 #define DMX_CMD_ITMR "@ITMR,001\0"
95 #define DMX_CMD_FTMR "@FTMR,001\0"
96 #define DMX_CMD_FLEN_MASTER "@FLEN,010\0"
97 #define DMX_CMD_FLEN_SLAVE "@FLEN,006\0"
98 #define DMX_CMD_SCOD "@SCOD,000\0"
99 #define DMX_CMD_PURGEBFR "!PURGEBFR\0"
100 #define DMX_CMD_STORECFG "!STORECFG\0"
101 #define DMX_CMD_CLEARCFG "!CLEARCFG\0"
102 #define DMX_CMD_DISPLCFG "!DISPLCFG\0"
111 #define DMX_CONFIG_MODE 0
112 #define DMX_RUN_MODE 1
113 #define DMX_INT_INACTIVE 0
114 #define DMX_INT_ACTIVE 1
121 #define DMX_DRV_RX_BUFFER_SIZE 300
122 #define DMX_DRV_TX_BUFFER_SIZE 100
void dmx_cfg_setup(dmx_cfg_t *cfg)
Config Object Initialization function.
uint8_t dmx_check_int(dmx_t *ctx)
Interrupt Check function.
bool uart_blocking
Definition: dmx.h:169
pin_name_t tx_pin
Definition: dmx.h:159
digital_out_t run
Definition: dmx.h:139
digital_in_t int_pin
Definition: dmx.h:142
uart_stop_bits_t stop_bit
Definition: dmx.h:172
digital_out_t rst
Definition: dmx.h:137
uart_t uart
Definition: dmx.h:145
pin_name_t abr
Definition: dmx.h:163
void dmx_send_cmd(dmx_t *ctx, uint8_t *cmd)
Send command function.
uint32_t baud_rate
Definition: dmx.h:168
void dmx_set_auto_baud_rate(dmx_t *ctx, uint8_t state)
Auto Baud Rate Setting function.
err_t dmx_init(dmx_t *ctx, dmx_cfg_t *cfg)
Initialization function.
Click ctx object definition.
Definition: dmx.h:135
pin_name_t rst
Definition: dmx.h:162
#define DMX_DRV_TX_BUFFER_SIZE
Definition: dmx.h:122
err_t dmx_generic_read(dmx_t *ctx, uint8_t *data_buf, uint16_t max_len)
Generic read function.
#define DMX_DRV_RX_BUFFER_SIZE
Definition: dmx.h:121
digital_out_t abr
Definition: dmx.h:138
void dmx_reset(dmx_t *ctx, uint8_t dev_mode)
Reset function.
pin_name_t int_pin
Definition: dmx.h:165
uart_data_bits_t data_bit
Definition: dmx.h:170
pin_name_t rx_pin
Definition: dmx.h:158
uart_parity_t parity_bit
Definition: dmx.h:171
void dmx_run(dmx_t *ctx, uint8_t run_mode)
Mode Setting function.
void dmx_generic_write(dmx_t *ctx, uint8_t *data_buf, uint16_t len)
Generic write function.
void dmx_set_reset(dmx_t *ctx, uint8_t state)
Reset Setting function.
pin_name_t run
Definition: dmx.h:164
Click configuration structure definition.
Definition: dmx.h:156