Mi sono ricordato che c'è TinkerCad!
Ho provato partendo da "C:\percorso_v1.0\nomefile.ino" e funziona correttamente in entrambi i casi (giustamente!), nel senso che ottengo "v1.0"
barre[0] = 0;
//percorso[barre-percorso] = 0;
quindi unica incognita è capire cosa restituisce il tuo FILE!
Riesci a stampare su lcd l'intero percorso, magari spezzato?
Federico
[BATTUTA_ON]
Ci hanno boicottato, ma ne verremo fuori
[BATTUTA_OFF]
Qui mi dice "somma al puntatore del primo carattere il numero caratteri della stringa, meno 4". Quindi punta a gli ultimi 4 caratteri e ne preleva 4. Gli ultimi caratteri sono ".ino".
Federico66 aveva fatto bene ma poi si è scordato quello che ha fatto:)
strncpy(ver, percorso+(strlen(percorso)-8, 4);
Punta a 8 caratteri dalla fine stringa e ne preleva 4.
Arduino:1.8.8 (Windows 10), Scheda:"ATmega328p 8MHz con EESAVE no bootloader"
In function 'global constructors keyed to 65535_0_Generatore_con_GPS_e_DDS_v0.9_prova_0.1.ino.cpp.o':
exit status 1
Errore durante la compilazione per la scheda ATmega328p 8MHz con EESAVE no bootloader.
Trovata libreria non valida in C:\Program Files\Arduino 1.8.8\libraries\max7219-master: Nessun header file (.h) trovato in C:\Program Files\Arduino 1.8.8\libraries\max7219-master
Trovata libreria non valida in C:\Program Files\Arduino 1.8.8\libraries\max7219-master: Nessun header file (.h) trovato in C:\Program Files\Arduino 1.8.8\libraries\max7219-master
Questo report potrebbe essere più ricco di informazioni abilitando l'opzione
"Mostra un output dettagliato durante la compilazione"
in "File -> Impostazioni"
Uh!!!
C'è una differenza enorme se salvo il file prima di caricarlo!
Ho fatto stampare 16 caratteri per volta con un for() e vedo che percorso[] contiene
C:¥Users¥hp¥AppData¥Local¥Temp¥Arduino_modified_sketch...
Se lo salvo, invece:
C:¥Documenti¥ELETTRONICA¥Arduino¥@15 Generatore con GPS e DDS¥Generatore_con_GPS_e_DDS_v0.9_prova_0.2¥c_setup.ino
Il codice del post #61 è corretto, il problema è che nel percorso non trova il separatore "" e quindi restituisce gli ultimi 4 caratteri ".ino".
Solo per avere conferma, prova a mandare in stampa il codice DEC del terzo carattere del percorso (che dovrebbe essere ""), dovresti visualizzare 92, se cosi non fosse, allora è confermato che, per non so quale motivo, la macro non restituisce correttamente percorso