Display12864 sistemare avvio seriale

Buongiorno a tutti ragazzi,

ho costruito una centralina con arduino e display 12864, ho un problema, per motivi di assorbimento ho alimentato in parallelo display e arduino, quando accendo succede però che il display non carichi correttamente le informazioni, spegnendo e riaccendendo più volte poi parte correttamente, ho notato che se invece che spegnere tutto lascio acceso e resetto l'arduino dal tasto reset parte tutto correttamente. E' possibile risolvere questo problema da software? ho provato a mettere un delay come prima istruzione del void setup ma non ho risulto nulla.

Sembra che arduino parta prima del display e manchino delle info nella comunicazione col display, resettando solo arduino funziona tutto perfettamente

grazie a tutti per l'aiuto

//include libraries

#include <math.h>
#include <U8g2lib.h>
#include <Arduino.h>
#include <SPI.h>
#include <Wire.h>
#include <Event.h>
#include <Timer.h>

 //Parametri Display grafico
 U8G2_ST7920_128X64_F_SW_SPI u8g2(U8G2_R0, /* clock=*/ 3, /* data=*/ 9, /* CS=*/ 8, /* reset=*/ U8X8_PIN_NONE);
 
 
 
//-------------------------------------------SETUP------------------------------------------------------------------
void setup()
{

  
  delay(1000);
  Serial.begin(9600);          //  setup serial
  //-----------------------------------------------------------------------------------

 //Iniziallizazione nuovo display Grafico ST7920 12864

 u8g2.begin();
 
  u8g2.setFont(u8g2_font_ncenB08_tr);  // choose a suitable font
  u8g2.drawStr( 5, 10, "ciaoooooo");
  u8g2.sendBuffer();


   delay(600);
  
//pulizia display
u8g2.clearBuffer();
u8g2.sendBuffer();

 
}
//---------------------------------------FINE SETUP----------------------------------------------------