Sono un principiante e voglio imparare AVR C / C ++. Posso farlo usando un Arduino? (Lo sto chiedendo perché ne ho già uno).
Se è così, qualcuno potrebbe dirmi usando quale IDE posso scrivere codice in C / C ++ puro e poi installarlo su Atmega328P su Arduino? O dovrei invece procurarmi un AVR e un programmatore?
Ho cercato in tutto Internet e sono davvero confuso da tutta la terminologia. Qualcuno potrebbe spiegarmelo?
Commenti
- Quindi per programmare il 328 credo che sia necessario installare atmel studio per compilare il codice e quindi utilizzare il comando della riga di comando avrdude per inserire il codice compilato su arduino.
- @ Treesrule14 che ' è una possibilità, ma non lunica, quindi ' non è vero che è necessario. Se lIDE di Arduino è installato, lo è anche il compilatore avr-gcc da cui dipende.
- @ Treesrule14 Ho installato atmel studio. Non riesco a trovare alcuna risorsa questo potrebbe aiutarmi a far lampeggiare un programma sul chip di arduino usando un avvio caricatore (senza programmatore). È anche possibile?
- Credo che tu abbia bisogno di un programmatore. : (
- Non ' non hai bisogno di alcun IDE. Puoi compilare e caricare utilizzando la toolchain fornita con Arduino. Guarda Arduino.mk per esempio.
Risposta
Sì, procurati un programmatore AVR.
1) Puoi eseguire il flash la tua scheda arduino con avrdude / avr-gcc . Installa questi strumenti, trova la scheda tecnica di atmega328 (google it), usa i pinout della scheda per connetterti al tuo programmatore (stk500v2 / ISP) e voilà!
2) Tieni presente che eseguendo “manualmente” il flashing del tuo atmaga sulla scheda arduino “stai rimuovendo il bootloader necessario per caricare i tuoi sketch da ARDUINO IDE.
3) Usa il tuo IDE C / C ++ preferito
Commenti
- dovresti essere in grado di trovare e rifare il bootloader per arduino guarda qui arduino.cc/en/Hacking/Bootloader?from=Tutorial.Bootloader
- No! Non è necessario un programmatore o per rimuovere il bootloader. Il bootloader di Arduino ha zero dipendenza dallIDE o dalle librerie: sei libero di usarlo con programmi C stand alone come con gli sketch di Arduino. Farlo in questo modo non solo è più economico, ma ti consente di utilizzare la stessa scheda per entrambi gli stili di sviluppo senza modifiche alla configurazione.
- Lautore voleva imparare AVR in puro C. Non ha ' chiedere – ehi ragazzi, come giocare con lIDE di arduino o qualcosa del genere. come riutilizzare latmega a bordo che ha già.
- @ChrisStrat ton poiché non sei daccordo con le altre risposte Invia una risposta per favore
Risposta
Se sei un principiante, Ti suggerisco di scrivere C nellIDE di Arduino. Le librerie sono molto utili e penso che lambiente Arduino / Wiring / Processing soddisferà tutte le tue esigenze.
Dai unocchiata a Lightblue Bean ( http://punchthrough.com/bean/ ) è un buon esempio della potenza di quella piattaforma. Anche i programmatori embedded esperti possono usarlo, poiché il registro sottostante è ancora accessibile.
Ora sto programmando sul Ti MSP430 e, sebbene possa apprezzare le possibilità, mi manca la semplicità di Arduino; molto più facile iniziare con Arduino.
Vai a http://arduino.cc/en/main/software per scaricare la versione 1.0. 6. Software IDE, collega il tuo Arduino, vai su Tools-> Board per selezionare il tuo Arduino, seleziona la porta “tty” appropriata in Tools-> Serial_Port. Quindi scrivi in C puro e scarica. Ci sono tonnellate di esempi inclusi con lIDE.
Risposta
Un Arduino è programmato in C / C ++. Cè un malinteso comune che Arduino abbia una propria lingua. Vedi questo link C ++ vs. Arduino Language? per una discussione completa su Arduino come C / C ++ e sulle semplificazioni offerte da Arduino. Inoltre, puoi vedere il codice di base di Arduino qui .
Dal sito web di Arduino:
Posso programmare la scheda Arduino in C?
Infatti lo sei già; il linguaggio Arduino è semplicemente un insieme di funzioni C / C ++ che possono essere chiamate dal tuo codice. Il tuo schizzo subisce piccole modifiche (ad es. Generazione automatica di prototipi di funzioni) e quindi viene passato direttamente a un compilatore C / C ++ (avr-g ++). Tutti i costrutti C e C ++ standard supportati da avr-g ++ dovrebbero funzionare in Arduino. Per maggiori dettagli, consulta la pagina sul Processo di creazione di Arduino .
Offerte Arduino una curva di apprendimento facile per principianti fino agli esperti.Quindi scarica lultimo IDE di Arduino , installalo e divertiti.
Commenti
- Un altro malinteso comune è che C sia un sottoinsieme di C ++. La libreria principale di Arduino è scritta in C ++, quindi ' è impossibile programmare in C utilizzandola.