Errore di caricamento software su Arduino Micro (32u4)

Ciao a tutti!
Sono nuovo del forum e ho bisogno di aiuto.
Volevo provare a collegare arduino con glediator per poter controllare delle strisce led indirizzabili (ws2812b).

Ho scaricato il codice fornito dal sito ufficiale di glediator (Solderlab). (Il codice per le ws2812b).

Ho provato a caricare il codice sul mio arduino micro (32u4) ma non mi lasciava caricarlo dando il seguente errore: “UCSR0A was not declared in this scope”.

Ho cercato una soluzione su qualche forum e dicevano che il codice è funzionale per arduino uno (Atmega328p).

L’errore lo da su questi “registri”

// Initialize UART
UCSR0A |= (1<<U2X0);
UCSR0B |= (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
UCSR0C |= (1<<UCSZ01) | (1<<UCSZ00) ;
UBRR0H = 0;
UBRR0L = 1; //Baud Rate 1 MBit (at F_CPU = 16MHz)

E nel forum consigliavano di modificare i nomi dei registri mettendo 1 al posto che 0 trasformandolo in:

// Initialize UART
UCSR1A |= (1<<U2X1);
UCSR1B |= (1<<RXEN1) | (1<<TXEN1) | (1<<RXCIE1);
UCSR1C |= (1<<UCSZ11) | (1<<UCSZ10) ;
UBRR1H = 0;
UBRR1L = 1; //Baud Rate 1 MBit (at F_CPU = 16MHz)

Ho modificato il codice e poi l’ho caricato.

Avevo dimenticato di modificare un valore allora ho riaperto il codice l’ho modificato e ho provato a caricarlo ma non voleva proprio caricarlo.

Dice: “Sto caricando” la barra di caricamento arriva fino in fondo e rimane tutto fermo senza caricare niente.

Ho provato a caricare anche altri codici come ad esempio il classico “Blink” ma niente.

Ho provato anche a fare il reset della scheda utilizzando il pin reset della scheda ma anche così non riesce a caricare.

Spero che qualcuno riesca ad aiutarmi.
Grazie in anticipo!