43 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/**
 | 
						|
 * @author Rémi Heredero
 | 
						|
 * @version. 0.0.0
 | 
						|
 * @date August 2023
 | 
						|
 * @file car.h
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef CAR_H
 | 
						|
#define	CAR_H
 | 
						|
 | 
						|
/*************
 | 
						|
 * MODULE ID *
 | 
						|
 *************/
 | 
						|
#define ID_CONTROL      1   // Control the three-wheeler
 | 
						|
#define ID_JOYSTICK     2   // Inform control avout current joystick state
 | 
						|
#define ID_DISPLAY      3   // User interface to display informations
 | 
						|
#define ID_DRIVE        4   // Drive power motor of the three-wheeler
 | 
						|
#define ID_STEERING     5   // Drive the direction motor og the three-wheeler
 | 
						|
#define ID_SUPPLY       6   // Information about batteries, current, ...
 | 
						|
#define ID_BROADCAST    0   // Message to and from any module
 | 
						|
#define ID_DEBUG        0   // Message to and from any module
 | 
						|
 | 
						|
typedef struct {
 | 
						|
    uint8_t     CONTROL_STEERING_MODE;
 | 
						|
    uint8_t     CONTROL_ALIVE_TIME;
 | 
						|
    uint32_t    CONTROL_SPEED_FACTOR;
 | 
						|
    uint32_t    CONTROL_POWER_FACTOR;
 | 
						|
    uint32_t    CONTROL_STEERING_FACTOR;
 | 
						|
    uint8_t     CONTROL_MAX_SPEED_FW;
 | 
						|
    uint8_t     CONTROL_MAX_SPEED_BW;
 | 
						|
    uint8_t     JOYSTICK_ALIVE_TIME;
 | 
						|
    uint8_t     DISPLAY_ALIVE_TIME;
 | 
						|
    uint8_t     DRIVE_SPEED_TIME;
 | 
						|
    uint8_t     DRIVE_STOP_TIME;
 | 
						|
    uint8_t     DRIVE_ALIVE_TIME;
 | 
						|
    uint8_t     STEERING_ALIVE_TIME;
 | 
						|
    uint8_t     BATTERY_ALIVE_TIME;
 | 
						|
} CAR_CST;
 | 
						|
 | 
						|
 | 
						|
#endif	/* CAR_H */
 | 
						|
 |