Gestione display LCD 16x2

Una curiosità.
Su tutti gli esempi con uso del display 16x2, ho visto che impiegano i pin di Arduino 2,3,4,5,11,12.
Nelle mie applicazioni uso sempre i pin del PORTB 8,9,10,11,12,13. In questo modo mi lascio libero il PORTD a 8 bit per acquisire dati lunghi un Byte.
Volevo chiedere, c’è un motivo per il quale tutti usano impegnare sia il PORTD che il PORTB per gestire il display?

Grazie da Saverio.

La scelta dei pin é a propria discrezione non utilizzando dei pin che hanno una doppia funzione, perché hanno un hardware aggiuntivo. Esempi sono: i pin 11,12 e 13 sono l' interfaccia SPI, 0 e 1 l' interfaccia seriale e A4 e A5 l' interaccia I2C. 2 e 3 per Interrupt, alcuni pin per pilotaggio diretto da parte dei timer interni di cui i per esempio la funzione PWM ecc. Le funzioni di questi pin non si possono spostare.

Se colleghi un RTC I2C devi usare per forza i pin A4 e A5 ecc.

Certe scelte di pin sono solo abitudine senza effettivo vincolo, per esempio pin 10 e pin 4 come SS della SPI. Si potrebbe usare qualsiasi pin. Pin 13 ha un LED attacato percui si usa per visualizzare on board lo stato q questo pin. Si potrebbe collegare a qualsiasi pin un LED tramite relativa resistenza.

Ciao Uwe

Grazie della spiegazione.
Mi accorgo sempre più della mia limitata conoscenza di Arduino.

Saverio.