Ricerca…


Osservazioni

Impostare

  • Scarica e installa Atmel Studio 7 da qui .
  • Acquista un debugger. Puoi cavartela con un programmatore ISP, ma se vuoi funzionalità di debug, che è uno dei grandi vantaggi dell'utilizzo di Atmel Studio, ti servirà un debugger. Raccomando Atmel ICE , poiché fornisce funzionalità di debug per arduini basati su AVR (come Uno, pro mini, ecc.) E Arduinos basati su ARM, come Zero e Due. Se hai un budget limitato, puoi ottenerlo senza la custodia di plastica e stai attento a non scioccarlo .

Connessioni

  • Per lo Uno, utilizzare il cavo ICSP a 6 pin . Inserire un lato nello Uno come mostrato. Collegare l'altro lato alla porta AVR del debugger.

inserisci la descrizione dell'immagine qui

Per Arduino Pro Mini, utilizzare il cavo mini squid come mostrato, collegando nuovamente l'altro lato alla porta AVR del debugger.

inserisci la descrizione dell'immagine qui

Considerazioni sul debugging

Per eseguire il debugging con Uno, è necessario tagliare la traccia di reset-enable (è sempre possibile ripristinarla per l'utilizzo con l'IDE Arduino):

inserisci la descrizione dell'immagine qui

Utilizzando Pro Mini, se si intende collegare la porta seriale al computer utilizzando una scheda FTDI, non collegare la linea DTR, in quanto interferirà con l'interfaccia SWD (Serial Wire Debug) di Atmel. Collego semplicemente alimentazione, massa, Tx e Rx come mostrato qui sotto. Rx e Tx su Arduino vanno su Tx e Rx, rispettivamente su scheda FTDI. Alcune schede FTDI sono etichettate in modo diverso, quindi se la porta seriale non funziona, scambia Rx e Tx.

inserisci la descrizione dell'immagine qui

Dovrai fornire alimentazione separatamente ad Arduino perché il debugger non lo alimenta. Questo può essere fatto sul Pro Mini attraverso la scheda FTDI come mostrato sopra, o con un cavo USB o un adattatore CA sull'Uno.

Installazione del software

Collega Atmel ICE al computer, avvia Atmel Studio e ora puoi importare un progetto Arduino esistente.

In Atmel Studio, vai su File -> Nuovo -> Progetto e seleziona "Crea progetto da schizzo di Arduino". Compila le opzioni, inclusi i menu a discesa della scheda e del dispositivo.

Vai su Project -> Proprietà yourProjectName, fai clic su Tool, seleziona Atmel ICE sotto debugger / programmer e debugWire sotto interfaccia. Vai a Debug -> Avvia debug e break. Dovresti visualizzare un avviso e ti verrà chiesto se desideri impostare il fusibile DWEN. Scegliere OK, scollegare l'Arduino dall'alimentazione e ricollegarlo. È possibile interrompere il debug facendo clic sul pulsante quadrato rosso e iniziare facendo clic sul pulsante triangolo verde. Per riportare Arduino allo stato in cui può essere utilizzato nell'IDE di Arduino, mentre esegui il debug, scegli Debug -> disable debugWIRE e chiudi.

Nota che tutte le funzioni aggiunte devono includere anche un prototipo di funzione (loop e setup non ne hanno bisogno). Puoi vedere quelli che Atmel Studio ha aggiunto nella parte superiore dello schizzo se c'erano delle funzioni quando hai importato il tuo progetto in Atmel Studio (vedi esempio di codice).

Il supporto per C ++ 11 è abilitato di default in Arduino 1.6.6 e versioni successive. Ciò fornisce più funzionalità del linguaggio C ++ e consente di aumentare la compatibilità con il sistema Arduinio. Per abilitare C ++ 11 in Atmel Studio 7, fare clic con il tasto destro sul file di progetto, selezionare Proprietà, fare clic su ToolChain a sinistra, Fare clic su Miscellaneous in AVR / GNU C ++ Compiler e put -std=c++11 negli Altri flag campo.

Per includere le librerie nello schizzo

Copia il file della libreria .cpp in C:\Users\YourUserName\Documents\Atmel Studio\7.0\YourSolutionName\YourProjectName\ArduinoCore\src\core , quindi in Atmel Studio, apri la finestra Esplora soluzioni, fai clic con il pulsante destro del mouse su Arduino Core / src / cartella principale, scegli Aggiungi -> elemento esistente e scegli il file che hai aggiunto. Fai lo stesso con il file della libreria .h e la cartella YourProjectName / Dependancies.

Per aggiungere la finestra del terminale

Puoi sempre avere l'IDE Android aperto e usare quella finestra seriale (basta selezionare la porta seriale corretta), tuttavia per aggiungere una finestra seriale integrata ad Atmel Studio, vai su Strumenti -> Estensioni e aggiornamenti, fai clic su Download disponibili e cerca Terminal Window o Terminal per Atmel Studio e installarlo. Una volta installato, vai su View -> Terminal Window.

Benefici

Programmare Arduino con un IDE moderato come Atmel Studio 7 offre numerosi vantaggi rispetto all'IDE di Arduino, tra cui il debug, il completamento automatico, il passaggio alla definizione e alla dichiarazione, la navigazione in avanti / indietro, i segnalibri e le opzioni di refactoring per nominarne alcuni.

Puoi configurare i collegamenti dei tasti andando su Strumenti -> Opzioni -> Ambiente -> Tastiera. Alcuni che accelerano lo sviluppo sono:

  • Edit.CommentSelection, Edit.UncommentSelection
  • View.NavigateForward, View.NavigateBackward
  • Edit.MoveSelectedLinesUp, Edit.MoveSelectedLinesDown
  • Edit.GoToDefinition

Atmel Studio 7 esempio di schizzo importato

Questo è un esempio di come appare un semplice schizzo di Arduino dopo essere stato importato in Atmel Studio. Atmel Studio ha aggiunto le sezioni generate automaticamente nella parte superiore. Il resto è identico al codice Arduino originale. Se si espande il progetto ArduinoCore che è stato creato e si guarda nella cartella src -> core, si troverà main.cpp , il punto di ingresso per il programma. Qui puoi vedere la chiamata alla funzione di configurazione di Arduino e un ciclo infinito per loop che richiama la funzione di loop Arduino più e più volte.

/* Begining of Auto generated code by Atmel studio */
#include <Arduino.h>
/* End of auto generated code by Atmel studio */


// Beginning of Auto generated function prototypes by Atmel Studio
void printA();
// End of Auto generated function prototypes by Atmel Studio

void setup() {
  Serial.begin(9600);
}

void loop() {
    printA();
}

void printA() {
    Serial.println("A");
}


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow