Sommario:
Video: Debug seriale con CloudX: 3 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
In questo progetto, miro a spiegare il concetto di debug tramite il terminale seriale. Ma prima, per cominciare, spieghiamo il suo concetto attraverso i suoi significati.
1. comunicazione seriale
la comunicazione seriale è per la comunicazione tra la scheda CloudX e un computer o altri dispositivi. Tutte le schede CloudX hanno almeno una porta seriale visibile (nota anche come UART o USART): Seriale. Comunica su pin digitale RX e TX con altri hardware o moduli di comunicazione seriale (come gsm e gps) come con il computer tramite USB utilizzando la SoftCard. Pertanto, se si utilizzano queste funzioni, non è possibile utilizzare anche TX e RX per l'ingresso o l'uscita digitale. Puoi utilizzare il monitor seriale integrato nell'ambiente CloudX per comunicare con una scheda CloudX. Fare clic sul pulsante del monitor seriale nella barra degli strumenti e selezionare la stessa velocità di trasmissione utilizzata nel parametro chiamato serialBegin().
2. Debug
Debug significa semplicemente identificare e rimuovere gli errori da (hardware o software del computer). Il debug comporta l'individuazione e la correzione degli errori di codice in un programma per computer. Il debug fa parte del processo di test del software ed è parte integrante dell'intero ciclo di vita dello sviluppo del software. Prendiamo ad esempio che il tuo codice è stato compilato con successo e stai testando il tuo hardware e non funziona come previsto, sebbene ci siano molti modi per eseguire il debug del tuo codice; un modo semplice ed efficace per eseguire il debug è attraverso l'uso del debug seriale. L'IDE CloudX genera 2 tipi di file in caso di compilazione riuscita, file HEX e COFF. Il file HEX è rigorosamente un codice macchina che è ciò che viene caricato nella scheda per l'esecuzione nel mondo reale, ma può anche essere eseguito su software di simulazione per PC come Proteus Isis mentre il file COFF è un formato leggibile eseguibile sui software di simulazione per PC (Proteus Isis). Per questo scopo prenderemo in considerazione due tipi fondamentali di debug su protocollo seriale,
1. Debug seriale morbido:
In questo metodo, ogni test e debug viene eseguito sul PC tramite alcuni software utili come Proteus ISIS. Poiché CloudX fondamentalmente genera un file COFF, consiglio di utilizzarlo per la simulazione del PC perché con esso puoi praticamente passare da una riga di codice all'altra e capire da dove proviene un problema, e se il tuo codice deve essere eseguito senza fare un passo, usando il terminale virtuale dal "virtuale" strumento "modalità strumento", puoi sempre sapere dove è in esecuzione il controller in un dato momento. diamo un'occhiata a questo esempio di codice,
Passo 1:
/*
* File: newmain.c
* Autore: OGBOYE GODWIN * * Creato il 28 giugno 2018, 10:15 */
#includere
#includere
/* noi faremo
pin1 rosso pin2 verde pin3 giallo * pulsante pin4 */ char *tell= "hmmm, sono stato touch"; setup(){ pinMode(1, OUTPUT); pinMode(2, USCITA); pinMode(3, USCITA); pinMode(4, INGRESSO); Serial_begin(9600); loop(){ while(!readPin(4)); Serial_writeText(tell); Serial_writeText("….trasferimento in rosso"); Serial_write(0x0D); portWrite(1, 0x00); pinSelect(1, ALTO); ritardi(200); // prova a rimuovere i commenti da tutti i ritardi e guarda cosa succede // quindi sostituiscili (ti piacerà sicuramente!). while(!readPin(4)); Serial_writeText(tell); Serial_writeText("….in passaggio al verde"); Serial_write(0x0D); portWrite(1, 0x00); pinSelect(2, ALTO); ritardi(200); // prova a rimuovere i commenti da tutti i ritardi e guarda cosa succede // quindi sostituiscili (ti piacerà sicuramente!).
while(!readPin(4));
Serial_writeText(tell); Serial_writeText("….in passaggio al giallo"); Serial_write(0x0D); portWrite(1, 0x00); pinSelect(3, ALTO); ritardi(200); // prova a rimuovere i commenti da tutti i ritardi e guarda cosa succede // quindi sostituiscili (ti piacerà sicuramente!). } }
con questo puoi vedere come il debug seriale è importante se rimuovi i ritardi. se lo avessi fatto, avresti visto quanto fastidioso può causare quel semplice codice se viene eseguito nel mondo reale senza quei ritardi.
Passo 2:
2. Debug hardware:
In questo metodo, ogni test e debug viene eseguito collegando la scheda prototipo CloudX al PC utilizzando la softCard e utilizzando il terminale seriale di CloudX IDE (consigliato) o altri software utili come Proteus ISIS compim, realTerm, ecc. Genera COFF il file non può essere utilizzato qui perché questo metodo richiede il bootload di HEX nell'hardware, consiglio di utilizzarlo per la softcard CloudX. Nota che il tuo codice viene eseguito senza eseguire passaggi in modo da poter sempre sapere dove è in esecuzione il controller in un dato momento dall'output seriale. diamo un'occhiata a questo codice lo stesso esempio elencato sopra, imposta il tuo hardware in modo che sia simile al mio LED rosso --------- al LED verde pin1 --------- LED giallo pin2 -- ------- pulsante pin3 --------- pin4
Passaggio 3:
passi
1. Usa lo stesso codice di cui sopra
2. bootload nella tua scheda
3. avviare il terminale seriale CloudX facendo clic sul pulsante "seriale" nella barra degli strumenti
4. selezionare la porta e la velocità di trasmissione desiderate (9600 in questo tutorial)
5.avviare il terminale cliccando su Connetti (disconnetti se vuoi uscire)
6. con la porta aperta/collegata, premere momentaneamente il pulsante a piacimento e nelle finestre del terminale comparirà l'uscita seriale. Nota che se hai i ritardi fuori dal codice, otterrai più linee di output seriale in esecuzione così velocemente senza controllo prima di togliere le mani dal pulsante. Se per qualsiasi motivo nel tuo codice, hai un problema simile o simile, puoi sempre utilizzare questo metodo per eseguire il debug.
Consigliato:
Risolvere il problema della porta seriale/driver USB del Mac Lilypad: 10 passaggi (con immagini)
Risolvere il problema della porta seriale/driver USB del Mac Lilypad: a partire dal 2016, il tuo Mac ha meno di 2 anni?Hai recentemente aggiornato al sistema operativo più recente (Yosemite o qualcosa di più recente)?Le tue USB/MP3 Lilypad non funzionano più?Il mio il tutorial ti mostrerà come ho riparato le mie USB Lilypad. L'errore che ho riscontrato era correlato
Arduino autonomo 3.3V con orologio esterno da 8 MHz programmato da Arduino Uno tramite ICSP/ISP (con monitoraggio seriale!): 4 passaggi
Arduino autonomo 3,3 V con orologio esterno a 8 MHz programmato da Arduino Uno tramite ICSP / ISP (con monitoraggio seriale!): Obiettivi: costruire un Arduino autonomo che funzioni a 3,3 V da un orologio esterno da 8 MHz. Per programmarlo tramite ISP (noto anche come ICSP, programmazione seriale in-circuit) da un Arduino Uno (in esecuzione a 5V) Per modificare il file del bootloader e masterizzare il
Informatica economica: Arduino con seriale TTL: 3 passaggi
Elaborazione economica: Arduino con seriale TTL: gran parte del costo degli arduino su larga scala come l'UNO è il costo dell'interfaccia USB (nota, vero quando è stato scritto, ma non è più vero, l'usb è economico ora. Potresti voglio ancora andare in seriale TTL per altri motivi.). Sbarazzati di quel
Monitor seriale Arduino in Tinkercad: 7 passaggi (con immagini)
Monitor seriale Arduino in Tinkercad: tenere traccia di tutto ciò che accade nel tuo programma può essere una battaglia in salita. Il monitor seriale è un modo per ascoltare cosa sta succedendo nel tuo codice riportando al computer tramite il cavo USB. Nel simulatore Tinkercad Circuits, il Serial
SCHEDA ROBOT PICAXE ECONOMICA E FACILE CON CAVO SERIALE: 12 passaggi (con immagini)
SCHEDA ROBOT PICAXE ECONOMICA E FACILE CON CAVO SERIALE: Ecco le istruzioni su come costruire una SCHEDA PICAXE facile, semplice ed economica per controllare un ROBOT SUMO o da utilizzare su un numero qualsiasi di altri progetti PICAXE 18M2+