create alive_checker

This commit is contained in:
2023-08-25 18:23:36 +02:00
parent deba3fbf0d
commit 88096a007c
7 changed files with 149 additions and 24 deletions

View File

@@ -6,7 +6,94 @@
*/
#include "../middleware/can_interface.h"
#include "car.h"
#include "../app/factory/factory.h"
void CM_controller_alive(void* p) {
typedef union {
struct {
uint8_t byte0;
uint8_t byte1;
uint8_t byte2;
uint8_t byte3;
} separate;
struct {
uint32_t bytes;
} full;
} BYTES_4;
void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
switch(idSender){
case 0: // Broadcast / Debug
break;
case 2: // Joystick
if(idMsg == 0x1) { // JOY_MESURE
}
if(idMsg == 0xF) { // JOY_ALIVE
ALIVE_CHECKER_ISALIVE(ACjoy());
}
break;
case 3: // Display
break;
case 4: // Drive
break;
case 5: // Steering
break;
case 6: // Supply
break;
case 7: // Undefined
break;
}
}
void CM_CONTROLLER_ALIVE(void* p) {
CAN_Send(0x0, 0xF, 0);
}
}
void CM_JOY_SETUP(void* p) {
BYTES_4 joy;
joy.separate.byte0 = CAR_CST.JOYSTICK_MODE;
joy.separate.byte1 = CAR_CST.JOYSTICK_PARAM1;
joy.separate.byte2 = CAR_CST.JOYSTICK_PARAM2;
joy.separate.byte3 = CAR_CST.JOYSTICK_ALIVE_TIME;
CAN_Send(2, 0, joy.full.bytes);
}
void CM_DISPLAY_SETUP(void* p) {
}
void CM_DISPLAY_SPEED(void* p) {
}
void CM_DISPLAY_DIRECTION(void* p) {
}
void CM_DRIVE_SETUP(void* p) {
}
void CM_DRIVE_POWER(void* p) {
}
void CM_STEERING_SETUP(void* p) {
}
void CM_STEERING_SET(void* p) {
}
void CM_SETUP_CONTROL(void* p) {
}