main_ubi_sdk v 0.1.3
This is UBI4 documentation
main_receiver.h
Go to the documentation of this file.
1/*
2 ******************************************************************************
3 * @file main_receiver.h
4 * @author A.Alborov
5 ******************************************************************************
6 */
7
8 #ifndef INC_MAIN_RECEIVER_H_
9 #define INC_MAIN_RECEIVER_H_
10
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14
15 #include "UBI_SDK.h"
16
20
21 #include "stdint.h"
22 #include "stdbool.h"
23
29
45
46
47
54
67
88
97
98
99
100
105
106
107
108
117
118typedef struct
119{
120 uint8_t res:6;
121 uint8_t request_answer:1;
122 uint8_t brige:1;
124 uint8_t package_id;
125 uint8_t header_id;
126 uint8_t command;
128}__attribute__((__packed__))collect_header_struct;
129
130
131
132
133
134
135typedef bool (* custom_receiver_callback)(uint8_t* Buf, uint16_t size, ports_enum port);
138
139
140#define COLLECT_HEADER_SIZE 100
142
148
149void MainReceiver(uint8_t* Buf, uint16_t size, ports_enum port);
150
151
153
154
155uint8_t registr_header(bool brige, bool request_answer, uint8_t transmitter_address, uint8_t package_id, uint8_t command, ports_enum port);
156collect_header_struct* find_first_header(bool brige, uint8_t address, uint8_t command);
157
161
163
164#ifdef __cplusplus
165}
166#endif
167
168#endif /* INC_MAIN_RECEIVER_H_ */
ports_enum
Definition a_port.h:47
uint8_t registr_header(bool brige, bool request_answer, uint8_t transmitter_address, uint8_t package_id, uint8_t command, ports_enum port)
Definition main_receiver.c:66
DeviceInformationCommand_enum
Список команд Device Information.
Definition main_receiver.h:69
collect_header_struct header_arr[COLLECT_HEADER_SIZE]
Definition main_receiver.c:62
bool(* custom_receiver_callback)(uint8_t *Buf, uint16_t size, ports_enum port)
Definition main_receiver.h:135
DevicesManagerCommand_enum
Список команд Sub Device Manager.
Definition main_receiver.h:49
Command_enum
Список команд Device Access.
Definition main_receiver.h:32
DataTransferSetting_enum
Список команд Data Transfer Settings.
Definition main_receiver.h:90
void set_custom_main_receiver(custom_receiver_callback custom_receiver)
Definition main_receiver.c:45
#define COLLECT_HEADER_SIZE
Definition main_receiver.h:140
void DeviceMainReceiver(ubi4_bus_protocol_obj_struct *protocol, protocol_receive_struct receive_str)
Функция разбора принятной команды
Definition main_receiver.c:127
DataTransferSettingsCommand_enum
Список команд Data Transfer Settings Command.
Definition main_receiver.h:102
void MainReceiver(uint8_t *Buf, uint16_t size, ports_enum port)
bool(* custom_command_selector_callback)(command_selector_struct command)
Definition main_receiver.h:136
collect_header_struct * find_first_header(bool brige, uint8_t address, uint8_t command)
Definition main_receiver.c:112
void set_device_custom_main_receiver(device_custom_receiver_callback custom_receiver)
Definition main_receiver.c:40
void CommandSelector(command_selector_struct command)
void set_custom_command_selector(custom_command_selector_callback custom_selector)
Definition main_receiver.c:50
DataManagerCommand_enum
Список команд Data Manager.
Definition main_receiver.h:56
void(* device_custom_receiver_callback)(ubi4_bus_protocol_obj_struct *protocol_str, protocol_receive_struct receive_str)
Definition main_receiver.h:137
@ READ_DEVICE_ADDITIONAL_PARAMETER
Definition main_receiver.h:72
@ SUB_DEVICE_PARAMETER_INIT_WRITE
Definition main_receiver.h:80
@ READ_DEVICE_ADDITIONAL_PARAMETER_SIZE
Definition main_receiver.h:73
@ GET_DEVICE_NAME
Definition main_receiver.h:83
@ SET_SERIAL_NUMBER
Definition main_receiver.h:82
@ GET_DEVICE_ROLE
Definition main_receiver.h:85
@ READ_DEVICE_PARAMETERS
Definition main_receiver.h:71
@ SET_DEVICE_NAME
Definition main_receiver.h:84
@ READ_SUB_DEVICE_ADDITIONAL_PARAMETER_SIZE
Definition main_receiver.h:78
@ READ_SUB_DEVICES_FIRST_INFO
Definition main_receiver.h:74
@ READ_SUB_DEVICE_ADDITIONAL_PARAMETER
Definition main_receiver.h:77
@ GET_SERIAL_NUMBER
Definition main_receiver.h:81
@ READ_SUB_DEVICE_PARAMETERS
Definition main_receiver.h:76
@ READ_SUB_DEVICE_INFO
Definition main_receiver.h:75
@ SUB_DEVICE_PARAMETER_INIT_READ
Definition main_receiver.h:79
@ SET_DEVICE_ROLE
Definition main_receiver.h:86
@ INICIALIZE_INFORMATION
Definition main_receiver.h:70
@ GET_ALL_SUB_DEVICE
Definition main_receiver.h:50
@ REMOVE_SUB_DEVICE
Definition main_receiver.h:52
@ ADD_SUB_DEVICE
Definition main_receiver.h:51
@ DATA_TRANSFER_SETTINGS
Definition main_receiver.h:40
@ SUB_DEVICE_MANAGER
Definition main_receiver.h:38
@ DATA_MANAGER
Definition main_receiver.h:34
@ PROTOCOL_PING
Definition main_receiver.h:43
@ COMPLEX_PARAMETER_TRANSFER
Definition main_receiver.h:41
@ POWER_CONTROL
Definition main_receiver.h:42
@ DEVICE_ACCESS_COMMAND
Definition main_receiver.h:36
@ GET_DEVICE_STATUS
Definition main_receiver.h:39
@ ECHO_COMMAND
Definition main_receiver.h:37
@ DEVICE_INFORMATION
Definition main_receiver.h:33
@ WRITE_FW_COMMAND
Definition main_receiver.h:35
@ DTSE_ADD_PARAMETER_STREAM_FILTER
Definition main_receiver.h:94
@ DTSE_ADD_PARAMETER_IN_EXTERNAL_STREAM
Definition main_receiver.h:95
@ DTSE_PROTOCOL_PREAMBLE
Definition main_receiver.h:93
@ DTSE_STOP_PARAMETER_STREAM
Definition main_receiver.h:92
@ DTSE_START_PARAMETER_STREAM
Definition main_receiver.h:91
@ SET_BRIGE_MODE
Definition main_receiver.h:103
@ READ_SLOT
Definition main_receiver.h:63
@ RESET_TO_FACTORY
Definition main_receiver.h:61
@ READ_AVAILABLE_SLOTS
Definition main_receiver.h:57
@ READ_DATA
Definition main_receiver.h:59
@ WRITE_DATA_PART
Definition main_receiver.h:64
@ SAVE_DATA
Definition main_receiver.h:62
@ WRITE_DATA
Definition main_receiver.h:60
@ READ_DATA_PART
Definition main_receiver.h:65
@ WRITE_SLOT
Definition main_receiver.h:58
Definition main_receiver.h:119
uint8_t package_id
Definition main_receiver.h:124
uint8_t command
Definition main_receiver.h:126
uint8_t brige
Definition main_receiver.h:122
ports_enum port
Definition main_receiver.h:127
uint8_t res
Definition main_receiver.h:120
uint8_t request_answer
Definition main_receiver.h:121
uint8_t transmitter_address
Definition main_receiver.h:123
uint8_t header_id
Definition main_receiver.h:125
Definition main_receiver.h:110
ports_enum port
Definition main_receiver.h:114
uint8_t * data_buf
Definition main_receiver.h:112
uint16_t data_size
Definition main_receiver.h:113
uint16_t header_id
Definition main_receiver.h:115
Command_enum command
Definition main_receiver.h:111
Definition a_protocol_struct.h:18
Definition a_protocol.h:313