Just4Trionic - CAN and BDM FLASH programmer for Saab cars

Dependencies:   mbed

Committer:
Just4pLeisure
Date:
Sat Apr 25 17:07:08 2015 +0000
Revision:
5:1775b4b13232
Version 1.5 Is a significant milestone.; ; Supports BDM and CAN read and write of T5.x, T7 and T8 ECU's plus T8 recovery.; A Target Resident Driver for BDM gives a big speed boost.; Supports many alternative replacement FLASH chips for T5.x ECU's;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Just4pLeisure 5:1775b4b13232 1 /*******************************************************************************
Just4pLeisure 5:1775b4b13232 2
Just4pLeisure 5:1775b4b13232 3 bdmdriver.cpp
Just4pLeisure 5:1775b4b13232 4 (c) 2014 by Sophie Dexter
Just4pLeisure 5:1775b4b13232 5
Just4pLeisure 5:1775b4b13232 6 ********************************************************************************
Just4pLeisure 5:1775b4b13232 7
Just4pLeisure 5:1775b4b13232 8 WARNING: Use at your own risk, sadly this software comes with no guarantees.
Just4pLeisure 5:1775b4b13232 9 This software is provided 'free' and in good faith, but the author does not
Just4pLeisure 5:1775b4b13232 10 accept liability for any damage arising from its use.
Just4pLeisure 5:1775b4b13232 11
Just4pLeisure 5:1775b4b13232 12 *******************************************************************************/
Just4pLeisure 5:1775b4b13232 13
Just4pLeisure 5:1775b4b13232 14 #ifndef __BDMDRIVER_H__
Just4pLeisure 5:1775b4b13232 15 #define __BDMDRIVER_H__
Just4pLeisure 5:1775b4b13232 16
Just4pLeisure 5:1775b4b13232 17 #include "mbed.h"
Just4pLeisure 5:1775b4b13232 18
Just4pLeisure 5:1775b4b13232 19 #include "common.h"
Just4pLeisure 5:1775b4b13232 20 #include "bdmcpu32.h"
Just4pLeisure 5:1775b4b13232 21
Just4pLeisure 5:1775b4b13232 22 // public functions
Just4pLeisure 5:1775b4b13232 23 bool bdmLoadMemory(uint8_t dataArray[], uint32_t loadAddress, uint32_t dataArraySize);
Just4pLeisure 5:1775b4b13232 24 bool bdmRunDriver(uint32_t addr, uint32_t maxtime);
Just4pLeisure 5:1775b4b13232 25 uint8_t bdmProcessSyscall(void);
Just4pLeisure 5:1775b4b13232 26
Just4pLeisure 5:1775b4b13232 27 enum bdmSyscall {
Just4pLeisure 5:1775b4b13232 28 QUIT = 0,
Just4pLeisure 5:1775b4b13232 29 PUTS = 1,
Just4pLeisure 5:1775b4b13232 30 PUTCHAR = 2,
Just4pLeisure 5:1775b4b13232 31 GETS = 3,
Just4pLeisure 5:1775b4b13232 32 GETCHAR = 4,
Just4pLeisure 5:1775b4b13232 33 GETSTAT = 5,
Just4pLeisure 5:1775b4b13232 34 FOPEN = 6,
Just4pLeisure 5:1775b4b13232 35 FCLOSE = 7,
Just4pLeisure 5:1775b4b13232 36 FREAD = 8,
Just4pLeisure 5:1775b4b13232 37 FWRITE = 9,
Just4pLeisure 5:1775b4b13232 38 FTELL = 10,
Just4pLeisure 5:1775b4b13232 39 FSEEK = 11,
Just4pLeisure 5:1775b4b13232 40 FGETS = 12,
Just4pLeisure 5:1775b4b13232 41 FPUTS = 13,
Just4pLeisure 5:1775b4b13232 42 EVAL = 14,
Just4pLeisure 5:1775b4b13232 43 FREADSREC = 15
Just4pLeisure 5:1775b4b13232 44 };
Just4pLeisure 5:1775b4b13232 45
Just4pLeisure 5:1775b4b13232 46 enum bdmSyscallResult {
Just4pLeisure 5:1775b4b13232 47 DONE,
Just4pLeisure 5:1775b4b13232 48 CONTINUE,
Just4pLeisure 5:1775b4b13232 49 ERROR
Just4pLeisure 5:1775b4b13232 50 };
Just4pLeisure 5:1775b4b13232 51
Just4pLeisure 5:1775b4b13232 52 #endif // __BDMDRIVER_H__
Just4pLeisure 5:1775b4b13232 53 //-----------------------------------------------------------------------------
Just4pLeisure 5:1775b4b13232 54 // EOF
Just4pLeisure 5:1775b4b13232 55 //-----------------------------------------------------------------------------