AtMega2560 porte Analogiche Problema RISOLTO

Salve a tutti,

Ho una scheda con un AtMega2560 Freq. 16Mhz, con connettore ICSP ed uso USBASP per programmarlo.
Firmware scritto in linguaggio processing ovvero Arduino.

Ho collegato 8 pulsanti sui pin 90,91,92,93,94,95,96,97 corrispondenti rispettivamente alle porte analogiche A0, A1, A2, A3, A4, A5, A6, A7.

ho scritto uno script giusto per provare che funzionasse, un semplice “digitalRead” per leggere lo stato e se ALTO fa un qualcosa.

Con le porte A0, A1, A2, A3 funziona perfettamente.

Sulle porte A4, A5, A6, A7 non funziona.

Ho provato a leggere con la funzione “analogRead” e ottengo:

A0 → 0
A1 → 0
A2 → 0
A3 → 0
A4 → 254
A5 → 254
A6 → 254
A7 → 254

leggendo sul datasheet vi è scritto che le porte A4…A7 vengono usate per la programmazioen JTAG.

Forse bisogna settare qualcosa nei FUSE del Micro?

Comunque il problema l’ho “risolto” considenrandole tutte analogiche ed invece di usare “digitalRead” uso “analogRead” e per il riconoscimento della pressione del tasto nella condizione → if (lettura analogica == 1023) tasto premuto.

Ma vorrei utilizzare una lettura digitale per la pressione dei tasti.

Qualcuno mi può dare maggiori info per questo problema?

Grazie.

Risolto:

Bisognava disabilitare JTAG tramite i FUSE.

Arduino Mega viene venduto già cosi configurato con JTAG disabilitato se non è disabilitato le porte A4, A5, A6 e A7 non possono essere utilizzate come normali porte I/O.

Ma io sto usando una scheda con il solo AtMega2560 per un progetto ed ho disabilitato JTAG scrivendo nel FUSE High = D1.

Notizia molto importante, grazie del feedback Paoloj.