split into multibe .proto files

added strict compiler errors
This commit is contained in:
2024-02-15 18:28:01 +01:00
parent 9f103866f2
commit ac75c9bbf8
9 changed files with 60 additions and 27 deletions

View File

@@ -5,6 +5,8 @@
#include "FreeRTOS.h"
#include "CLSAddress.h"
#include "firmware.pb.h"
#include "cls_device.pb.h"
#include "usb.pb.h"
// Define thread flags
#define FLAG_FDCAN_RX_FIFO0 (1<<0)

View File

@@ -2,6 +2,8 @@
#include "fatfs.h"
#include "usbd_cdc_if.h"
#include "firmware.pb.h"
#include "cls_device.pb.h"
#include "usb.pb.h"
#include "cmsis_os2.h"
#include <pb_encode.h>
#include "UsbDataHandler.h"

View File

@@ -4,6 +4,8 @@
#include "firmware.pb.h"
#include "usb_device.h"
#include <pb_decode.h>
#include "cls_device.pb.h"
#include "usb.pb.h"
/* Declare the thread function */
#define NUM_BUFFERS 4 // Define the number of buffers you want to use

View File

@@ -115,7 +115,7 @@ void DataClbk_ResponseDeviceList(void* msg, uint32_t length);
void DataClbk_RequestDeviceList(void* msg, uint32_t length);
#include "firmware.pb.h"
#include "usb.pb.h"
void USBDataResonse(void * msg, const pb_msgdesc_t *fields, UsbPackageType typeid);
#ifdef __cplusplus

View File

@@ -121,7 +121,12 @@ add_subdirectory("Application")
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/lib/nanopb/extra)
find_package(Nanopb REQUIRED)
include_directories(${NANOPB_INCLUDE_DIRS})
nanopb_generate_cpp(PROTO_SRCS PROTO_HDRS RELPATH proto proto/firmware.proto)
nanopb_generate_cpp(PROTO_SRCS PROTO_HDRS RELPATH proto
proto/firmware.proto
proto/cls_device.proto
proto/light.proto
proto/usb.proto
)
add_library(PROTOS ${PROTO_SRCS} ${PROTO_HDRS})
target_include_directories(PROTOS PUBLIC ${NANOPB_INCLUDE_DIRS} ${PROJECT_BINARY_DIR})
include_directories(${PROJECT_BINARY_DIR})
@@ -137,7 +142,13 @@ target_link_libraries(${CMAKE_PROJECT_NAME} PUBLIC Tasks CLS CLS_BSP ulog)
target_link_libraries(${CMAKE_PROJECT_NAME} PUBLIC uart_driver)
#target_link_libraries(${CMAKE_PROJECT_NAME} PUBLIC lwrb)
target_compile_options(${CMAKE_PROJECT_NAME} PRIVATE -std=c2x)
target_compile_options(${CMAKE_PROJECT_NAME} PRIVATE
-Wall
-Wextra
-Werror
-Wpedantic
-std=c2x
)
# Compiler options
target_compile_options(${CMAKE_PROJECT_NAME} PRIVATE

19
proto/cls_device.proto Normal file
View File

@@ -0,0 +1,19 @@
syntax = "proto2";
import "nanopb.proto";
message RequestDeviceList {
required uint32 msg =1;
}
message Device {
required bool available =1;
required uint32 canid = 2;
required uint32 device = 3;
required uint32 counter = 4;
}
message ResponseDeviceList {
repeated Device devices = 1 [(nanopb).max_count = 18];
}

View File

@@ -3,16 +3,6 @@ syntax = "proto2";
import "nanopb.proto";
enum UsbPackageType {
FIRMWARESTART = 3841; // 0xF01
FIRMWAREPACKAGE = 3842; // 0xF02
FIRMWAREDONE = 3843; // 0xF03
FIRMWAREPACKAGEACK = 3844; // 0xF04
FIRMWAREFILECHECK = 3845; // 0xF05
FIRMWAREUPDATEDONE = 3846; // 0xF06
REQUEST_DEVICE_LIST = 1000;
RESPONSE_DEVICE_LIST = 1001;
}
message FirmwareStart {
required string name = 1 [(nanopb).max_size = 32];
@@ -57,17 +47,3 @@ message FirmwareUpdateDone {
message RequestDeviceList {
required uint32 msg =1;
}
message Device {
required bool available =1;
required uint32 canid = 2;
required uint32 device = 3;
required uint32 counter = 4;
}
message ResponseDeviceList {
repeated Device devices = 1 [(nanopb).max_count = 18];
}

4
proto/light.proto Normal file
View File

@@ -0,0 +1,4 @@
syntax = "proto2";
import "nanopb.proto";

17
proto/usb.proto Normal file
View File

@@ -0,0 +1,17 @@
syntax = "proto2";
import "nanopb.proto";
enum UsbPackageType {
FIRMWARESTART = 3841; // 0xF01
FIRMWAREPACKAGE = 3842; // 0xF02
FIRMWAREDONE = 3843; // 0xF03
FIRMWAREPACKAGEACK = 3844; // 0xF04
FIRMWAREFILECHECK = 3845; // 0xF05
FIRMWAREUPDATEDONE = 3846; // 0xF06
REQUEST_DEVICE_LIST = 1000;
RESPONSE_DEVICE_LIST = 1001;
}