#include #include #include #include #include #include #include #include #include #include #include "inc/hw_memmap.h" #include "inc/hw_types.h" #include "inc/hw_uart.h" #include "driverlib/gpio.h" #include "Drivers/USB_Communication/USBCDCD.h" #include "drivers/Valves/Valve.h" #include "Stub_Status.h" void Stub_ValveRequest(MessageContainer* requestContainer) { MessageContainer responseContainer; uint32_t status = PASSED; StubValveRequest* request = stub_valve_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data); /* request->valveid request->inkflow request->valveon */ if(request->inkflow == 3) { Control3WayValvesWithCallback (request->valveid, request->valveon, NULL); } else { Valve_Set(request->valveid, request->valveon); } StubValveResponse response = STUB_VALVE_RESPONSE__INIT; status_response(status,&response.status, &response.statusword ,&response.has_statusword); responseContainer = createContainer(MESSAGE_TYPE__StubValveResponse, requestContainer->token, true, &response, &stub_valve_response__pack, &stub_valve_response__get_packed_size); //free(request); //------------------------------------------------------------------------------------------- uint8_t* container_buffer = malloc(message_container__get_packed_size(&responseContainer)); size_t container_size = message_container__pack(&responseContainer, container_buffer); free(responseContainer.data.data); SendChars((char*)container_buffer, container_size); //free(container_buffer); //free(requestContainer); stub_valve_request__free_unpacked(request,NULL); }