Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link
Komponen dan Perlengkapan
Arduino Portenta H7
×
1
Papan Breakout Arduino Portenta H7
×
1
Debug Probe Segger J-Link
×
1
Adapter Segger Cortex M
×
1
Aplikasi dan Layanan Online
Arduino IDE
Microsoft Visual Studio 2017
Visual Micro
Ringkasan Proyek
Arduino Portenta H7 menyediakan arsitektur dual-core yang kuat: Cortex-M7 dengan kecepatan 480 MHz dan Cortex-M4 dengan kecepatan 240 MHz. Kedua core dapat menjalankan firmware independen dan berkomunikasi melalui memori bersama atau semaphore.
Debugging kedua core secara bersamaan memerlukan antarmuka SWD khusus dan debugger yang mendukung sesi multi-target. Dalam panduan ini kami menunjukkan cara menggunakan Segger J-Link untuk terhubung ke setiap core, menyiapkan lingkungan pengembangan, dan menjalankan contoh blink sederhana yang menunjukkan kontrol independen LED setiap core.
Pemasangan Hardware
1. Pasang Portenta H7 pada papan breakout-nya. Papan tersebut mengekspos header 20-pin gaya MIPS yang terhubung ke pin SWD kedua core.
2. Pasang konverter 20-pin MIPS pada header breakout untuk memisahkan sinyal debugging.
3. Rangkai konverter ke Segger J-Link sesuai diagram pin-out di bawah. Jika Anda menginginkan solusi kustom, gunakan konektor jarak 0,05 inci dan ikuti contoh rangkaian yang ditunjukkan pada gambar kedua.
2. Instal Microsoft Visual Studio (2017, 2019 atau 2022) dan ekstensi Visual Micro (instruksi lengkap tersedia di situs web Visual Micro).
3. Tambahkan paket Arduino Mbed OS Portenta Boards melalui Visual Micro Explorer atau Boards Manager di Arduino IDE.
4. Ganti driver USB pada Interface 0 Segger J-Link dengan driver WinUSB menggunakan Zadig. Video walkthrough pendek tersedia di bawah.
Mari Kode
Siapkan dua proyek terpisah, satu untuk setiap core. Contoh Blink berikut menyalakan LED yang berbeda pada setiap core dan dapat di-debug secara independen.
Penting: Dalam proyek M7 panggil bootM4() di awal setup() untuk memastikan kedua core aktif.
Debug Setup: Core M7
Buka sketsa M7 di Visual Studio, buka Debug > Hardware dan pilih Segger J-Link Debugger (bukan versi NoOpenOCD). Bangun dan unggah sketsa ke core M7.
Debug Setup: Core M4
Buka sketsa M4, pilih Debug > Hardware, dan pilih Segger J-Link Debugger (NoOpenOCD). Bangun dan unggah ke core M4.
Mulai Debugger
Pertama launch sesi debugging untuk sketsa M7 menggunakan Debug > Attach to Process. Ulangi langkah yang sama untuk sketsa M4. Anda sekarang dapat menetapkan breakpoint di salah satu proyek, jeda, langkah demi langkah, atau lanjut secara independen—setiap core merespons perintahnya sendiri.
Video Walkthrough
Tonton demonstrasi langkah demi langkah di YouTube: