Programmatori e debugger, cosa sono e perché servono, non tutti lo sanno. Al momento, è difficile immaginare l'esistenza di una persona senza elettrodomestici, alcuni dei quali hanno microprocessori che richiedono una certa manutenzione. Dispositivi come programmatori e debugger sono uno di quelli progettati solo per tenere traccia della chiarezza del loro lavoro.
Contenuto
Un dispositivo progettato per leggere (raccogliere) dati e scriverli (firmware) su un dispositivo di archiviazione è chiamato programmatore.Per i radioamatori è adatto un dispositivo standard collegato a una porta seriale o parallela. È l'ideale se è necessario programmare il microcontrollore una volta. Inoltre, grazie a un tale dispositivo, è possibile caricare programmi in formato esadecimale nella maggior parte dei microcontrollori AVR in un tempo abbastanza breve.
Il dispositivo è collegato al PC tramite un software speciale che trasferisce il firmware del computer al programmatore e lo scrive nella memoria del microcircuito. I programmatori sono collegati in diversi modi, ma quello principale è quello che si effettua tramite la porta USB.
I dispositivi per la lettura e la scrittura dei dati possono essere classificati in base ad alcune caratteristiche quali:
In base alla connessione dei microcircuiti, i dispositivi sono suddivisi in:
Quando si sceglie un dispositivo con una connessione parallela, prestare attenzione al connettore in cui è posizionato il microcircuito. Dovrebbe essere di buona qualità, è meglio se il modello è dotato di un connettore a pinza o uno con una barra mobile (connettori ZIF). I modelli costosi sono dotati di connettori adatti a diversi casi. Quelli economici dotati di una connessione una tantum falliranno rapidamente.
I dispositivi in-circuit sono adatti solo per chip che supportano la programmazione in-circuit. Pertanto, è possibile eseguire il flashing del microcircuito senza rimuoverlo dal dispositivo stesso.
Tutti i prodotti software sono sottoposti a rigorosi test durante il periodo di sviluppo, numerosi aggiornamenti, risoluzione di vari tipi di problemi e manutenzione completa durante il processo per evitare futuri problemi di utilizzo.I programmi di grandi dimensioni, costituiti da un gran numero di righe di codice sorgente, sono suddivisi in piccoli componenti, che vengono prima controllati individualmente e solo successivamente nell'aggregato.
Quindi cos'è un debugger? Questo è un modulo o un'applicazione progettata per trovare errori nei programmi. Il debugger o il cosiddetto debugger consente di tracciare passo dopo passo, monitorare, modificare e impostare il valore delle variabili, impostare e rimuovere punti di interruzione e condizioni di arresto durante l'esecuzione del programma e molto altro. Il funzionamento del dispositivo include il debug interattivo, l'analisi del flusso di controllo, l'analisi dei file di registro, il monitoraggio a livello di applicazione e sistema e il test interattivo e di unità.
Il debugger non solo controlla e rileva gli errori di codice, ma li corregge anche, assicurando così che le applicazioni funzionino correttamente. Il processo di debug inizia dal momento della scrittura del codice e prosegue in tutte le fasi successive, poiché il codice è interconnesso con il resto dei moduli necessari alla realizzazione di un prodotto software. Quando si controllano programmi di grandi dimensioni con molte righe di codice, la procedura di debug viene eseguita in modo più semplificato, utilizzando unit test, revisioni del codice e programmazione a coppie.
Quando acquisti un programmatore, dovresti considerare alcuni punti che ti aiuteranno a scegliere il dispositivo giusto:
E ovviamente è importante scegliere un produttore con una buona reputazione. Questo può essere fatto cercando recensioni sul produttore su Internet e familiarizzando con i dati su quanto tempo l'azienda produce programmatori.
Quando si sceglie un debugger (debugger), l'acquirente dovrebbe prestare attenzione anche a elementi come:
In linea di principio, la selezione di questo strumento viene eseguita tenendo conto degli stessi punti del programmatore, ma dovresti essere consapevole che nella maggior parte dei casi gli utenti incontreranno un debugger sotto forma di programma. Come modulo, si imbattono in programmatori con funzioni di debugger.
L'elenco dei migliori programmatori si basa sulle recensioni dei clienti, include modelli universali, a profilo stretto, adatti al lavoro, solo con alcuni tipi di microcircuiti installati, ad esempio, nelle chiavi della macchina e molti altri.
Il modello AVR USBASP appartiene ai programmatori USB universali, supporta microcontrollori flash a dieci pin con la possibilità di installare ulteriori adattatori a sei pin. Il dispositivo ha due opzioni di alimentazione (5 e 3,3 volt), che vengono eseguite tramite un ponticello speciale. Nonostante i vantaggi del dispositivo, il suo costo è abbordabile.
Questo modello è presentato sotto forma di un cavo, su un lato del quale è presente un'unità flash, che è un debugger, con l'aiuto del quale è configurata una stazione radio, come Walkie-Talkie. Il dispositivo consente di selezionare e assegnare ai tasti delle stazioni radio le funzioni necessarie, impostare il livello di riduzione del rumore desiderato, selezionare il suono della chiamata e le connessioni dei canali. Il debugger è compatibile non solo con i prodotti Turbosky, ma si sincronizza anche con i modelli di stazione codificati utilizzando i codici CTCSS e DCS.
Il programmatore cinese ad alta velocità MiniPro TL866 è adatto per la programmazione di tutti i moderni sistemi Windows: 7, 8, 10, 32 e 64 bit. Utilizzando questo modello, è possibile condurre un test SRAM e il dispositivo supporta anche chip come NAND Flash fino a 8 Gbit. Inoltre, MiniPro TL866 è dotato di una serie di funzioni aggiuntive come la ricerca automatica dei contatti difettosi, l'output di un numero di serie e i test dell'algoritmo. Il consumo energetico dei microcircuiti è minimo. Con l'aiuto delle librerie DLL, i programmatori sono in grado di creare tutti i tipi di algoritmi, possono persino impostare codici univoci che consentono la protezione del copyright per il dispositivo.
Un altro modello di programmatore USB, prodotto in Cina, è caratterizzato dall'elevata velocità.Il corpo del dispositivo è dotato di spie luminose che segnalano la potenza e il processo di programmazione. Il dispositivo appartiene all'universale ed è adatto per la riparazione di elettrodomestici e apparecchiature industriali. Dopo l'accensione, il dispositivo consente di verificare automaticamente se l'MC è conforme alle norme di sicurezza e di scaricare il software necessario. Con una limitazione, ma USB EZP2019 consente di verificare l'integrità del BIOS della scheda madre di un personal computer. Il dispositivo funziona a velocità fino a 12 m/s, quindi il periodo di installazione del driver è notevolmente accelerato.
Il modello RT809F è progettato per funzionare con computer e periferiche elettroniche e il dispositivo supporta anche la memoria EEPROM I2C ROM riprogrammabile cancellabile elettricamente e la memoria ad accesso casuale (RAM) DDR1/DDR2/DDR3. Inoltre, RT809F è compatibile con MCU RTD2120, 93 MircroWire, Micom. WINBOND amplia le capacità del dispositivo, attirando così l'attenzione delle persone coinvolte nelle riparazioni di varie apparecchiature (tecnici radiofonici, televisivi, ecc.), indipendentemente dal loro livello di abilità. Considerando i parametri del modello, possiamo dire che è uno dei più redditizi, poiché unisce basso costo e ampia compatibilità con i microcontrollori.
Questa sezione presenterà sia i dispositivi con funzioni di debugger che i programmi di debugger che si occupano dell'eliminazione di vari tipi di errori che si verificano durante la scrittura dei codici. L'elenco include sia tipi economici che costosi, ma ognuno di essi, secondo i consumatori, affronta bene i suoi compiti.
CH341A è un dispositivo predisposto per il flashing di memorie SPI ed EEPROM, dotato di funzione debugger. L'interfaccia del modello è in russo, il che semplifica il lavoro con esso, il dispositivo stesso supporta circa 700 MK. Il dispositivo è progettato per funzionare con il firmware del microcontrollore, eseguire il debug di schede madri situate in un PC e la memoria di archiviazione, nonché aggiornare il BIOS. Per la stabilità delle schede madri, l'utente può disabilitare la funzione di installazione del driver predefinita e collegare in modo indipendente la versione desiderata.
IDA Pro è sia un disassemblatore che un debugger che consente di trasformare il codice binario in testo assembler utilizzato per analizzare il programma. Questo programma è dotato di funzionalità estese, che lo rendono popolare tra gli utenti che sono professionalmente coinvolti nel campo della programmazione. Quindi, tra le capacità che possiamo distinguere come il riconoscimento delle funzioni di libreria standard (tecnologia FLIRT), la presenza di un'architettura aperta e modulare e del linguaggio di programmazione IDC integrato, la capacità di lavorare con quasi tutti i comuni processori e formati di file, e molti altri.Grazie alle sue capacità, il dispositivo esegue funzioni come il controllo di vari malware e virus, la ricerca e lo studio di errori nel codice, la convalida e l'ottimizzazione dei programmi.
Il modello PADI SWD Debugger appartiene ai debugger dei programmatori, il debugger J-Link di Segger è stato preso come base per lo sviluppo. Il dispositivo consente di caricare il firmware in formato binario, utilizzando speciali strumenti di sviluppo per eseguire il debug dei programmi interrompendo e il debug passo dopo passo. Per connettersi al PADI IoT Stamp, vengono utilizzati solo due fili: Serial Wire Data e Serial Clock. Il cavo di ripristino non richiede una connessione obbligatoria. Per supportare il lavoro del debugger vengono utilizzati il pacchetto software standard J-Link e gli ambienti di sviluppo IAR e Keil. Il dispositivo è adatto per il debug di programmi, per il flashing in microcontrollori come Cortex-M, per alimentare PADI per un periodo durante la progettazione del dispositivo.
Debugger (debugger) e programmatori sono strumenti importanti quando si lavora con dispositivi dotati di chip. Ciascuno degli strumenti è dotato di determinate funzioni, da cui dipendono il loro costo e scopo.