Just4Trionic - CAN and BDM FLASH programmer for Saab cars

Dependencies:   mbed

Revision:
4:682d96ff6d79
Parent:
3:92dae9083c83
Child:
5:1775b4b13232
--- a/main.cpp	Tue Jun 07 12:23:28 2011 +0000
+++ b/main.cpp	Wed Sep 11 11:55:51 2013 +0000
@@ -28,9 +28,21 @@
 
 ********************************************************************************
 
+Version 1.4 (07/2013)
+
+Changes since Verion 1.3
+    Progress indication shown as a percentage, slightly slower but more informative
+    T8 BDM Functionality
+
+Changes since Verion 1.3
+    T7 CAN FLASH algorithm changed to only send 4 Bytes at a time
+        Slightly slower but more reliable especially with I-Bus connection
+
+********************************************************************************
+
 Version 1.3 (06/2011) - Basic T7 CAN support and faster T5 CAN bootloader
 
-Changes since Verion 1.1
+Changes since Verion 1.2
     New T7 CAN menu provides some very basic T7 CAN DUMP and FLASH functions
     T5 CAN uses Mybooty version 2 for 1 Mbps CAN speed
         Get MyBooty version 2.x from forum.ecuproject.com
@@ -116,6 +128,7 @@
 #include "can232.h"
 #include "t5can.h"
 #include "t7can.h"
+#include "t8can.h"
 
 // constants
 #define CMD_BUF_LENGTH      32              ///< command buffer size
@@ -127,9 +140,10 @@
 uint8_t execute_just4trionic_cmd();
 void show_just4trionic_help();
 
-int main() {
+int main()
+{
     // fast serial speed
-//    pc.baud(921600);
+    //pc.baud(921600);
     pc.baud(115200);
 
     // the address of the function to be attached (leds_off) and the interval (0.1 seconds)
@@ -144,6 +158,14 @@
     while (pc.readable())
         rx_char = pc.getc();
 
+#ifdef DEBUG
+    printf("*************************\r\n");
+    printf("** RUNNING DEBUG BUILD **\r\n");
+    printf("*************************\r\n");
+#else
+    printf("Running... this is a release build.\r\n");
+#endif
+
     show_just4trionic_help();
 
     // main loop
@@ -194,7 +216,8 @@
 
     @return                    command flag (success / failure)
 */
-uint8_t execute_just4trionic_cmd() {
+uint8_t execute_just4trionic_cmd()
+{
 
 
 //    uint8_t cmd_length = strlen(cmd_buffer);
@@ -215,6 +238,9 @@
         case '7':
             t7_can();
             return TERM_OK;
+        case '8':
+            t8_can();
+            return TERM_OK;
         case 'h':
         case 'H':
             return TERM_OK;
@@ -226,13 +252,15 @@
     return TERM_ERR;
 }
 
-void show_just4trionic_help() {
+void show_just4trionic_help()
+{
     printf("Just4Trionic Command Menu\r\n");
     printf("=========================\r\n");
     printf("b/B - Start BDM interface\r\n");
     printf("o/O - Open Lawicel CAN232 type interface\r\n");
     printf("5   - Start Trionic5 ECU CAN interface\r\n");
     printf("7   - Start Trionic7 ECU CAN interface\r\n");
+    printf("8   - Start Trionic8 ECU CAN interface\r\n");
     printf("\r\n");
     printf("h/H - show this help menu\r\n");
     printf("\r\n");