Go to the documentation of this file.
35 #ifndef SINGLEWIRECAN_H
36 #define SINGLEWIRECAN_H
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"
63 #define SINGLEWIRECAN_MAP_MIKROBUS( cfg, mikrobus ) \
64 cfg.tx_pin = MIKROBUS( mikrobus, MIKROBUS_TX ); \
65 cfg.rx_pin = MIKROBUS( mikrobus, MIKROBUS_RX ); \
66 cfg.md0 = MIKROBUS( mikrobus, MIKROBUS_RST ); \
67 cfg.md1 = MIKROBUS( mikrobus, MIKROBUS_CS )
74 #define SINGLEWIRECAN_RETVAL uint8_t
76 #define SINGLEWIRECAN_OK 0x00
77 #define SINGLEWIRECAN_INIT_ERROR 0xFF
84 #define SINGLEWIRECAN_OPERATING_MODE_SLEEP 0x00
85 #define SINGLEWIRECAN_OPERATING_MODE_HIGH_SPEED 0x01
86 #define SINGLEWIRECAN_OPERATING_MODE_HIGH_VOLTAGE_WAKE_UP 0x02
87 #define SINGLEWIRECAN_OPERATING_MODE_NORMAL 0x03
94 #define SINGLEWIRECAN_PIN_STATE_LOW 0x00
95 #define SINGLEWIRECAN_PIN_STATE_HIGH 0x01
102 #define SINGLEWIRECAN_END_BUFF 0x00
109 #define DRV_RX_BUFFER_SIZE 500
259 #endif // _SINGLEWIRECAN_H_
bool uart_blocking
Definition: singlewirecan.h:155
Click configuration structure definition.
Definition: singlewirecan.h:141
#define DRV_RX_BUFFER_SIZE
Definition: singlewirecan.h:109
uint32_t baud_rate
Definition: singlewirecan.h:154
Click ctx object definition.
Definition: singlewirecan.h:122
#define SINGLEWIRECAN_RETVAL
Definition: singlewirecan.h:74
pin_name_t tx_pin
Definition: singlewirecan.h:145
pin_name_t md0
Definition: singlewirecan.h:149
uart_parity_t parity_bit
Definition: singlewirecan.h:157
void singlewirecan_generic_write(singlewirecan_t *ctx, char *data_buf, uint16_t len)
Generic write function.
void singlewirecan_set_operating_mode(singlewirecan_t *ctx, uint8_t op_mode)
Set operating mode function.
uart_t uart
Definition: singlewirecan.h:130
uart_data_bits_t data_bit
Definition: singlewirecan.h:156
int32_t singlewirecan_generic_read(singlewirecan_t *ctx, char *data_buf, uint16_t max_len)
Generic read function.
uart_stop_bits_t stop_bit
Definition: singlewirecan.h:158
pin_name_t rx_pin
Definition: singlewirecan.h:144
void singlewirecan_set_md_0_pin_state(singlewirecan_t *ctx, uint8_t rst_state)
Sets MD0 pin state.
digital_out_t md0
Definition: singlewirecan.h:125
digital_out_t md1
Definition: singlewirecan.h:126
void singlewirecan_set_md_1_pin_state(singlewirecan_t *ctx, uint8_t cs_state)
Sets MD1 pin state.
pin_name_t md1
Definition: singlewirecan.h:150
SINGLEWIRECAN_RETVAL singlewirecan_init(singlewirecan_t *ctx, singlewirecan_cfg_t *cfg)
Initialization function.
void singlewirecan_cfg_setup(singlewirecan_cfg_t *cfg)
Config Object Initialization function.