Problema Seriale Arduino

Il codice è un po' lungo e lo ometto nelle parti non essenziali per questo problema:

#define sclk 13                                       /* clock della comunicazione SPI, in comune tra i due display. il pin è il 15 per Arduino Pro Micro. */
#define mosi 11                                       /* comunicazione unidirezionale master -> slave, in comune tra i due display. il pin è il 16 per Arduino Pro Micro. */
#define cs1 2                                         /* selezione dello slave 1, primo display. */
#define rs1 3                                         /* pin rs dello slave 1, primo display. */
#define rst1 4                                        /* reset dello slave 1, primo display. */
#define cs2 5                                         /* selezione dello slave 2, secondo display */
#define rs2 6                                         /* pin rs dello slave 2, secondo display */
#define rst2 7                                        /* reset dello slave 2, secondo display */


//#include <SPI.h>                                      /* libreria per comunicazione SPI */
#include <Adafruit_GFX.h>                             /* libreria grafica di Adafruit */
#include <Adafruit_ST7735.h>                          /* libreria per il chip ST7735 di gestione del display */

Adafruit_ST7735 display1 = Adafruit_ST7735(cs1, rs1, rst1);   /* creazione oggetto display1 per la libreria Adafruit di gestione del chip del display */
Adafruit_ST7735 display2 = Adafruit_ST7735(cs2, rs2, rst2);   /* creazione oggetto display2 per la libreria Adafruit di gestione del chip del display */

...

#define KeyboardPin A4                                /* pin lettura tastiera */
byte varKeyboard = 0;                                 /* variabile byte che contiene il valore della lettura del pin anallogico della tastiera */
bool select = false;                                  /* variabile booleana per il pulsante select */
bool reset = false;                                   /* variabile booleana per il pulsante reset */

void keyboard(){
  varKeyboard = analogRead(KeyboardPin);              /* lettura del pin analogico della tastiera */
  if (varKeyboard > 767){select = true;}              /* se la lettura è maggiore del valore, allora il pulsante select è premuto e la variabile booleana è true */
  else {select = false;}                              /* in caso contrario la variabile booleana è false */
  if(varKeyboard < 767 && varKeyboard > 255){reset = true;}   /* se la lettura è minore del valore e allo stesso tempo maggiore di 255, allora il pulsante reset è premuto e la variabile mooleana è true */
  else {reset = false;}                               /* in caso contrario la variabile booleane è false */
}

byte varMAX = 0;                                      /* variabile che contine il numero del canale in base a quante volte schiaccio il tasto select */

void resetMAX(){
  if (select){varMAX++;}                              /* se select è true, aggiungi un valore alla variabile varMAX */
  for (varMAX; varMAX <= (Channel - 1);){             /* ciclo for, finché la variabile è minore o uguale del numero dei canali */
    if (reset){VdigitalMAX[varMAX] = 0;}              /* se reset è true, azzera l'elemento dell'array della tensione digitale corrispondente al canale selezionato */
  }
  varMAX = 0;                                         /* azzera la variabile */
}

...

void printCH0(){ 
  display1.setTextColor(ST7735_GREEN,ST7735_BLACK);   /*  */
  display1.setTextSize(2);                            /*  */
  display1.setCursor(40, 15);                         /*  */
  display1.print("VERDE ");                           /*  */
  display1.setCursor(40, 33);                         /*  */
  display1.print(Vanalog[0], 1);                      /*  */
  display1.print("V ");                               /*  */

  display1.setTextColor(ST7735_WHITE,ST7735_BLACK);   /*  */
  display1.setTextSize(1);                            /*  */
  display1.setCursor(30, 53);                         /*  */
  display1.print("Vmax ");                            /*  */
  display1.print(VanalogMAX[0], 1);                   /*  */
  display1.print("V ");                               /*  */
}

...

...

void setup() {

  Serial.begin(9600);
    
  pinMode(sclk, OUTPUT);
  pinMode(mosi, OUTPUT);
  pinMode(cs1, OUTPUT);
  pinMode(rs1, OUTPUT);
  pinMode(rst1, OUTPUT);
  pinMode(cs2, OUTPUT);
  pinMode(rs2, OUTPUT);
  pinMode(rst2, OUTPUT);
  pinMode(A0, INPUT);
  pinMode(A1, INPUT);
  pinMode(A2, INPUT);
  pinMode(A3, INPUT);
  pinMode(A4, INPUT);
  
...

}

void loop() {
  
...
  
  detectMAX();
  keyboard();
  resetMAX();
  
...

  Serial.print("varKeyboard: "); Serial.print(varKeyboard); Serial.print(" select: "); Serial.print(select); Serial.print(" reset: "); Serial.print(reset); Serial.print(" varMAX: "); Serial.println(varMAX);
}

Questo è il codice usato su Arduino UNO, per Arduino Micro semplicemente alcuni pin cambiano ma nulla d'altro.

Questo codice non stampa nulla sul monitor seriale.