So verwenden Sie die Arduino-Entwicklungsumgebung, um ein gemeinsames Mikrocontroller-Entwicklungsboard zu entwickeln

2022-09-08
Wie benutzt man dieArduinoEntwicklungsumgebung zur Entwicklung gewöhnlicher Single-Chip-Entwicklungsboards, viele Anfänger sind sich darüber nicht sehr im Klaren. Um Ihnen bei der Lösung dieses Problems zu helfen, wird der folgende Editor ausführlich erklären etwas gewinnen kann.

DasArduino-Entwicklungsboardbettet normalerweise den Bootloader-Code in den Code ein und verwendet die IAP-Funktion des Mikrocontrollers, um das Programm über den USB-Anschluss herunterzuladen. Tatsächlich ist es auch möglich, das Programm herunterzuladen, indem die Hex- oder Bin-Datei des generierten Programms richtig eingestellt und dann mit dem Downloader auf die MCU heruntergeladen wird. Auf diese Weise können die Arduino-Entwicklungsumgebung und Open-Source-Materialien verwendet werden, um Programme für andere gängige MCU-Entwicklungsboards auf dem Markt zu entwickeln. Dieser Artikel nimmt MapleIDE zur Entwicklung gewöhnlicher STM32-Mikrocontroller-Programme als Beispiel zur Veranschaulichung.

In demArduino-Entwicklungsumgebung, wenn build.path="storage path" zur letzten Zeile der Datei lib\preferences.txt hinzugefügt wird, wird eine Hex- oder Bin-Datei im entsprechenden Ordner generiert, nachdem zum Kompilieren die Umschalttaste gedrückt wurde. Da diese Datei jedoch den Startvorgang des Bootloaders enthält, kann sie nicht direkt in den Mikrocontroller heruntergeladen werden. Folgende Einstellungen müssen vorgenommen werden:

1. Fügen Sie die Parameter des Entwicklungsplatinentyps STM32F103RBT6 in hardware\leaflabs\boards.txt wie folgt hinzu, die Parameter können je nach Mikrocontroller geändert werden

mapleJTAG.name=LeafLabs Maple Rev 3+ auf JTAG

mapleJTAG.upload.file_type=bin

mapleJTAG.upload.maximum_size=128000

mapleJTAG.upload.ram.maximum_size=20000

mapleJTAG.upload.flash.maximum_size=128000

mapleJTAG.upload.usbID=1EAF:0003

mapleJTAG.upload.altID=1

mapleJTAG.upload.uploader=dfu-util

mapleJTAG.upload.auto_reset=true

mapleJTAG.build.board=Ahorn

mapleJTAG.build.mcu=STM32F103RB

mapleJTAG.build.family=cortex-m3

mapleJTAG.build.f_cpu=72000000L

mapleJTAG.build.core=Ahorn

mapleJTAG.build.submdl=stm32f103

mapleJTAG.build.vect=VECT_TAB_BASE

mapleJTAG.build.linker=maple/jtag.ld

mapleJTAG.build.using=Armcompiler

mapleJTAG.build.density=STM32_MEDIUM_DENSITY

mapleJTAG.build.error_led_port=GPIOA

mapleJTAG.build.error_led_pin=5

2. Beachten Sie, dass die wichtigsten Inhalte des Programmspeicherplatzes in maple\jtag.ld wie folgt sind:

ERINNERUNG

{

RAM (rwx): URSPRUNG = 0x20000000, LÄNGE = 20K

rom (rx): URSPRUNG = 0x08000000, LÄNGE = 128K

}

Nach Abschluss der obigen Einstellungen kann die Programmentwicklung durchgeführt werden. Nachdem das Programm entwickelt wurde, kann die Download-Software für die serielle Schnittstelle verwendet werden, um das Programm in den STM32-Mikrocontroller herunterzuladen. Beachten Sie, dass die von STM32 häufig verwendete MCU-ISP-Download-Software für serielle Ports manchmal .bin-Dateien nicht gut unterstützt. Hier wird die Download-Software von uISP für STM32 empfohlen.