ROM Comm / Mbed 2 deprecated rixen_sim_STM32F103

Dependencies:   mbed mbed-STM32F103C8T6

Committer:
RogerJKelly
Date:
Wed Jun 10 20:15:48 2020 +0000
Revision:
7:467e350d1a10
Parent:
6:41a4ad385daa
RIXEN SIM with Maple Mini

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pangsk 6:41a4ad385daa 1 #ifndef ECU_SIMULATOR_H
pangsk 6:41a4ad385daa 2 #define ECU_SIMULATOR_H
pangsk 0:908be729d27c 3
RogerJKelly 7:467e350d1a10 4 //#define CANSPEED_125 125000 // CAN speed at 125 kbps
RogerJKelly 7:467e350d1a10 5 //#define CANSPEED_250 250000 // CAN speed at 250 kbps
pangsk 0:908be729d27c 6 #define CANSPEED_500 500000 // CAN speed at 500 kbps
pangsk 0:908be729d27c 7
pangsk 0:908be729d27c 8 /* Details from http://en.wikipedia.org/wiki/OBD-II_PIDs */
pangsk 6:41a4ad385daa 9 #define MODE1 0x01 //Show current data
pangsk 6:41a4ad385daa 10 #define MODE2 0x02 //Show freeze frame data
pangsk 6:41a4ad385daa 11 #define MODE3 0x03 //Show stored Diagnostic Trouble Codes
pangsk 6:41a4ad385daa 12 #define MODE4 0x04 //Clear Diagnostic Trouble Codes and stored values
pangsk 6:41a4ad385daa 13
pangsk 6:41a4ad385daa 14 #define PID_SUPPORTED 0x00
pangsk 6:41a4ad385daa 15 #define MONITOR_STATUS 0x01
pangsk 0:908be729d27c 16 #define ENGINE_COOLANT_TEMP 0x05
pangsk 0:908be729d27c 17 #define ENGINE_RPM 0x0C
pangsk 0:908be729d27c 18 #define VEHICLE_SPEED 0x0D
pangsk 0:908be729d27c 19 #define MAF_SENSOR 0x10
pangsk 0:908be729d27c 20 #define THROTTLE 0x11
pangsk 0:908be729d27c 21 #define O2_VOLTAGE 0x14
pangsk 0:908be729d27c 22
pangsk 6:41a4ad385daa 23 #define MODE1_RESPONSE 0x41
pangsk 6:41a4ad385daa 24 #define MODE3_RESPONSE 0x43
pangsk 6:41a4ad385daa 25 #define MODE4_RESPONSE 0x44
pangsk 0:908be729d27c 26 #define PID_REQUEST 0x7DF
pangsk 0:908be729d27c 27 #define PID_REPLY 0x7E8
pangsk 0:908be729d27c 28
RogerJKelly 7:467e350d1a10 29 #define ESPAR_CMD 0x7A0 // COMMAND ID
RogerJKelly 7:467e350d1a10 30 #define ESPAR_RES 0x73C // response id
RogerJKelly 7:467e350d1a10 31
RogerJKelly 7:467e350d1a10 32 typedef struct{
pangsk 6:41a4ad385daa 33 unsigned char coolant_temp;
pangsk 6:41a4ad385daa 34 unsigned int engine_rpm;
pangsk 6:41a4ad385daa 35 unsigned char throttle_position;
pangsk 6:41a4ad385daa 36 unsigned char vehicle_speed;
pangsk 6:41a4ad385daa 37 unsigned int maf_airflow;
pangsk 6:41a4ad385daa 38 unsigned int o2_voltage;
pangsk 6:41a4ad385daa 39 unsigned char dtc;
RogerJKelly 7:467e350d1a10 40 unsigned char active_fault;
pangsk 6:41a4ad385daa 41 }ecu_t;
pangsk 6:41a4ad385daa 42
pangsk 6:41a4ad385daa 43 extern ecu_t ecu;
pangsk 6:41a4ad385daa 44
pangsk 0:908be729d27c 45 namespace mbed {
pangsk 0:908be729d27c 46
pangsk 6:41a4ad385daa 47 class ecu_sim{
pangsk 0:908be729d27c 48
pangsk 6:41a4ad385daa 49 public:
pangsk 0:908be729d27c 50
pangsk 6:41a4ad385daa 51 ecu_sim(int can_speed);
pangsk 6:41a4ad385daa 52 void canspeed(int can_speed);
pangsk 6:41a4ad385daa 53 unsigned char request(void);
pangsk 6:41a4ad385daa 54
pangsk 6:41a4ad385daa 55 private:
pangsk 0:908be729d27c 56
pangsk 6:41a4ad385daa 57 int i;
pangsk 6:41a4ad385daa 58
pangsk 6:41a4ad385daa 59 };
pangsk 6:41a4ad385daa 60 }
pangsk 0:908be729d27c 61
pangsk 0:908be729d27c 62
pangsk 0:908be729d27c 63
pangsk 0:908be729d27c 64 #endif