ENCICLOPEDIA DELLA RADIOELETTRONICA ED ELETTRICA Microcontrollori STM32 e schede di debug per loro. Enciclopedia dell'elettronica radio e dell'ingegneria elettrica Enciclopedia della radioelettronica e dell'elettrotecnica / Tecnologie radioamatoriali Per molti anni, i radioamatori hanno utilizzato microcontrollori a otto bit delle famiglie PIC e AVR. Sono popolari per il loro prezzo basso, la documentazione dettagliata, la facilità di programmazione e la facilità di installazione. Tuttavia, molto spesso ci sono casi in cui la potenza di un tale microcontrollore non è sufficiente per risolvere il compito. L'esempio più semplice è un frequenzimetro o un generatore di segnali su un microcontrollore, in cui la frequenza massima misurata o generata dipende direttamente dalla velocità di elaborazione o emissione delle informazioni. Oltre alla velocità, i microcontrollori a otto bit presentano altre limitazioni, ad esempio in molti modelli AVR è presente una sola porta seriale hardware, che non consente di ricevere informazioni da un dispositivo esterno e di inviare contemporaneamente al consumatore i risultati della sua elaborazione. Per non parlare di cose "banali" come la visualizzazione di informazioni su un indicatore grafico, che richiede grandi risorse, sia velocità che memoria. Dopo aver analizzato una serie di tali limitazioni, l'autore ha avuto l'idea di passare ai microcontrollori della famiglia STM32. Ad esempio, considera due microcontrollori della stessa categoria di prezzo: STM32F103C6 e ATmega328P. Tabella 1
I loro parametri comparativi sono riportati nella tabella. 1. I risultati del confronto sono persino in qualche modo sorprendenti. Un microcontrollore a 32 bit non solo è più potente di un microcontrollore a otto bit sotto quasi tutti gli aspetti, ma è anche più economico. Ovviamente, saldare a casa un microcontrollore con un passo del pin di 0,5 mm non è così facile. Fortunatamente, nella maggior parte dei casi ciò non è necessario: sul mercato sono disponibili molte varietà di schede di debug con microcontrollori della famiglia STM32, sufficienti per varie applicazioni. Consideriamoli in modo più dettagliato. STM32F4-SCOPERTA Questa scheda (è mostrata in Fig. 1) è forse la più conveniente per i principianti per studiare i microcontrollori STM. Innanzitutto, ha un ampio set di periferiche. Oltre al microcontrollore, la scheda dispone di un accelerometro microelettromeccanico, un microfono, un DAC audio, due connettori USB, un pulsante e quattro LED.
Le uscite del microcontrollore vengono portate alle piazzole di contatto per il montaggio dei connettori pin sui bordi sinistro e destro della scheda, il che semplifica il collegamento di tutti i dispositivi esterni necessari. Il microcontrollore STM32F407VGT6 installato sulla scheda ha parametri molto buoni: 1 MB di memoria FLASH, 192 KB di RAM e una frequenza di clock di 168 MHz. Infine, la scheda è dotata di un debugger ST-LINK/V2 integrato, che può essere utilizzato per eseguire il debug dei programmi non solo sul microcontrollore sulla scheda, ma anche su microcontrollori della stessa famiglia presenti su altre schede. Il passaggio ad essi viene eseguito utilizzando un ponticello rimovibile e un connettore SWD. Il prezzo della tavola è di circa 800 rubli, che può essere considerato abbastanza accettabile. Scheda di sviluppo STM32F103RBT6 La prossima opzione interessante è una scheda di debug con un microcontrollore STM32F103RBT6 (Fig. 2).
È leggermente più debole di quello installato sulla scheda precedente: una velocità di clock di 72 MHz, 128 KB di memoria FLASH e 20 KB di RAM, ma le periferiche sono molto interessanti. 320x240px Touchscreen TFT da 2.8", porta USB integrata per la comunicazione con il PC, slot per schede di memoria SD, orologio al quarzo 32768Hz, vano batteria dell'orologio in tempo reale e connettore ST-LINK per programmi di debug. Anche il prezzo di questa scheda è di circa 800 rubli, ma va notato che non è presente alcun debugger integrato. Per scaricare i programmi, è necessario acquistare un debugger ST-LINK separato o utilizzare invece la scheda STM32F4-DISCOVERY discussa sopra Mini d'acero Colpisce la somiglianza esterna di questa scheda (Fig. 3) con i noti moduli Arduino. E questa non è una coincidenza.
La scheda Maple Mini è stata progettata per sostituire Arduino Nano. Il linguaggio di programmazione e l'ambiente di sviluppo per i microcontrollori installati su Arduino della famiglia AVR sono stati adattati alla famiglia STM. Vedere http://leaflabs.com/docs/maple-q uickstart.html per ulteriori informazioni sul linguaggio di programmazione Maple IDE e sull'ambiente di sviluppo. La scheda di sviluppo ha un microcontrollore STM32F103CBT6 funzionante a 72 MHz, con 128 KB di FLASH e 20 KB di RAM, che è senza dubbio più che in qualsiasi modulo Arduino. E il vantaggio maggiore è che l'ambiente di sviluppo non è cambiato molto. Separatamente, notiamo che nonostante le dimensioni miniaturizzate, Maple Mini fornisce una periferica molto diversificata: 34 linee I / O, due canali di interfaccia SPI e due I2C, tre porte seriali. Ciò ti consente di applicarlo con successo in vari sviluppi amatoriali. Grazie alle sue dimensioni ridotte, Maple Mini può essere integrato direttamente nel dispositivo in fase di sviluppo. La scheda Maple Mini originale può essere acquistata per $ 35 sul sito Web Maple Mini originale. Altri $ 5 costeranno la spedizione. Una copia della scheda prodotta in Cina costerà la metà. Software Esistono diverse opzioni per gli ambienti di sviluppo che possono essere utilizzati per preparare programmi per microcontrollori della famiglia STM32: - commerciale IAR Embedded Workbench, AtollicTrueSTUDIO, Keil, ecc. Questi prodotti completi sono piuttosto costosi, con un prezzo di licenza di 1000 euro, ma ci sono anche versioni demo gratuite con una limitazione sulla quantità del programma in fase di sviluppo, sono abbastanza per la maggior parte dei progetti semplici; - Eclipse gratuito con il compilatore ARM-GCC richiede una configurazione del compilatore non banale prima dell'uso. L'unico vantaggio oggi è la possibilità di lavorare non solo su Windows, ma anche su Linux; - CooCox IDE (CoIDE) gratuito basato sullo stesso editor Eclipse. Esegue il caricamento e il debug dei programmi tramite ST-LINK. A differenza della versione precedente, CoIDE non richiede impostazioni particolari e funziona subito dopo l'installazione. Questa opzione è la più conveniente e dovrebbe essere utilizzata. Usiamo CooCox IDE per creare un programma di esempio per la scheda STM32F4-DISCOVERY che implementa il classico per il primo programma per qualsiasi LED lampeggiante del microcontrollore. Ci sono quattro LED sulla scheda STM32F4-DIS-COVERY, sono collegati ai pin PD12-PD15 del microcontrollore. Facciamoli lampeggiare alternativamente. Passo 1. Lanciamo l'ambiente di sviluppo CoIDE, creiamo un progetto. Dall'elenco a discesa mostrato in Fig. 4, selezionare il microcontrollore STM32F407VG.
Passo 2. Come mostrato in fig. 5, selezionare i componenti che verranno utilizzati nel progetto. I principali sono GPIO (input-output), C Library (funzioni di base del linguaggio C) e M4 Core (funzioni core del processore). Quando uno o un altro componente viene attivato, CoIDE copia automaticamente i file necessari nella cartella del progetto, il che è molto comodo.
Passo 3. Inserimento del testo del programma. È piuttosto breve ed è mostrato in Tabella. 2. Come puoi vedere, tutto è semplice e ovvio. Coloro che hanno scritto programmi per microcontrollori AVR vedranno sicuramente costruzioni familiari: inizializzazione delle porte che indicano la direzione (ingresso o uscita), il ciclo principale in cui vengono eseguite le azioni necessarie. In generale, la sintassi del programma è pienamente coerente con il linguaggio C, la cui letteratura è più che sufficiente. Ci sono anche molti articoli sulla programmazione per STM32 su Internet. Molti esempi vengono forniti con la scheda di sviluppo e possono essere utilizzati anche come campioni. Dopo aver inserito il testo del programma premendo il pulsante sullo schermo "Download to flash", viene caricato nel microcontrollore. I LED sulla scheda iniziano a lampeggiare. Separatamente, vale la pena notare le capacità di debug: un punto di interruzione può essere impostato in qualsiasi punto del programma, è possibile eseguire il programma passo dopo passo, visualizzando i valori delle variabili. Naturalmente, questo esempio non è perfetto. Ad esempio, per controllare il lampeggio dei LED, è possibile utilizzare gli interrupt del timer, che liberano il ciclo principale del programma per altre attività. Chi lo desidera può occuparsene da solo. conclusione In generale, dopo la prima conoscenza, i microcontrollori della famiglia STM32 hanno lasciato un'impressione molto piacevole. Tutto si è rivelato non così difficile e la comodità dell'ambiente di sviluppo, il processo di debug e un gran numero di funzioni standard mi hanno persino ricordato in qualche modo il passaggio da Ms DOS a Windows: i punti generali sembrano essere gli stessi, ma tutto è molto più comodo e funzionale. Ma il principale svantaggio di questa famiglia per lo sviluppo amatoriale è ancora un passo di conclusioni troppo piccolo. Progettare e saldare a casa una scheda con un passo di piombo di 0,5 mm è un compito molto non banale. Ma ai prezzi attuali, le schede di debug con microcontrollori già montati sono abbastanza accessibili a tutti i radioamatori. Vale la pena rifare tutto su STM e architettura a 32 bit? Ovviamente no. Ci sono compiti per i quali ATtiny è sufficiente. Ma, ad esempio, per analizzare lo spettro in un ricevitore SDR fatto in casa o per ricevere e trasmettere grandi quantità di informazioni su una rete, è molto più efficiente utilizzare immediatamente un potente microcontrollore per non incorrere in una mancanza di memoria o prestazioni quando si migliora il dispositivo. Autore: D. Elyuseev Vedi altri articoli sezione Tecnologie radioamatoriali. Leggere e scrivere utile commenti su questo articolo. Ultime notizie di scienza e tecnologia, nuova elettronica: Trappola d'aria per insetti
01.05.2024 La minaccia dei detriti spaziali al campo magnetico terrestre
01.05.2024 Solidificazione di sostanze sfuse
30.04.2024
Altre notizie interessanti: ▪ Laboratorio in una tasca del gilet ▪ Le foreste non salvano dall'eccesso di anidride carbonica ▪ Il laser allontanerà il missile dal bersaglio News feed di scienza e tecnologia, nuova elettronica
Materiali interessanti della Biblioteca Tecnica Libera: ▪ sezione del sito Grande Enciclopedia per bambini e adulti. Selezione dell'articolo ▪ articolo Passo dell'inferno. Espressione popolare ▪ articolo Quale idea popolare dell'attrezzatura vichinga è un mito? Risposta dettagliata ▪ articolo Ledum palude. Leggende, coltivazione, metodi di applicazione ▪ articolo Apparecchio acustico. Enciclopedia dell'elettronica radio e dell'ingegneria elettrica ▪ articolo Enigmi su cibi e bevande
Lascia il tuo commento su questo articolo: Tutte le lingue di questa pagina Homepage | Biblioteca | Articoli | Mappa del sito | Recensioni del sito www.diagram.com.ua |