Arduino ICSP

Arduino ICSP

Ammar Ali May-12, 2021 May-09, 2021 Arduino Arduino ICSP
  1. Verwenden von ICSP-Pins zum Programmieren von AVR und Arduino
  2. Verwenden von ICSP-Pins für die Kommunikation zwischen zwei oder mehr Arduino-Boards

In diesem Tutorial werden wir die Verwendung von ICSP-Pins in Arduino diskutieren. ICSP steht für in-circuit serial programmer, auch bekannt als ISP.

Verwenden von ICSP-Pins zum Programmieren von AVR und Arduino

Arduino ist eine Karte mit einem Mikrocontroller, einem Programmierer und einigen Sicherheitskomponenten. In jedem vom Arduino-Team selbst bereitgestellten Arduino befindet sich ein bootloader, der mit dem PC kommuniziert und dem Mikrocontroller Anweisungen gibt, um eine Aufgabe wie das in einem Motherboard vorhandene BIOS auszuführen. Der bootloader ist vorprogrammiert und befindet sich im Flash-Speicher des Mikrocontrollers. Wenn Sie das Arduino mit Ihrem PC verbinden, wartet der bootloader darauf, dass eine Skizze auf den Mikrocontroller hochgeladen wird. Wenn keine Skizze bereitgestellt wird, führt der bootloader die bereits vorhandene Skizze im Flash-Speicher des Mikrocontrollers aus. Manchmal stürzt dieser bootloader ab und der Arduino kann nicht mit dem PC kommunizieren. Wenn dies der Fall ist oder Sie den bootloader oder einen anderen Mikrocontroller programmieren möchten, können Sie dazu eine andere Arduino-Karte verwenden. Zuerst müssen Sie überprüfen, wo sich die ICSP-Pins auf Ihrem Arduino-Board befinden. Sie können die Pin-Konfiguration Ihrer Arduino-Karte daraufhin überprüfen. Zum Beispiel, wenn Sie den bootloader eines Arduino UNO mit einem anderen Arduino UNO programmieren möchten. Verbinden Sie die beiden Arduino UNOs wie in der Abbildung gezeigt.

Arduino ICSP

Der erste Schritt besteht darin, den Programmierer Arduino als ISP einzustellen. Gehen Sie dazu in der Arduino IDE zur Registerkarte Tools und legen Sie den Programmierer als Arduino als ISP fest. Der nächste Schritt zur Verwendung eines im Abschnitt Arduino-Beispiele enthaltenen Beispielcodes als ArduinoISP. In diesem Beispielcode sehen Sie viele Kommentare, die Sie durch die Festlegung verschiedener Parameter führen. Dieser Code unterstützt auch drei LEDs, mit denen die Funktionsweise des Prozesses überprüft wird. Beispielsweise zeigt die mittlere LED an, wenn ein Programmierfehler vorliegt. Der nächste Schritt ist das Brennen des Bootloaders. Dazu können Sie auf die Registerkarte Extras gehen und bootloader brennen auswählen. Sie können verschiedene Parameter von bootloader einstellen, z. B. wie viel Speicher für den bootloader reserviert ist, und das Zurücksetzen deaktivieren. Lesen Sie daher unbedingt die Dokumentation Ihres Arduino-Boards, bevor Sie dies tun. Mit dieser Methode können Sie auch andere AVR-Mikrocontroller programmieren, da Sie in einigen Projekten keine Karte benötigen. Stattdessen benötigen Sie nur einen Mikrocontroller wie einen PIC-Mikrocontroller.

Verwenden von ICSP-Pins für die Kommunikation zwischen zwei oder mehr Arduino-Boards

Wenn Sie ein Projekt erstellen, in dem Sie mehr als eine Arduino-Karte benötigen und diese miteinander kommunizieren müssen, oder wenn Sie einige Arduino-Karten mit einer Master-Arduino-Karte steuern möchten. In diesen Fällen können Sie die ICSP-Pins für die Kommunikation verwenden.

Author: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook