The Code Repository for the REV0 Steering Wheel.
Dependencies: CANBuffer KS0108_fork mbed-rtos mbed CAN Addresses
Fork of REVO_Updated_Steering by
Steering.h@32:535acb159709, 2014-11-15 (annotated)
- Committer:
- tmccurbin
- Date:
- Sat Nov 15 19:07:13 2014 +0000
- Revision:
- 32:535acb159709
- Parent:
- 26:e0256fd314eb
- Child:
- 35:b42afc973902
New font, Toggle Button Added
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kiran_mbed | 0:313541d8f8be | 1 | #ifndef _STEERING_H |
kiran_mbed | 0:313541d8f8be | 2 | #define _STEERING_H |
kiran_mbed | 0:313541d8f8be | 3 | |
kiran_mbed | 0:313541d8f8be | 4 | #include "mbed.h" |
palimar | 3:fcec60c7f2c6 | 5 | #include "rtos.h" |
kiran_mbed | 0:313541d8f8be | 6 | #include "KS0108.h" |
kiran_mbed | 0:313541d8f8be | 7 | |
tmccurbin | 32:535acb159709 | 8 | #include "Arial10.h" |
kiran_mbed | 0:313541d8f8be | 9 | #include "Arial12.h" |
kiran_mbed | 0:313541d8f8be | 10 | #include "Arial14.h" |
kiran_mbed | 0:313541d8f8be | 11 | #include "Comic24.h" |
kiran_mbed | 0:313541d8f8be | 12 | #include "vivaldi16.h" |
palimar | 16:d2953809fb31 | 13 | #include "CANBuffer.h" |
kiran_mbed | 0:313541d8f8be | 14 | |
palimar | 17:e97c889873e2 | 15 | #include "LPCDigitalIn.h" |
palimar | 17:e97c889873e2 | 16 | |
kiran_mbed | 0:313541d8f8be | 17 | #define SWITCH_ID 410 |
kiran_mbed | 0:313541d8f8be | 18 | |
kiran_mbed | 0:313541d8f8be | 19 | #define BATTERY_VOLTAGE_ID 0x304 |
kiran_mbed | 0:313541d8f8be | 20 | #define BATTERY_POWER_ID 0x306 |
kiran_mbed | 0:313541d8f8be | 21 | #define BATTERY_CURRENT_ID 0x305 |
kiran_mbed | 0:313541d8f8be | 22 | |
palimar | 21:56890c41ecf1 | 23 | #define PCM_STATE_ID 0x201 |
kiran_mbed | 0:313541d8f8be | 24 | |
kiran_mbed | 0:313541d8f8be | 25 | #define BATTERY_MIN_CELLVOLTAGE_ID 0x301 |
kiran_mbed | 0:313541d8f8be | 26 | #define BATTERY_MAX_CELLVOLTAGE_ID 0x300 |
kiran_mbed | 0:313541d8f8be | 27 | #define BATTERY_AVG_CELLVOLTAGE_ID 0x302 |
kiran_mbed | 0:313541d8f8be | 28 | |
kiran_mbed | 0:313541d8f8be | 29 | #define BATTERY_MIN_CELLTEMPERATURE_ID 0x30A |
kiran_mbed | 0:313541d8f8be | 30 | #define BATTERY_MAX_CELLTEMPERATURE_ID 0x309 |
kiran_mbed | 0:313541d8f8be | 31 | #define BATTERY_AVG_CELLTEMPERATURE_ID 0x30B |
kiran_mbed | 0:313541d8f8be | 32 | #define AMS_BATTERY_STATE 0x30E // AIRS 7 and 6 // Precharge 3 |
kiran_mbed | 0:313541d8f8be | 33 | |
palimar | 26:e0256fd314eb | 34 | #define HOME_SCREEN 0 |
tmccurbin | 32:535acb159709 | 35 | #define BATTERY_SCREEN 1 |
palimar | 26:e0256fd314eb | 36 | |
kiran_mbed | 0:313541d8f8be | 37 | Serial pc(USBTX,USBRX); |
palimar | 23:6681a38918c6 | 38 | CANBuffer CAN_Steering_Buffer(CAN1, MEDIUM, p3_26); |
palimar | 16:d2953809fb31 | 39 | |
kiran_mbed | 0:313541d8f8be | 40 | |
kiran_mbed | 0:313541d8f8be | 41 | KS0108 display(p26, p21, p22, p23, p25, p24, p8, p7, p6, p5, p13, p14, p12, p11); |
palimar | 23:6681a38918c6 | 42 | //Ticker call_ledstream; |
kiran_mbed | 0:313541d8f8be | 43 | |
palimar | 16:d2953809fb31 | 44 | LPCDigitalOut l1(p1_28,1);// SW2 |
palimar | 16:d2953809fb31 | 45 | LPCDigitalOut l2(p1_26,1);// SW4 |
kiran_mbed | 0:313541d8f8be | 46 | |
palimar | 16:d2953809fb31 | 47 | LPCDigitalOut l3(p1_24,1);// SW6 |
palimar | 16:d2953809fb31 | 48 | LPCDigitalOut l4(p0_24,1);// SW8 |
kiran_mbed | 0:313541d8f8be | 49 | |
palimar | 16:d2953809fb31 | 50 | LPCDigitalOut u1(p1_14,0);// SW9 |
palimar | 16:d2953809fb31 | 51 | LPCDigitalOut u2(p1_9,0);// SW11 |
kiran_mbed | 0:313541d8f8be | 52 | |
palimar | 16:d2953809fb31 | 53 | LPCDigitalOut u3(p1_4,0);// SW13 |
palimar | 16:d2953809fb31 | 54 | LPCDigitalOut u4(p1_0,0);// SW15 |
kiran_mbed | 0:313541d8f8be | 55 | |
kiran_mbed | 0:313541d8f8be | 56 | AnalogOut ledstream(p18); |
kiran_mbed | 0:313541d8f8be | 57 | |
kiran_mbed | 0:313541d8f8be | 58 | //SW1 - SW3 |
palimar | 16:d2953809fb31 | 59 | LPCDigitalOut boSW1(p1_29,1); |
palimar | 18:674450a9d98d | 60 | LPCDigitalIn biSWBR(p1_27, PullDown); //BRight |
kiran_mbed | 0:313541d8f8be | 61 | |
palimar | 16:d2953809fb31 | 62 | LPCDigitalOut boSW5(p1_25,1); |
palimar | 18:674450a9d98d | 63 | LPCDigitalIn biSWBL(p1_22, PullDown); //BLeft |
kiran_mbed | 0:313541d8f8be | 64 | |
palimar | 16:d2953809fb31 | 65 | LPCDigitalOut boSW10(p1_10,1); |
palimar | 18:674450a9d98d | 66 | LPCDigitalIn biSWTR(p1_8, PullDown); //TRight |
kiran_mbed | 0:313541d8f8be | 67 | |
palimar | 16:d2953809fb31 | 68 | LPCDigitalOut boSW14(p1_1,1); |
palimar | 18:674450a9d98d | 69 | LPCDigitalIn biSWTL(p0_25, PullDown); //TLeft |
kiran_mbed | 0:313541d8f8be | 70 | |
kiran_mbed | 0:313541d8f8be | 71 | typedef union convert{ |
kiran_mbed | 0:313541d8f8be | 72 | float FLOAT; |
kiran_mbed | 0:313541d8f8be | 73 | char C_FLOAT[4]; |
kiran_mbed | 0:313541d8f8be | 74 | }ftc; |
kiran_mbed | 0:313541d8f8be | 75 | |
kiran_mbed | 0:313541d8f8be | 76 | char SwitchName[15][13]={ |
kiran_mbed | 0:313541d8f8be | 77 | "fuse", |
kiran_mbed | 0:313541d8f8be | 78 | "ams", |
kiran_mbed | 0:313541d8f8be | 79 | "imd", |
kiran_mbed | 0:313541d8f8be | 80 | "pcm", |
kiran_mbed | 0:313541d8f8be | 81 | "brkp", |
kiran_mbed | 0:313541d8f8be | 82 | "lft", |
kiran_mbed | 0:313541d8f8be | 83 | "intl", |
kiran_mbed | 0:313541d8f8be | 84 | "brko", |
kiran_mbed | 0:313541d8f8be | 85 | "ckpt", |
kiran_mbed | 0:313541d8f8be | 86 | "rgt", |
kiran_mbed | 0:313541d8f8be | 87 | "hvd", |
kiran_mbed | 0:313541d8f8be | 88 | "tsms" |
kiran_mbed | 0:313541d8f8be | 89 | }; |
kiran_mbed | 0:313541d8f8be | 90 | |
kiran_mbed | 0:313541d8f8be | 91 | int SwitchPosition[13][2]={ |
kiran_mbed | 0:313541d8f8be | 92 | {0,16}, //fuse |
kiran_mbed | 0:313541d8f8be | 93 | {25,16}, //ams |
kiran_mbed | 0:313541d8f8be | 94 | {50,16}, //imd |
kiran_mbed | 0:313541d8f8be | 95 | {70,16}, //pcm |
kiran_mbed | 0:313541d8f8be | 96 | {93,16}, //brkp |
kiran_mbed | 0:313541d8f8be | 97 | {117,16}, //lft |
kiran_mbed | 0:313541d8f8be | 98 | {0,32}, //intl |
kiran_mbed | 0:313541d8f8be | 99 | {17,32}, //brko |
kiran_mbed | 0:313541d8f8be | 100 | {42,32}, //ckpt |
kiran_mbed | 0:313541d8f8be | 101 | {65,32}, //rgt |
kiran_mbed | 0:313541d8f8be | 102 | {81,32}, //hvd |
kiran_mbed | 0:313541d8f8be | 103 | {102,32}, //tsm |
kiran_mbed | 0:313541d8f8be | 104 | }; |
kiran_mbed | 0:313541d8f8be | 105 | |
tmccurbin | 32:535acb159709 | 106 | int maxScreen=2; |
palimar | 26:e0256fd314eb | 107 | int curr_screen; |
palimar | 9:e946cafa3cae | 108 | |
palimar | 9:e946cafa3cae | 109 | char drive_status; |
palimar | 13:1f05dcd9ae0e | 110 | char drive_status_request; |
palimar | 9:e946cafa3cae | 111 | char reset_body; |
palimar | 9:e946cafa3cae | 112 | |
palimar | 23:6681a38918c6 | 113 | |
palimar | 9:e946cafa3cae | 114 | |
palimar | 21:56890c41ecf1 | 115 | Mutex ds_mutex; |
palimar | 21:56890c41ecf1 | 116 | |
kiran_mbed | 0:313541d8f8be | 117 | #endif /* STEERING_H */ |