Il sito per chi ama smanettare con Arduino, Raspberry Pi & Co.
Notifications

Aiuto alla compilazione, sono alle primissime armi  

Pagina 1 / 2
   RSS

0

ciao a tutti
vi prego help! io ho comprato una scheda arduino leonardo e vorrei inserirci sopra la snowball thrower ( https://github.com/bertrandom/snowball-thrower) per attaccarlo alla switch e farlo girare (che poi il file joystick.c lo modificherò con quello che voglio farà per un altro gioco, ma come base ho bisogno di questo joystick e capire come fargli pigiare i tasti... ma prima di tutto chiedo aiuto su come inserire il codice in arduino)

nella cartella scaricata da github, ho il file  joystick.h (che dovrebbe essere la libreria)
joystick.c (che dovrebbe essere la serie di comandi che deve eseguire)
altri file che non ho capito a cosa servano.

ho scaricato Arduino 1.8.10, uso windows 10, ho collegato la scheda tramite micro usb e il pc la ha riconosciuta come COM 6, la faccio vedere anche ad arduino 1.8.10 e la vede (fin qui tutto ok).

l'unica cosa che non capisco è come fare a inserirgli i file... come devo compilare? come funziona?  mi chiede file .ino o .pde ma non ho questi file nella cartella di github...
ho provato a copiaincollare il contenuto del file Joystick.c ma mi da errori tipo la mancanza di joystick.h (non so come fare a mettere la libreria)

non mi dilungo per non incasinare, qualche paziente anima pia che mi aiuta a capire meglio cosa devo fare? grazie infinite a chi mi aiuterà

18 Answers
0

Nel menù sketch c'è la sezione per la gestione delle librerie, c'è anche la possibilità di aggiungere un file zip comprensivo di files header e codice

@alessandro

Ciao si grazie sono riuscito a mettere la libreria solo che ho un altro problema...

nella descrizione del progetto parla di qualcosa da fare per il LUFA, cosa devo fare?

Spoiler
LUFA Descrizione

LUFA has been included as a git submodule, so cloning the repo like this:

git clone --recursive [email protected]:bertrandom/snowball-thrower.git

visto poi che il progetto è per tensy 2, mi sono mosso per capire come portare il codice di tensy su arduino e ho scaricato tensyduino... ho impostato tensy 2++ ora gli errori sono questi

Più di una libreria trovata per "Joystick.h"
In file included from C:\Users\Ciccino\Desktop\sketch_jan27a\sketch_jan27a\sketch_jan27a.ino:21:0:

Usata: C:\Users\Ciccino\Documents\Arduino\libraries\snowball-thrower-master
C:\Users\Ciccino\Documents\Arduino\libraries\snowball-thrower-master/Joystick.h:47:10: fatal error: LUFA/Drivers/USB/USB.h: No such file or directory

#include

^~~~~~~~~~~~~~~~~~~~~~~~

compilation terminated.

Errore durante la compilazione per la scheda Teensy++ 2.0.

Riesci ad aiutarmi?

0

Devi includere il file header della tua libreria (il .h)

0

Li vengono importati tutti i collegamenti alle funzioni presenti nella tua libreria, finché non lo includi il compilatore non riesce a linkarle.

@alessandro

come si fa ad includerlo???

io ho fatto Sketch --> #include libreria -->selezionato la cartella LUFA con dentro l'USB.h e altri file .h e ho dato ok... ma rimane tutto uguale... nella scheda errori sotto esce scritto

Una sottocartella del tuo sketchbook non è una libreria valida
Trovata libreria non valida in C:\Users\Ciccino\Documents\Arduino\libraries\lufa-LUFA-170418: Nessun header file (.h) trovato in C:\Users\Ciccino\Documents\Arduino\libraries\lufa-LUFA-170418
Trovata libreria non valida in C:\Users\Ciccino\Documents\Arduino\libraries\lufa-LUFA-170418: Nessun header file (.h) trovato in C:\Users\Ciccino\Documents\Arduino\libraries\lufa-LUFA-170418
Trovata libreria non valida in C:\Users\Ciccino\Documents\Arduino\libraries\lufa-LUFA-170418: Nessun header file (.h) trovato in C:\Users\Ciccino\Documents\Arduino\libraries\lufa-LUFA-170418

non è cosi che devo fare?

0

Allora il git clone clona un repository git nel tuo disco, in parole povere potremmo  dire che vengono copiati i file della libreria da internet al tuo pc, (in realtà vengono copiate tutte le versioni del codice ma a noi ne interessa una sola).

Questo processo di copia crea una cartella con dentro i vari file.

Al git clone devi dare il parametro --recursive perchè nella tua libreria è presente un sottomodulo git che contiene LUFA (un framework leggero per la gestione della comunicazione via USB con processsori AVR) di cui snowball-thrower ha bisogno per essere compilato correttamente.

Con il gitclone ricorsivo il LUFA verrà posizionato nella directory corretta automaticamente

Il make è uno script shell che compila il codice con GCC (in ambienti linux) cosa che di solito fa arduino da GUI, ma il tuo sembra un caso particolare ed è da qui che credo nascano i problemi.

Che sistema operativo usi?

@alessandro

Oddio ho letto e seguito ma non ci ho capito niente 🙁
ho windows 10 e uso arduino 1.8.10 (scaricato ieri)
scusami ma non ho capito cosa devo fare, riusciresti per favore a spiegarmelo in parole piu povere?
grazie

0

Hai git?

0

Il tuo progetto è composto da due repository git collegati, se usi git ti crea una cartella con tutti i file al loro posto altrimenti ti devi arrangiare in qualche maniera.

Nel secondo caso devi controllare da solo che i file dei due progetti siano al loro posto corretto.

https://git-scm.com/downloads

@alessandro

Dunque Git non sapevo manco cosa fosse prima che me lo dicessi tu, ok lo ho appena installato, ho dato sempre ok ok ok avanti esegui senza capire cosa stava scritto comunque lo ho installato...
Lanciando questo Git Bash mi esce una specie di prompt dei comandi... immagino che qui debba copia incollarci quella stringa del sito giusto??? se si, devo posizionare i file in un certo modo o la copia incollo e invio?
grazie 1000 per l'aiuto paziente che mi stai dando

0

con git bash prima ti posizioni nella cartella dove vuoi mettere il progetto e poi dai il comando git clone "ricorsivo"

0

Git lo ho sul desktop, lo ho aperto tramite amministratore e ho messo questi comandi

[email protected] MINGW64 ~ (master)
$ git init
Reinitialized existing Git repository in C:/Users/Ciccino/.git/

[email protected]  MINGW64 ~ (master)
$ git clone --recursive [email protected]:bertrandom/snowball-thrower.git
Cloning into 'snowball-thrower'...
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

cosa sto sbagliando?

0

Allora il git init non dovrebbe servire però sembrano sbagliati i comandi indicati nel progetto: infatti ho ricevuto anche io i tuoi stessi errori.

Allora ho corretto il primo comando git con:

git clone --recursive https://github.com/bertrandom/snowball-thrower.git

che funziona solo in parte perchè non prende il lufa..

poi per prendere il lufa sono entrato nella directory snowball-thrower e poi ho dato il comando:

git clone https://github.com/abcminiuser/lufa.git

solo che adesso non so se i file sono posizionati correttamente ...

0

Come fai a capire se sono o non sono posizionati giusto? ah quindi è sbagliata la guida!!!! porca vacca

quindi da quello che ho capito i file necessari per il mio progetto sei riuscito a farli... oddio come hai fatto? scommetto che tutti i procedimenti che hai scritto li hai fatti in codice...

riusciresti a spiegarmi come hai fatto che lo faccio anche io? per il posizionamento spero sia giusto

0

Si sembra sbagliata "la guida" o forse abbiamo sbagliato qualcosa noi non sono sicuro...

Dovresti chiedere direttamente all'autore: https://medium.com/@bertrandom/automating-zelda-3b37127e24c8

@alessandro

intanto grazie 1000 per la pazienza che hai con me!! cerchero di fare un bel messaggio inglese con google translate per quel tizio (mi sa che è l'unica strada che ho per fare quello che voglio provare)

nel frattempo voglio provare a fare come mi stai aiutando tu...

Ho aperto l'IDE di arduino, ho incollato il joystick dalla cartella nata dal coso di gitbash, ho fatto sktch -> aggiungi file e ho messo joystick.h, LUFAConfig.h, Descriptors.h, e poi ho fatto sketch ->#include libreria e ho messo la cartella della snowball thrower... do la verifica e mi esce questo errore:

In file included from C:\Users\Ciccino\AppData\Local\Temp\arduino_modified_sketch_81180\sketch_jan29a.ino:21:0:

Joystick.h:47:10: error: LUFA/Drivers/USB/USB.h: No such file or directory

#include

^~~~~~~~~~~~~~~~~~~~~~~~

compilation terminated.

exit status 1
LUFA/Drivers/USB/USB.h: No such file or directory

ho sbagliato qualcosa? l'unica strada che ho è contattare il creatore? 🙁

0

il tutto è un po avanzato ho un nuovo problema... compilo il tutto ma mi esce questo errore qui

unable to create a folder to save the sketch: mkdir sketch: Accesso negato.
Errore durante la compilazione per la scheda Arduino Leonardo.

perchè?

Questo post è stato modificato 4 settimane fa da Fantasys
0

mkdir è un comando della shell bash di linux/unix che crea una directory. Quel tipo di errore ti esce quando non hai i permessi sufficenti per crearla.

Prova ad eseguire il tutto da amministratore

0

Ho scoperto di avere un problema su windows... ho TUTTE le carte in sola lettura.. perchè ???
quando tolgo la spunta dalle proprietà, la applica, poi appena riapro le proprietà di nuovo ho la sola lattura, secondo me è per questo che ho questo errore mkdir...
ti dico cosa ho finora fatto...
arduino lo apro da amministratore
Sono da pc personale windows 10, ho l'accesso come unico amministratore senza password ad entrata diretta all'accensione...
ho fatto una pulizia approfondita dai virus con avira e malwarebytes e non hanno trovato niente.
nella sezione "sicurezza" delle cartelle ho abilitato tutto, lettura scrittura, visualizzazione ecc .....
perchè ho questo problema? cosa devo fare per togliere sta maledetta cosa? voglio essere libero di scegliere se avere cartelle in sola lettura o meno

Pagina 1 / 2

Entra nel forum

Hai un nuovo progetto in mente ma hai dei dubbi su come realizzarlo? Vuoi condividere la tua conoscenza da maker con gli altri? Registrati nella nostra community e potrai chiedere fare la tua domanda o rispondere e condividere la tua conoscenza in internet.

Spread the love
  • 1
  •  
  •  
  •  
  •  
  •  
  •  
  •  
    1
    Share