Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: SPI_TFTx2 TFT_fonts TOUCH_TFTx2 mbed
Fork of CANary by
utility.h@126:e0d039096891, 2013-07-21 (annotated)
- Committer:
- TickTock
- Date:
- Sun Jul 21 11:23:57 2013 +0000
- Branch:
- Metric
- Revision:
- 126:e0d039096891
- Parent:
- 124:0d622967b764
- Parent:
- 79:68f0dd8d1f19
- Child:
- 128:25314f339565
attempt to restore default;
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| TickTock | 13:62e0f7f39ff5 | 1 | // utility.h |
| TickTock | 13:62e0f7f39ff5 | 2 | |
| TickTock | 12:8e42d7ba8468 | 3 | #include "CAN.h" |
| TickTock | 13:62e0f7f39ff5 | 4 | #include "common.h" |
| TickTock | 23:cd03f9c3395e | 5 | #include "TOUCH_TFTx2.h" |
| TickTock | 76:fb6779d0963e | 6 | #include "beep.h" |
| leafman | 98:9f8bab96edff | 7 | #include <cctype> |
| TickTock | 110:ffddff3ad2f2 | 8 | #include "ff.h" |
| TickTock | 12:8e42d7ba8468 | 9 | |
| TickTock | 13:62e0f7f39ff5 | 10 | extern Timer timer; |
| TickTock | 79:68f0dd8d1f19 | 11 | extern Ticker msgReq; |
| TickTock | 75:77bd26829dca | 12 | extern volatile unsigned short secsNoMsg; |
| TickTock | 75:77bd26829dca | 13 | extern volatile unsigned short secsNoTouch; |
| TickTock | 13:62e0f7f39ff5 | 14 | extern volatile bool canIdle; |
| TickTock | 13:62e0f7f39ff5 | 15 | extern volatile bool userIdle; |
| TickTock | 13:62e0f7f39ff5 | 16 | extern char displayLog[20][40]; |
| TickTock | 13:62e0f7f39ff5 | 17 | extern unsigned char displayLoc; |
| TickTock | 13:62e0f7f39ff5 | 18 | extern bool touched; |
| TickTock | 13:62e0f7f39ff5 | 19 | extern bool logOpen; |
| TickTock | 39:eef8beac7411 | 20 | extern bool logCP; // Turbo3 |
| TickTock | 48:d1ce92104a1f | 21 | extern bool yesBattLog ; // gg - Batt Log |
| TickTock | 40:0e6e71a7323f | 22 | extern bool showCP; |
| TickTock | 13:62e0f7f39ff5 | 23 | extern char writeBuffer[maxBufLen][13]; |
| TickTock | 13:62e0f7f39ff5 | 24 | extern volatile int writePointer; |
| TickTock | 76:fb6779d0963e | 25 | extern int readPointer; |
| TickTock | 13:62e0f7f39ff5 | 26 | extern DigitalOut led1,led2,led3,led4; |
| TickTock | 13:62e0f7f39ff5 | 27 | extern char indexLastMsg[0x800]; |
| TickTock | 13:62e0f7f39ff5 | 28 | extern unsigned char dMode[2]; |
| TickTock | 13:62e0f7f39ff5 | 29 | extern unsigned char msgChanged[100]; |
| TickTock | 124:0d622967b764 | 30 | extern unsigned char battData[BatDataBufMax]; // BatDataBufMax |
| TickTock | 13:62e0f7f39ff5 | 31 | extern CANMessage lastMsg[100]; |
| TickTock | 13:62e0f7f39ff5 | 32 | extern CAN can1,can2; |
| leafman | 98:9f8bab96edff | 33 | extern unsigned int fwCount; |
| TickTock | 13:62e0f7f39ff5 | 34 | extern DigitalOut can1SleepMode,can2SleepMode; |
| TickTock | 34:4751a8259b18 | 35 | extern bool tick; |
| garygid | 69:6bfdfc002036 | 36 | extern bool ZeroSecTick; |
| TickTock | 34:4751a8259b18 | 37 | extern bool headlights; |
| TickTock | 23:cd03f9c3395e | 38 | extern TOUCH_TFTx2 tt; |
| TickTock | 35:5acbd8a64a89 | 39 | extern float ledHi; |
| TickTock | 35:5acbd8a64a89 | 40 | extern float ledLo; |
| TickTock | 35:5acbd8a64a89 | 41 | extern unsigned short pollInt; |
| TickTock | 35:5acbd8a64a89 | 42 | extern float scale12V; |
| TickTock | 36:dbd39c315258 | 43 | extern bool playbackEn; |
| TickTock | 36:dbd39c315258 | 44 | extern bool playbackOpen; |
| TickTock | 36:dbd39c315258 | 45 | extern bool step; |
| TickTock | 36:dbd39c315258 | 46 | extern float playbackInt; |
| TickTock | 40:0e6e71a7323f | 47 | extern signed long mWs_x4; |
| TickTock | 40:0e6e71a7323f | 48 | extern unsigned short numWsamples; |
| TickTock | 41:8d4609ea7259 | 49 | extern signed long motorRPM; |
| TickTock | 41:8d4609ea7259 | 50 | extern unsigned short numSsamples; |
| TickTock | 48:d1ce92104a1f | 51 | extern unsigned char skin; |
| TickTock | 50:83d5864c64a0 | 52 | extern unsigned char dtePeriod; |
| TickTock | 76:fb6779d0963e | 53 | extern Beep spkr; |
| TickTock | 78:a383971fe02f | 54 | extern unsigned char reqMsgCnt; |
| TickTock | 108:29b5a760adc2 | 55 | extern float maxTemp; |
| TickTock | 102:fd19f777a0b4 | 56 | extern unsigned long Ah_x10000; |
| TickTock | 102:fd19f777a0b4 | 57 | extern unsigned long SOC_x10000; |
| TickTock | 102:fd19f777a0b4 | 58 | extern unsigned short SOH_x100; |
| leafman | 98:9f8bab96edff | 59 | extern bool metric; |
| TickTock | 100:63a7456fc972 | 60 | extern unsigned char lastDMode[2]; |
| TickTock | 100:63a7456fc972 | 61 | extern unsigned char whichTouched; |
| TickTock | 120:041edeec08f5 | 62 | extern float unloadedV_x2,Resr,curRmax,curRmin,redRmax,redRmin,incRmax,incRmin; |
| TickTock | 121:553faf139a20 | 63 | extern signed short Imax, Imin; |
| TickTock | 118:02010b18efdc | 64 | extern unsigned char tNavRow ; // gg - 4x4 |
| TickTock | 118:02010b18efdc | 65 | extern char revStr[7]; // gg - version |
| TickTock | 118:02010b18efdc | 66 | extern bool debugMode; |
| TickTock | 121:553faf139a20 | 67 | extern bool shunt[96]; |
| TickTock | 122:138a40892a4c | 68 | extern float accV; |
| TickTock | 12:8e42d7ba8468 | 69 | |
| TickTock | 12:8e42d7ba8468 | 70 | extern "C" { |
| TickTock | 12:8e42d7ba8468 | 71 | void mbed_reset(); |
| TickTock | 13:62e0f7f39ff5 | 72 | void RTC_IRQHandler(); |
| TickTock | 13:62e0f7f39ff5 | 73 | void RTC_Init (void); |
| TickTock | 93:c2402e8cd0e2 | 74 | void printMsg (char *msg); |
| TickTock | 13:62e0f7f39ff5 | 75 | void touch_ISR(); |
| TickTock | 13:62e0f7f39ff5 | 76 | unsigned short getTimeStamp(); |
| TickTock | 13:62e0f7f39ff5 | 77 | void logCan (char mType, CANMessage canRXmsg); |
| TickTock | 13:62e0f7f39ff5 | 78 | void logTS (); |
| TickTock | 93:c2402e8cd0e2 | 79 | void logEvent (char * errMsg); // gg - messeges |
| TickTock | 78:a383971fe02f | 80 | //void sendCPreq(); |
| TickTock | 78:a383971fe02f | 81 | //void sendTreq(); |
| TickTock | 78:a383971fe02f | 82 | void sendReq(); |
| TickTock | 36:dbd39c315258 | 83 | void autoPollISR(); |
| TickTock | 36:dbd39c315258 | 84 | void playbackISR(); |
| TickTock | 13:62e0f7f39ff5 | 85 | void recieve1(); |
| TickTock | 13:62e0f7f39ff5 | 86 | void recieve2(); |
| TickTock | 36:dbd39c315258 | 87 | void doNothing(); |
| TickTock | 22:a43df3905863 | 88 | unsigned char buttonX(unsigned short X, unsigned char columns); |
| TickTock | 22:a43df3905863 | 89 | unsigned char buttonY(unsigned short Y,unsigned char rows); |
| TickTock | 23:cd03f9c3395e | 90 | void saveConfig(); |
| TickTock | 25:ddf0ec209f03 | 91 | void readConfig(); |
| TickTock | 25:ddf0ec209f03 | 92 | void upDate(unsigned char field, bool updownbar); |
| TickTock | 39:eef8beac7411 | 93 | void logPackVoltages(); // Turbo3 |
| TickTock | 108:29b5a760adc2 | 94 | void tripLog(); // Turbo3 |
| leafman | 98:9f8bab96edff | 95 | void updateFirmware(); // LM - Update firmware off USB |
| TickTock | 108:29b5a760adc2 | 96 | bool detectUSB(); |
| TickTock | 25:ddf0ec209f03 | 97 | } |
| TickTock | 12:8e42d7ba8468 | 98 | |
| TickTock | 12:8e42d7ba8468 | 99 | //LEAF OBD |
| TickTock | 12:8e42d7ba8468 | 100 | //1: |
| TickTock | 12:8e42d7ba8468 | 101 | //2: |
| TickTock | 12:8e42d7ba8468 | 102 | //3: AVCAN-L White/Blue |
| TickTock | 12:8e42d7ba8468 | 103 | //4: VSS-Shield |
| TickTock | 12:8e42d7ba8468 | 104 | //5: VSS Brown,White/Brown |
| TickTock | 12:8e42d7ba8468 | 105 | //6: CARCAN-H Green |
| TickTock | 12:8e42d7ba8468 | 106 | //7: |
| TickTock | 12:8e42d7ba8468 | 107 | //8: 12V-SW Orange,White/Orange |
| TickTock | 12:8e42d7ba8468 | 108 | //9: |
| TickTock | 12:8e42d7ba8468 | 109 | //10: |
| TickTock | 12:8e42d7ba8468 | 110 | //11: AVCAN-H Blue |
| TickTock | 12:8e42d7ba8468 | 111 | //12: EVCAN-L White/Grey |
| TickTock | 12:8e42d7ba8468 | 112 | //13: EVCAN-H Grey |
| TickTock | 12:8e42d7ba8468 | 113 | //14: CARCAN-L White/Green |
| TickTock | 12:8e42d7ba8468 | 114 | //15: |
| TickTock | 12:8e42d7ba8468 | 115 | //16: 12V-AON Red/Blue,Blue/Red |
| TickTock | 12:8e42d7ba8468 | 116 | |
| TickTock | 12:8e42d7ba8468 | 117 | //VP230 |
| TickTock | 12:8e42d7ba8468 | 118 | //1:D |
| TickTock | 12:8e42d7ba8468 | 119 | //2:GND |
| TickTock | 12:8e42d7ba8468 | 120 | //3:VCC |
| TickTock | 12:8e42d7ba8468 | 121 | //4:R |
| TickTock | 12:8e42d7ba8468 | 122 | //5:Vref |
| TickTock | 12:8e42d7ba8468 | 123 | //6:CANL |
| TickTock | 12:8e42d7ba8468 | 124 | //7:CANH |
| TickTock | 12:8e42d7ba8468 | 125 | //8:RS |
| TickTock | 12:8e42d7ba8468 | 126 | |
| TickTock | 12:8e42d7ba8468 | 127 | //LPC1768 |
| TickTock | 12:8e42d7ba8468 | 128 | //1: VSS |
| TickTock | 12:8e42d7ba8468 | 129 | //2: NC:VIN (4.5-9V supply) |
| TickTock | 12:8e42d7ba8468 | 130 | //3: NC:VB |
| TickTock | 12:8e42d7ba8468 | 131 | //4: NC:nR |
| TickTock | 22:a43df3905863 | 132 | //5: SPI:Reset |
| TickTock | 22:a43df3905863 | 133 | //6: SPI:CS0 |
| TickTock | 22:a43df3905863 | 134 | //7: SPI:CS1 |
| TickTock | 12:8e42d7ba8468 | 135 | //8: CAN1:Sleep --> 8:CAN1:RS |
| TickTock | 12:8e42d7ba8468 | 136 | //9: CAN1:RX --> 4:CAN1:R |
| TickTock | 12:8e42d7ba8468 | 137 | //10: CAN1:TX --> 1:CAN1:D |
| TickTock | 12:8e42d7ba8468 | 138 | //11: SPI:MOSI |
| TickTock | 12:8e42d7ba8468 | 139 | //12: SPI:MISO |
| TickTock | 12:8e42d7ba8468 | 140 | //13: SPI:SCLK |
| TickTock | 12:8e42d7ba8468 | 141 | //14: NC:Ain |
| TickTock | 12:8e42d7ba8468 | 142 | //15: MON12V --> 4K to 12V, 1K to VSS (To be implemented) |
| TickTock | 12:8e42d7ba8468 | 143 | //16: TOUCH_X+ |
| TickTock | 12:8e42d7ba8468 | 144 | //17: TOUCH_X- |
| TickTock | 12:8e42d7ba8468 | 145 | //18: NC:Aout |
| TickTock | 12:8e42d7ba8468 | 146 | //19: TOUCH_Y+ |
| TickTock | 12:8e42d7ba8468 | 147 | //20: TOUCH_Y- |
| TickTock | 12:8e42d7ba8468 | 148 | //21: Spkr+ |
| TickTock | 22:a43df3905863 | 149 | //22: NC:pwm |
| TickTock | 22:a43df3905863 | 150 | //23: LED |
| TickTock | 22:a43df3905863 | 151 | //24: NC:pwm |
| TickTock | 12:8e42d7ba8468 | 152 | //25: NC:pwm |
| TickTock | 12:8e42d7ba8468 | 153 | //26: NC:pwm |
| TickTock | 12:8e42d7ba8468 | 154 | //27: NC |
| TickTock | 12:8e42d7ba8468 | 155 | //28: CAN2:Sleep --> 8:CAN2:RS |
| TickTock | 12:8e42d7ba8468 | 156 | //29: CAN2:TX --> 1:CAN2:D |
| TickTock | 12:8e42d7ba8468 | 157 | //30: CAN2:RX --> 4:CAN2:R |
| TickTock | 12:8e42d7ba8468 | 158 | //31: USB_D+ |
| TickTock | 12:8e42d7ba8468 | 159 | //32: USB_D- |
| TickTock | 12:8e42d7ba8468 | 160 | //33: NC:Eth_TD+ |
| TickTock | 12:8e42d7ba8468 | 161 | //34: NC:Eth_TD- |
| TickTock | 12:8e42d7ba8468 | 162 | //35: NC:Eth_RD+ |
| TickTock | 12:8e42d7ba8468 | 163 | //36: NC:Eth_RD- |
| TickTock | 12:8e42d7ba8468 | 164 | //37: NC:IF+ |
| TickTock | 12:8e42d7ba8468 | 165 | //38: NC:IF- |
| TickTock | 12:8e42d7ba8468 | 166 | //39: NC:5Vout (only available when connected as USB device) |
| TickTock | 12:8e42d7ba8468 | 167 | //40: VCC3.3 |
