Bagikan melalui


Men-debug aplikasi tingkat tinggi

  1. Pastikan perangkat Anda tersambung ke PC menggunakan USB. Di menu Atur item mulai , pilih Aplikasi Azure Sphere (HLCore) di mana Aplikasi Azure Sphere adalah nama aplikasi tingkat tinggi Anda saat ini atau tekan F5.

    Tombol Debugger GDB Jarak Jauh

  2. Jika Diminta untuk menyusun proyek, pilih Ya. Visual Studio menyusun aplikasi, membuat paket gambar, memuat sisinya ke papan, dan memulainya dalam mode debug. Sideloading berarti bahwa aplikasi dikirim langsung dari PC melalui koneksi berkabel, daripada dikirimkan melalui cloud.

    Perhatikan ID gambar paket gambar dalam outputTampilkan Output>Tampilan>dari: Output build. Anda akan menggunakan ID gambar nanti di Tutorial: Membuat penyebaran awan.

  3. Secara default, jendela Output memperlihatkan output dari Output Perangkat. Untuk melihat pesan dari debugger, pilih Debug dari menu menurun Perlihatkan output dari: . Anda juga dapat memeriksa pembongkaran, pendaftaran, atau memori program melalui menu Debug>Windows .

Anda kemudian dapat menggunakan debugger Visual Studio untuk mengatur titik hentian, menjeda, melangkah, masuk, memulai ulang, atau menghentikan aplikasi.

Selagi berhenti di titik hentian dalam kode sumber C, Anda dapat membuka jendela Disassembly yang memperlihatkan alamat saat ini, mnemonic perakit untuk perintah saat ini, dan informasi seperti register yang dilibatkan atau perintah kode sumber sedang dijalankan.

Untuk membuka jendela Disassembly :

  1. Pastikan bahwa file sumber kode C yang berisi titik hentian terbuka di Visual Studio.
  2. Pilih Debug>Windows>Disassembly, atau tekan Alt+8.
  1. Tekan F5 untuk menyusun dan men-debug proyek. Jika proyek belum dibuat sebelumnya, atau jika file telah diubah dan dibuat ulang diperlukan, Visual Studio Code akan membuat proyek sebelum proses debug dimulai.

  2. Tunggu beberapa detik hingga Visual Studio Code menyusun aplikasi, membuat paket gambar, menyebarkannya ke papan, dan memulainya dalam mode debug. Anda akan melihat pembaruan status di panel Output di sepanjang jalan.

    Pertama, CMake menentukan apakah aplikasi perlu dibuat. Jika demikian, fokus bergeser ke jendela output, yang menampilkan output dari CMake/Build.

    Berikutnya, panel Output memperlihatkan hasil saat paket gambar disebarkan ke perangkat. Akhirnya, Konsol Debug menerima fokus dan memperlihatkan output debugger.

Gunakan Visual Studio Code debugger untuk mengatur titik hentian, jeda, melangkah, masuk, memulai ulang, atau menghentikan aplikasi.

Saat berhenti di titik hentian dalam kode sumber C, Anda dapat membuka tampilan Disassembly yang memperlihatkan alamat saat ini, data heks mentah, mnemonic perakit untuk perintah saat ini, dan informasi seperti register yang terlibat atau perintah kode sumber sedang dijalankan.

Untuk membuka tampilan Disassembly:

  1. Pastikan bahwa file sumber kode C yang berisi titik hentian terbuka di editor Visual Studio Code.
  2. Klik kanan di jendela editor dan pilih Buka Tampilan Disassembly atau pilih Tampilkan>Tampilan> Palet PerintahBuka Disassembly.

Untuk men-debug aplikasi, hentikan dan mulai ulang aplikasi dengan proses debug:

az sphere device app stop --component-id <ComponentId>
az sphere device app start --debug-mode --component-id <ComponentId>

Anda akan melihat:

<ComponentID>
App state   : debugging
GDB port    : 2345
Output port : 2342
Core        : High-level
Command completed successfully in 00:00:00.9121174.
  1. Buka prompt perintah dan gunakan klien terminal Windows untuk membuat koneksi Telnet atau TCP mentah untuk membaca aliran output dari proses. Tentukan 192.168.35.2 sebagai alamat IP dan 2342 sebagai port.

  2. Buka antarmuka baris perintah menggunakan PowerShell, Windows Command Prompt, atau shell perintah Linux. Mulai debugger baris perintah gdb :

    Prompt Perintah Windows

    "C:\Program Files (x86)\Microsoft Azure Sphere SDK\Sysroots\*sysroot*\tools\gcc\arm-poky-linux-musleabi-gdb.exe" IntercoreComms_HighLevelApp.out
    

    Windows PowerShell

    & "C:\Program Files (x86)\Microsoft Azure Sphere SDK\Sysroots\*sysroot*\tools\gcc\arm-poky-linux-musleabi-gdb.exe" IntercoreComms_HighLevelApp.out
    

    Catatan

    SDK Azure Sphere dikirim dengan beberapa sysroot sehingga aplikasi dapat menargetkan kumpulan API yang berbeda, seperti yang dijelaskan dalam Versi runtime aplikasi, sysroot, dan API Beta. Sysroot diinstal di folder penginstalan Azure Sphere SDK di bawah Sysroots.

  3. Atur target debugging jarak jauh ke alamat IP 192.168.35.2 pada port 2345:

    target remote 192.168.35.2:2345
    
  4. Jalankan perintah gdb apa pun yang Anda pilih. Misalnya:

    break main
    
    c
    

    Perintah break mengatur c titik hentian pada entri ke main() lalu melanjutkan eksekusi setelah titik hentian. Berbagai sumber dokumentasi tersedia untuk gdb.