43 lines
1.4 KiB
C
43 lines
1.4 KiB
C
#ifndef PROTO_H
|
|
#define PROTO_H
|
|
|
|
#include <stdint.h>
|
|
#include <stdbool.h>
|
|
#include "commons.h"
|
|
|
|
#ifdef IS_MASTER
|
|
#define SET_WRITE() do{digitalWrite(RS485_RX_TX_SELECT, 1);} while(0)
|
|
#define SET_READ() do{digitalWrite(RS485_RX_TX_SELECT, 0);} while(0)
|
|
#else
|
|
#define SET_WRITE() do { RS_MODE_SetHigh();} while(0)
|
|
#define SET_READ() do { RS_MODE_SetLow();} while(0)
|
|
#endif
|
|
|
|
/*=****************************************************************************/
|
|
bool byte_in (uint8_t in, uint8_t* p_cmd, uint8_t* p_id, uint16_t* p_led1,
|
|
uint16_t* p_led2, uint16_t* p_sensor, errors_t* p_error);
|
|
|
|
#ifdef IS_MASTER
|
|
/*=****************************************************************************/
|
|
errors_t send_get (uint8_t peer_id);
|
|
|
|
/*=****************************************************************************/
|
|
errors_t send_set (uint8_t peer_id, uint16_t led1, uint16_t led2);
|
|
|
|
#else
|
|
|
|
/*=****************************************************************************/
|
|
errors_t send_data (uint8_t peer_id, uint16_t sensor);
|
|
|
|
/*=****************************************************************************/
|
|
errors_t send_error (uint8_t peer_id, errors_t err);
|
|
#endif
|
|
|
|
/*=****************************************************************************/
|
|
errors_t uart_rx_byte (uint8_t* p_byte);
|
|
|
|
/*=****************************************************************************/
|
|
errors_t uart_tx_byte (uint8_t byte);
|
|
|
|
|
|
#endif |