Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link

Komponen dan Perlengkapan

Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link
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

Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link
Arduino IDE
Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link
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.

Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link
Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link

Pemasangan Perangkat Lunak

1. Instal Arduino IDE (unduh dari situs web Arduino).

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.

Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link

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.

Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link

Video Walkthrough

Tonton demonstrasi langkah demi langkah di YouTube:

Debugging Portenta H7 Dual-Core dengan Segger J-Link

Kode

  • Kode Blink H7 M4
  • Kode Blink H7 M5
Kode Blink H7 M4Arduino
// Blink pada Core M4 Portenta void setup() { pinMode(LED_BLUE, OUTPUT); } void loop() { digitalWrite(LED_BLUE, HIGH); delay(1000); digitalWrite(LED_BLUE, LOW); delay(1000); } 
Kode Blink H7 M5Arduino
// Blink pada Core M7 Portenta void setup() { bootM4(); // Aktifkan core M4 pinMode(LED_RED, OUTPUT); } void loop() { digitalWrite(LED_RED, HIGH); delay(1000); digitalWrite(LED_RED, LOW); delay(1000); } 

Skematik

Cara menghubungkan pin SWD pada Papan Breakout ke Segger J-Link:

Debugging Sistem Dual-Core Arduino Portenta H7 dengan Segger J-Link

Proses manufaktur

  1. Arduino Meluncurkan Portenta H7: Papan IoT Industri-Grade Debut di CES
  2. Membuat Spybot Arduino yang Dikontrol melalui Bluetooth
  3. FlickMote: Remote IR Kendali Gestur untuk Rumah Cerdas
  4. DIY Arduino TV B-Gone: Remote Universal untuk Semua TV
  5. Bangun Jam Master LED Kustom dengan Alarm – Terlihat dari Jarak 12 Meter
  6. Find Me: Pelacak Item Cerdas dengan Arduino dan Bluetooth
  7. Solusi Daya Teroptimasi untuk Proyek Arduino
  8. Tic Tac Toe Arduino dengan Matriks LED MAX7219 dan Kotak Kardus
  9. Membuat Robot Quadruped Arduino Cerdas: Panduan Langkah demi Langkah
  10. Volant Joystick Arduino Kustom untuk Gaming