test fork

Dependencies:   SPI_TFTx2 SPI_TFTx2_ILI9341 TFT_fonts TOUCH_TFTx2 mbed

Fork of CANary_9341 by Tick Tock

Committer:
TickTock
Date:
Tue Apr 16 13:01:13 2013 +0000
Revision:
78:a383971fe02f
Parent:
76:fb6779d0963e
Child:
79:68f0dd8d1f19
Child:
81:cf009a64eedd
Moved message request to ticker instead of wait_ms delay to stop buffer overrun caused by wait_ms blocking usb write.  Also requests other four frames so raw data can be logged for analysis.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
TickTock 13:62e0f7f39ff5 1 // utility.h
TickTock 13:62e0f7f39ff5 2
TickTock 29:42d8491ac995 3 //#include "mbed.h"
TickTock 12:8e42d7ba8468 4 #include "CAN.h"
TickTock 13:62e0f7f39ff5 5 #include "common.h"
TickTock 23:cd03f9c3395e 6 #include "TOUCH_TFTx2.h"
TickTock 76:fb6779d0963e 7 #include "beep.h"
TickTock 12:8e42d7ba8468 8
TickTock 13:62e0f7f39ff5 9 extern Timer timer;
TickTock 75:77bd26829dca 10 extern volatile unsigned short secsNoMsg;
TickTock 75:77bd26829dca 11 extern volatile unsigned short secsNoTouch;
TickTock 13:62e0f7f39ff5 12 extern volatile bool canIdle;
TickTock 13:62e0f7f39ff5 13 extern volatile bool userIdle;
TickTock 13:62e0f7f39ff5 14 extern char displayLog[20][40];
TickTock 13:62e0f7f39ff5 15 extern unsigned char displayLoc;
TickTock 13:62e0f7f39ff5 16 extern bool touched;
TickTock 13:62e0f7f39ff5 17 extern bool logOpen;
TickTock 39:eef8beac7411 18 extern bool logCP; // Turbo3
TickTock 48:d1ce92104a1f 19 extern bool yesBattLog ; // gg - Batt Log
TickTock 40:0e6e71a7323f 20 extern bool showCP;
TickTock 13:62e0f7f39ff5 21 extern char writeBuffer[maxBufLen][13];
TickTock 13:62e0f7f39ff5 22 extern volatile int writePointer;
TickTock 76:fb6779d0963e 23 extern int readPointer;
TickTock 13:62e0f7f39ff5 24 extern DigitalOut led1,led2,led3,led4;
TickTock 13:62e0f7f39ff5 25 extern char indexLastMsg[0x800];
TickTock 13:62e0f7f39ff5 26 extern unsigned char dMode[2];
TickTock 13:62e0f7f39ff5 27 extern unsigned char msgChanged[100];
TickTock 13:62e0f7f39ff5 28 extern unsigned char battData[256];
TickTock 13:62e0f7f39ff5 29 extern CANMessage lastMsg[100];
TickTock 13:62e0f7f39ff5 30 extern CAN can1,can2;
TickTock 13:62e0f7f39ff5 31 extern DigitalOut can1SleepMode,can2SleepMode;
TickTock 78:a383971fe02f 32 //extern bool pollCP;
TickTock 34:4751a8259b18 33 extern bool tick;
garygid 69:6bfdfc002036 34 extern bool ZeroSecTick;
TickTock 34:4751a8259b18 35 extern bool headlights;
TickTock 23:cd03f9c3395e 36 extern TOUCH_TFTx2 tt;
TickTock 35:5acbd8a64a89 37 extern float ledHi;
TickTock 35:5acbd8a64a89 38 extern float ledLo;
TickTock 35:5acbd8a64a89 39 extern unsigned short pollInt;
TickTock 35:5acbd8a64a89 40 extern float scale12V;
TickTock 36:dbd39c315258 41 extern bool playbackEn;
TickTock 36:dbd39c315258 42 extern bool playbackOpen;
TickTock 36:dbd39c315258 43 extern bool step;
TickTock 36:dbd39c315258 44 extern float playbackInt;
TickTock 40:0e6e71a7323f 45 extern signed long mWs_x4;
TickTock 40:0e6e71a7323f 46 extern unsigned short numWsamples;
TickTock 41:8d4609ea7259 47 extern signed long motorRPM;
TickTock 41:8d4609ea7259 48 extern unsigned short numSsamples;
TickTock 48:d1ce92104a1f 49 extern unsigned char skin;
TickTock 50:83d5864c64a0 50 extern unsigned char dtePeriod;
TickTock 76:fb6779d0963e 51 extern Beep spkr;
TickTock 78:a383971fe02f 52 extern unsigned char reqMsgCnt;
TickTock 12:8e42d7ba8468 53
TickTock 12:8e42d7ba8468 54 extern "C" {
TickTock 12:8e42d7ba8468 55 void mbed_reset();
TickTock 13:62e0f7f39ff5 56 void RTC_IRQHandler();
TickTock 13:62e0f7f39ff5 57 void RTC_Init (void);
TickTock 13:62e0f7f39ff5 58 void logMsg (char *msg);
TickTock 13:62e0f7f39ff5 59 void touch_ISR();
TickTock 13:62e0f7f39ff5 60 unsigned short getTimeStamp();
TickTock 13:62e0f7f39ff5 61 void logCan (char mType, CANMessage canRXmsg);
TickTock 13:62e0f7f39ff5 62 void logTS ();
garygid 69:6bfdfc002036 63 void logErrMsg (char * errMsg); // gg - messeges
TickTock 78:a383971fe02f 64 //void sendCPreq();
TickTock 78:a383971fe02f 65 //void sendTreq();
TickTock 78:a383971fe02f 66 void sendReq();
TickTock 36:dbd39c315258 67 void autoPollISR();
TickTock 36:dbd39c315258 68 void playbackISR();
TickTock 13:62e0f7f39ff5 69 void recieve1();
TickTock 13:62e0f7f39ff5 70 void recieve2();
TickTock 36:dbd39c315258 71 void doNothing();
TickTock 22:a43df3905863 72 unsigned char buttonX(unsigned short X, unsigned char columns);
TickTock 22:a43df3905863 73 unsigned char buttonY(unsigned short Y,unsigned char rows);
TickTock 23:cd03f9c3395e 74 void saveConfig();
TickTock 25:ddf0ec209f03 75 void readConfig();
TickTock 25:ddf0ec209f03 76 void upDate(unsigned char field, bool updownbar);
TickTock 39:eef8beac7411 77 void logPackVoltages(); // Turbo3
TickTock 25:ddf0ec209f03 78 }
TickTock 12:8e42d7ba8468 79
TickTock 12:8e42d7ba8468 80 //LEAF OBD
TickTock 12:8e42d7ba8468 81 //1:
TickTock 12:8e42d7ba8468 82 //2:
TickTock 12:8e42d7ba8468 83 //3: AVCAN-L White/Blue
TickTock 12:8e42d7ba8468 84 //4: VSS-Shield
TickTock 12:8e42d7ba8468 85 //5: VSS Brown,White/Brown
TickTock 12:8e42d7ba8468 86 //6: CARCAN-H Green
TickTock 12:8e42d7ba8468 87 //7:
TickTock 12:8e42d7ba8468 88 //8: 12V-SW Orange,White/Orange
TickTock 12:8e42d7ba8468 89 //9:
TickTock 12:8e42d7ba8468 90 //10:
TickTock 12:8e42d7ba8468 91 //11: AVCAN-H Blue
TickTock 12:8e42d7ba8468 92 //12: EVCAN-L White/Grey
TickTock 12:8e42d7ba8468 93 //13: EVCAN-H Grey
TickTock 12:8e42d7ba8468 94 //14: CARCAN-L White/Green
TickTock 12:8e42d7ba8468 95 //15:
TickTock 12:8e42d7ba8468 96 //16: 12V-AON Red/Blue,Blue/Red
TickTock 12:8e42d7ba8468 97
TickTock 12:8e42d7ba8468 98 //VP230
TickTock 12:8e42d7ba8468 99 //1:D
TickTock 12:8e42d7ba8468 100 //2:GND
TickTock 12:8e42d7ba8468 101 //3:VCC
TickTock 12:8e42d7ba8468 102 //4:R
TickTock 12:8e42d7ba8468 103 //5:Vref
TickTock 12:8e42d7ba8468 104 //6:CANL
TickTock 12:8e42d7ba8468 105 //7:CANH
TickTock 12:8e42d7ba8468 106 //8:RS
TickTock 12:8e42d7ba8468 107
TickTock 12:8e42d7ba8468 108 //LPC1768
TickTock 12:8e42d7ba8468 109 //1: VSS
TickTock 12:8e42d7ba8468 110 //2: NC:VIN (4.5-9V supply)
TickTock 12:8e42d7ba8468 111 //3: NC:VB
TickTock 12:8e42d7ba8468 112 //4: NC:nR
TickTock 22:a43df3905863 113 //5: SPI:Reset
TickTock 22:a43df3905863 114 //6: SPI:CS0
TickTock 22:a43df3905863 115 //7: SPI:CS1
TickTock 12:8e42d7ba8468 116 //8: CAN1:Sleep --> 8:CAN1:RS
TickTock 12:8e42d7ba8468 117 //9: CAN1:RX --> 4:CAN1:R
TickTock 12:8e42d7ba8468 118 //10: CAN1:TX --> 1:CAN1:D
TickTock 12:8e42d7ba8468 119 //11: SPI:MOSI
TickTock 12:8e42d7ba8468 120 //12: SPI:MISO
TickTock 12:8e42d7ba8468 121 //13: SPI:SCLK
TickTock 12:8e42d7ba8468 122 //14: NC:Ain
TickTock 12:8e42d7ba8468 123 //15: MON12V --> 4K to 12V, 1K to VSS (To be implemented)
TickTock 12:8e42d7ba8468 124 //16: TOUCH_X+
TickTock 12:8e42d7ba8468 125 //17: TOUCH_X-
TickTock 12:8e42d7ba8468 126 //18: NC:Aout
TickTock 12:8e42d7ba8468 127 //19: TOUCH_Y+
TickTock 12:8e42d7ba8468 128 //20: TOUCH_Y-
TickTock 12:8e42d7ba8468 129 //21: Spkr+
TickTock 22:a43df3905863 130 //22: NC:pwm
TickTock 22:a43df3905863 131 //23: LED
TickTock 22:a43df3905863 132 //24: NC:pwm
TickTock 12:8e42d7ba8468 133 //25: NC:pwm
TickTock 12:8e42d7ba8468 134 //26: NC:pwm
TickTock 12:8e42d7ba8468 135 //27: NC
TickTock 12:8e42d7ba8468 136 //28: CAN2:Sleep --> 8:CAN2:RS
TickTock 12:8e42d7ba8468 137 //29: CAN2:TX --> 1:CAN2:D
TickTock 12:8e42d7ba8468 138 //30: CAN2:RX --> 4:CAN2:R
TickTock 12:8e42d7ba8468 139 //31: USB_D+
TickTock 12:8e42d7ba8468 140 //32: USB_D-
TickTock 12:8e42d7ba8468 141 //33: NC:Eth_TD+
TickTock 12:8e42d7ba8468 142 //34: NC:Eth_TD-
TickTock 12:8e42d7ba8468 143 //35: NC:Eth_RD+
TickTock 12:8e42d7ba8468 144 //36: NC:Eth_RD-
TickTock 12:8e42d7ba8468 145 //37: NC:IF+
TickTock 12:8e42d7ba8468 146 //38: NC:IF-
TickTock 12:8e42d7ba8468 147 //39: NC:5Vout (only available when connected as USB device)
TickTock 12:8e42d7ba8468 148 //40: VCC3.3