Fix SHIFT and code cleanup
2 files changed, 18 insertions(+), 85 deletions(-)

M src/def_hp34970_fp.h
M src/main.cpp
M src/def_hp34970_fp.h +0 -6
@@ 35,14 35,8 @@ 
 #define KP_C4 PB_0
 
 #if defined(HAVE_PC)
-
 #include <USBSerial.h>
-#if 1
 USBSerial pc(false);  // PA_11 USB_DM, PA_12 USB_DP (with 1.5k pull-up)
-#else
-BufferedSerial pc(PC_10_ALT0, PC_11_ALT0, 115200); // UART_4
 #endif
 
 #endif
-
-#endif

          
M src/main.cpp +18 -79
@@ 11,14 11,9 @@ 
 #include "Keypad.h"
 
 // Pins and device declarations
-#if defined TARGET_NUCLEO_F446RE
-#include "def_f446re.h"
-#elif defined TARGET_HP34970_FP_F303RD
 #include "def_hp34970_fp.h"
-#endif
 
 #include "platform/CircularBuffer.h"
-#include <USBSerial.h>
 
 Display *dsp;
 volatile bool splashscreen;

          
@@ 111,41 106,12 @@ char buffer[MAX_BUFF+1];
 
 void refresh_display(void);
 
-void timeout_h() {
-#if defined(HAS_LED)
-  led = !led;
-#endif
-}
-
-#ifdef DEBUG
-
-DigitalOut dbgpin(DBGPIN);
-inline void pulse(uint8_t count=1, bool stayup=false)
-{
-  dbgpin = 0;
-  wait_us(2);
-  while (count--)
-  {
-    dbgpin = 1;
-    wait_us(2);
-    dbgpin = 0;
-    wait_us(2);
-  }
-  if (stayup)
-    dbgpin = 1;
-}
-#else
-inline void pulse(uint8_t count=1, bool stayup=false)
-{}
-#endif
-
 // callbacks & thread functions
 void reset(void);
 void reset_irq(void);
 void qei_cb(int dir);
 void end_splashscreen(void);
 
-
 #if defined(HAVE_PC)
 FileHandle *mbed::mbed_override_console(int fd)
 {

          
@@ 154,7 120,6 @@ FileHandle *mbed::mbed_override_console(
 }
 #endif
 
-
 void setup() {
 #if defined(HAVE_PC)
 	pc.connect();

          
@@ 165,28 130,19 @@ void setup() {
   printf("\n\nSETUP\n");
   printf("  System Core Clock = %ld MHZ\r\n", SystemCoreClock/1000000);
 
-  printf("Create USBSerial\n");
   hp = NULL;
 
-  printf("Serial communication via UART4\r\n");
-
   printf("Setup HP communication pins\r\n");
-  //printf("     HP_RX=%d\r\n", HP_RX);
   DigitalIn(HP_RX).mode(PullDown);
-  //printf("     HP_TX=%d\r\n", HP_TX);
   DigitalOut(HP_TX).write(1);
-  //printf("     HP_RST=%d\r\n", HP_RST);
   DigitalIn(HP_RST).mode(PullDown);
 
   printf("  setup QEI pins\r\n");
-  //printf("     ENC1=%d\r\n", KP_ENC1);
   DigitalIn(KP_ENC1).mode(PullDown);
-  //printf("     ENC2=%d\r\n", KP_ENC2);
   DigitalIn(KP_ENC2).mode(PullDown);
   qenc.attach(&qei_cb);
 
   printf("  setup Keypad\r\n");
-
   shift = false;
   must_reset = false;
   must_shutdown = false;

          
@@ 198,14 154,6 @@ void setup() {
 
   printf("Setup OLED display\r\n");
   // init the LCD
-  /*
-  printf("     DSP_MOSI=%d\r\n", DSP_MOSI);
-  printf("     DSP_MISO=%d\r\n", DSP_MISO);
-  printf("     DSP_SCLK=%d\r\n", DSP_SCLK);
-  printf("     DSP_CS=%d\r\n", DSP_CS);
-  printf("     DSP_RST=%d\r\n", DSP_RST);
-  printf("     DSP_DC=%d\r\n", DSP_DC);
-  */
   dsp = new Display(20000000, DSP_MOSI, DSP_MISO, DSP_SCLK, DSP_CS,
             DSP_RST, DSP_DC, "SSD1322");
 

          
@@ 263,25 211,22 @@ void reset(void)
 	  splashscreen_timer.detach(); // same for splashscreen
 	  splashscreen = false; // in case it still on
 
-    if (hp == NULL) {
-      printf("setup HP communication handler\r\n");
-      hp = new HPSerial(HP_TX, HP_RX);
-    } else {
-		printf("Connection already initialized\n");
-	}
-
-    printf("!! RST !! (gstate=%d, state=%d)\r\n",
-           hp->gstate(), hp->state());
-    //printf("Value is ... %X\n", hp->search());
-	dsp->power_on();
-	dsp->cls();
-    printf("Initiate startup sequence\n");
-	if (last_key.keyevent == KEY_PRESSED) {
-		printf("  with key pressed\n");
-		hp->send_startup_seq(kp_mapping[last_key.row][last_key.col]);
-	} else {
-		hp->send_startup_seq();
-	}
+	  if (hp == NULL) {
+		  printf("setup HP communication handler\r\n");
+		  hp = new HPSerial(HP_TX, HP_RX);
+	  } else {
+		  printf("reset existing connection\n");
+		  hp->reset();
+	  }
+	  dsp->power_on();
+	  dsp->cls();
+	  printf("Initiate startup sequence\n");
+	  if (last_key.keyevent == KEY_PRESSED) {
+		  printf("  with key pressed\n");
+		  hp->send_startup_seq(kp_mapping[last_key.row][last_key.col]);
+	  } else {
+		  hp->send_startup_seq();
+	  }
   }
   else
   {

          
@@ 312,6 257,7 @@ void mainloop()
   for (uint8_t i=0; i<8; i++)
     err[i] = 0;
 
+  printf("Start the main loop\n");
   while(1) {
 	if (must_reset) {
 	  must_reset = false;

          
@@ 352,7 298,7 @@ void mainloop()
 		  if (shift)
 			  shift = false;
 		  else
-			  shift = false;
+			  shift = true;
 		  dsp->set_flag_status(0x0E, shift);
 		  dsp->draw_flag(0x0E);
 	  }

          
@@ 385,9 331,6 @@ void mainloop()
     {
       if (hp->pop(cmd))
       {
-#if defined(HAS_LED)
-        led = 1;
-#endif
         for (uint8_t i=0; i<7; i++)
           if (hp->nerrors(i) > err[i]) {
             printf("ERR: %X/%X/%X/%X/%X/%X/%X\n",

          
@@ 443,9 386,6 @@ void mainloop()
           // display related commands
           dsp->show(cmd.cmd, cmd.value, cmd.size);
         }
-#if defined(HAS_LED)
-        led = 0;
-#endif
       }
     }
     //else

          
@@ 483,6 423,5 @@ void kr_cb(uint8_t row, uint8_t col)
 int main()
 {
   setup();
-  printf("Main loop (noop)\r\n");
   mainloop();
 }