Kostenlose technische Bibliothek ENZYKLOPÄDIE DER FUNKELEKTRONIK UND ELEKTROTECHNIK STM32-Mikrocontroller und Debug-Boards dafür. Enzyklopädie der Funkelektronik und Elektrotechnik Lexikon der Funkelektronik und Elektrotechnik / Amateurfunk-Technologien Funkamateure nutzen seit vielen Jahren Acht-Bit-Mikrocontroller der PIC- und AVR-Familien. Sie sind aufgrund ihres niedrigen Preises, der detaillierten Dokumentation, der einfachen Programmierung und der einfachen Installation beliebt. Allerdings kommt es häufig vor, dass die Leistung eines solchen Mikrocontrollers nicht ausreicht, um die Aufgabe zu lösen. Das einfachste Beispiel ist ein Frequenzmesser oder Signalgenerator auf einem Mikrocontroller, bei dem die maximal gemessene oder erzeugte Frequenz direkt von der Geschwindigkeit der Verarbeitung oder Ausgabe von Informationen abhängt. Neben der Geschwindigkeit weisen 32-Bit-Mikrocontroller weitere Einschränkungen auf. Beispielsweise verfügen viele AVR-Modelle nur über einen seriellen Hardware-Port, der es nicht ermöglicht, Informationen von einem externen Gerät zu empfangen und gleichzeitig die Ergebnisse ihrer Verarbeitung an den Verbraucher zu senden. Ganz zu schweigen von so „banalen“ Dingen wie der Anzeige von Informationen auf einem grafischen Indikator, die große Ressourcen erfordert, sowohl Geschwindigkeit als auch Speicher. Nach der Analyse einer Reihe solcher Einschränkungen kam der Autor auf die Idee, auf Mikrocontroller der STMXNUMX-Familie umzusteigen. Betrachten Sie beispielsweise zwei Mikrocontroller derselben Preiskategorie – STM32F103C6 und ATmega328P. Tabelle 1
Ihre Vergleichsparameter sind in der Tabelle angegeben. 1. Die Vergleichsergebnisse sind sogar einigermaßen überraschend. Ein 32-Bit-Mikrocontroller ist nicht nur in fast allen Belangen leistungsfähiger als ein 0,5-Bit-Mikrocontroller, sondern auch günstiger. Natürlich ist es nicht so einfach, einen Mikrocontroller mit einem Pinabstand von 32 mm zu Hause zu löten. Glücklicherweise ist dies in den meisten Fällen nicht erforderlich – es gibt viele Varianten von Debug-Boards mit Mikrocontrollern der STMXNUMX-Familie auf dem Markt, die für verschiedene Anwendungen ausreichen. Betrachten wir sie genauer. STM32F4-ENTDECKUNG Dieses Board (siehe Abb. 1) ist für Anfänger vielleicht das bequemste Board zum Erlernen von STM-Mikrocontrollern. Erstens verfügt es über eine große Auswahl an Peripheriegeräten. Neben dem Mikrocontroller verfügt die Platine über einen mikroelektromechanischen Beschleunigungsmesser, ein Mikrofon, einen Audio-DAC, zwei USB-Anschlüsse, einen Taster und vier LEDs.
Die Mikrocontroller-Ausgänge werden an die Kontaktpads zur Montage von Stiftanschlüssen am linken und rechten Rand der Platine geführt, sodass alle erforderlichen externen Geräte problemlos angeschlossen werden können. Der auf der Platine verbaute Mikrocontroller STM32F407VGT6 verfügt über sehr gute Parameter: 1 MB FLASH-Speicher, 192 KB RAM und eine Taktfrequenz von 168 MHz. Und schließlich ist das Board mit einem integrierten ST-LINK/V2-Debugger ausgestattet, mit dem Programme nicht nur auf dem Mikrocontroller auf dem Board, sondern auch auf Mikrocontrollern derselben Familie, die sich auf anderen Boards befinden, debuggt werden können. Die Umschaltung erfolgt über einen abnehmbaren Jumper und einen SWD-Stecker. Der Preis des Boards beträgt etwa 800 Rubel, was als durchaus akzeptabel angesehen werden kann. STM32F103RBT6 Entwicklungsboard Die nächste interessante Option ist ein Debug-Board mit einem STM32F103RBT6-Mikrocontroller (Abb. 2).
Es ist etwas schwächer als das auf dem Vorgängerboard verbaute - eine Taktrate von 72 MHz, 128 KB FLASH-Speicher und 20 KB RAM, aber die Peripherie ist sehr interessant. 320x240px 2.8' TFT-Touchscreen, integrierter USB-Anschluss für PC-Kommunikation, SD-Speicherkartensteckplatz, 32768-Hz-Quarzuhr, Echtzeituhr-Batteriefach und ST-LINK-Anschluss zum Debuggen von Programmen. Der Preis für dieses Board beträgt ebenfalls etwa 800 Rubel, es ist jedoch zu beachten, dass es keinen integrierten Debugger hat. Um Programme herunterzuladen, müssen Sie entweder einen separaten ST-LINK-Debugger erwerben oder stattdessen das oben beschriebene STM32F4-DISCOVERY-Board verwenden Ahorn Mini Auffallend ist die äußerliche Ähnlichkeit dieser Platine (Abb. 3) mit den bekannten Arduino-Modulen. Und das ist kein Zufall.
Das Maple Mini-Board wurde als Ersatz für den Arduino Nano entwickelt. Die Programmiersprache und Entwicklungsumgebung für auf dem Arduino verbaute Mikrocontroller der AVR-Familie wurden an die STM-Familie angepasst. Weitere Informationen zur Programmiersprache und Entwicklungsumgebung Maple IDE finden Sie unter http://leaflabs.com/docs/maple-q uickstart.html. Das Entwicklungsboard verfügt über einen STM32F103CBT6-Mikrocontroller mit 72 MHz, 128 KB FLASH und 20 KB RAM, was zweifellos mehr ist als in jedem Arduino-Modul. Und das größere Plus ist, dass sich an der Entwicklungsumgebung nicht viel geändert hat. Unabhängig davon stellen wir fest, dass Maple Mini trotz seiner Miniaturgröße eine sehr vielfältige Peripherie bietet: 34 I/O-Leitungen, zwei SPI-Schnittstellenkanäle und zwei I2C, drei serielle Ports. Dadurch können Sie es erfolgreich in verschiedenen Amateurentwicklungen anwenden. Aufgrund seiner geringen Größe kann Maple Mini direkt in das zu entwickelnde Gerät eingebaut werden. Das Original-Maple-Mini-Board kann für 35 US-Dollar auf der Original-Maple-Mini-Website erworben werden. Weitere 5 $ fallen für den Versand an. Eine in China hergestellte Kopie der Platine kostet die Hälfte. Software Es gibt mehrere Möglichkeiten für Entwicklungsumgebungen, mit denen Programme für Mikrocontroller der STM32-Familie erstellt werden können: - kommerzielle IAR Embedded Workbench, AtollicTrueSTUDIO, Keil usw. Diese voll ausgestatteten Produkte sind mit einem Lizenzpreis von 1000 Euro recht teuer, es gibt aber auch kostenlose Demoversionen mit einer Begrenzung der Menge des zu entwickelnden Programms völlig ausreichend für die meisten einfachen Projekte; - Der kostenlose Eclipse mit ARM-GCC-Compiler erfordert vor der Verwendung eine nicht triviale Compiler-Einrichtung. Das einzige Plus heute ist die Möglichkeit, nicht nur unter Windows, sondern auch unter Linux zu arbeiten; - kostenlose CooCox-IDE (CoIDE), basierend auf demselben Eclipse-Editor. Führt das Laden und Debuggen von Programmen über ST-LINK durch. Im Gegensatz zur Vorgängerversion erfordert CoIDE keine besonderen Einstellungen und funktioniert sofort nach der Installation. Diese Option ist die bequemste und sollte genutzt werden. Lassen Sie uns mithilfe der CooCox-IDE ein Beispielprogramm für das STM32F4-DISCOVERY-Board erstellen, das den Klassiker für das erste Programm für alle blinkenden LEDs eines Mikrocontrollers implementiert. Auf der STM32F4-DIS-COVERY-Platine befinden sich vier LEDs, die mit den PD12-PD15-Pins des Mikrocontrollers verbunden sind. Lassen wir sie abwechselnd blinken. Schritt 1. Wir starten die CoIDE-Entwicklungsumgebung und erstellen ein Projekt. Aus der Dropdown-Liste in Abb. 4. Wählen Sie den Mikrocontroller STM32F407VG aus.
Schritt 2. Wie in Abb. gezeigt. 5. Wählen Sie die Komponenten aus, die im Projekt verwendet werden sollen. Die wichtigsten sind GPIO (Eingabe-Ausgabe), C-Bibliothek (grundlegende C-Sprachfunktionen) und M4 Core (Prozessorkernfunktionen). Wenn die eine oder andere Komponente aktiviert wird, kopiert CoIDE automatisch die erforderlichen Dateien in den Projektordner, was sehr praktisch ist.
Schritt 3. Programmtext eingeben. Es ist ziemlich kurz und wird in der Tabelle gezeigt. 2. Wie Sie sehen, ist alles einfach und offensichtlich. Diejenigen, die Programme für AVR-Mikrocontroller geschrieben haben, werden sicherlich bekannte Konstruktionen sehen – die Initialisierung von Ports, die die Richtung (Eingabe oder Ausgabe) angeben, die Hauptschleife, in der die notwendigen Aktionen ausgeführt werden. Im Allgemeinen stimmt die Syntax des Programms vollständig mit der Sprache C überein, zu der es mehr als genug Literatur gibt. Auch im Internet gibt es zahlreiche Artikel zum Thema Programmierung für STM32. Viele Beispiele liegen dem Entwicklungsboard bei und können auch als Muster verwendet werden. Nach Eingabe des Programmtextes durch Drücken der Bildschirmtaste „Download to Flash“ wird dieser in den Mikrocontroller geladen. Die LEDs auf der Platine beginnen zu blinken. Unabhängig davon sind die Debugging-Funktionen hervorzuheben – ein Haltepunkt kann an einer beliebigen Stelle im Programm festgelegt werden, Sie können das Programm Schritt für Schritt ausführen und dabei die Werte von Variablen anzeigen. Natürlich ist dieses Beispiel nicht perfekt. Um beispielsweise das Blinken von LEDs zu steuern, können Sie Timer-Interrupts verwenden, wodurch die Hauptprogrammschleife für andere Aufgaben frei wird. Wer möchte, kann dies selbst in die Hand nehmen. Abschluss Generell hinterließen die Mikrocontroller der STM32-Familie nach dem ersten Kennenlernen einen sehr angenehmen Eindruck. Es stellte sich heraus, dass alles nicht so schwierig war, und die Bequemlichkeit der Entwicklungsumgebung, der Debugging-Prozess und eine große Anzahl von Standardfunktionen erinnerten mich sogar irgendwie an den Übergang von MS DOS zu Windows – die allgemeinen Punkte scheinen die gleichen zu sein, aber alles ist viel bequemer und funktionaler. Der Hauptnachteil dieser Familie für die Amateurentwicklung ist jedoch immer noch ein zu kleiner Schritt der Schlussfolgerungen. Das Entwerfen und Löten einer Platine mit einem Leiterabstand von 0,5 mm zu Hause ist keine triviale Aufgabe. Aber zu aktuellen Preisen sind Debug-Boards mit bereits montierten Mikrocontrollern für jeden Funkamateur durchaus zugänglich. Lohnt es sich, alles auf STM und 32-Bit-Architektur umzustellen? Natürlich nicht. Es gibt Aufgaben, für die ATtiny ausreicht. Aber um beispielsweise das Spektrum in einem selbstgebauten SDR-Empfänger zu analysieren oder große Informationsmengen über ein Netzwerk zu empfangen und zu übertragen, ist es viel effizienter, sofort einen leistungsstarken Mikrocontroller zu verwenden, um nicht in einen Mangel an Speicher oder Leistung zu geraten bei der Verbesserung des Geräts. Autor: D. Elyuseev Siehe andere Artikel Abschnitt Amateurfunk-Technologien. Lesen und Schreiben nützlich Kommentare zu diesem Artikel. Neueste Nachrichten aus Wissenschaft und Technik, neue Elektronik: Eine neue Möglichkeit, optische Signale zu steuern und zu manipulieren
05.05.2024 Primium Seneca-Tastatur
05.05.2024 Das höchste astronomische Observatorium der Welt wurde eröffnet
04.05.2024
Weitere interessante Neuigkeiten: ▪ eHighway Elektrische Autobahn ▪ Weiche Elektronik ist vielschichtig geworden ▪ Für die Elektronik der Zukunft wurden Quantenpunkte gezüchtet ▪ Matte für eine effektive Herz-Lungen-Wiederbelebung News-Feed von Wissenschaft und Technologie, neue Elektronik
Interessante Materialien der Freien Technischen Bibliothek: ▪ Site-Bereich Frequenzsynthesizer. Artikelauswahl ▪ Artikel Ich höre nicht die Rede eines Jungen, sondern eines Ehemannes. Populärer Ausdruck ▪ Artikel Ist es möglich, einen Menschen gegen seinen Willen zu hypnotisieren? Ausführliche Antwort ▪ Artikel Im Dienst an der Rolltreppe. Jobbeschreibung ▪ Artikel Staub - Kashcheeva Computernadel. Enzyklopädie der Funkelektronik und Elektrotechnik
Hinterlasse deinen Kommentar zu diesem Artikel: Alle Sprachen dieser Seite Startseite | Bibliothek | Artikel | Sitemap | Site-Überprüfungen www.diagramm.com.ua |