Taybetmendiyên hilberê
(1) PCB-ya şematîk a hardware bi tevahî çavkaniya vekirî ye, nermalav çavkaniya vekirî ye, xetera mafê kopîkirinê tune ye.
Niha, jlink/stlinkên li sûkê korsan in, û di karanînê de hin pirsgirêkên yasayî hene. Dema ku hin jlink bi IDE-yê re wekî MDK-ê têne bikar anîn, ew ê korsaniyê çêbike û nikare bi awayekî normal were bikar anîn, û hin guhertoyên jlink piştî demek karanînê pirsgirêka windakirina firmware-ê hene. Dema ku firmware winda dibe, hûn hewce ne ku nermalavê bi destan vegerînin.
(2) Navrûya SWD ya pêşeng, piştgiriya nermalava debugkirina PC-ya sereke dike, di nav de keil, IAR, openocd, piştgiriya dakêşana SwD, debugkirina gavek yekane.
(3) Navrûya JTAG, bi openocd re dikare piştgirîya debugkirina hema hema hemî çîpên SoC li çaraliyê cîhanê bike, wekî rêzeya ARM Cortex-A, DSP, FPGA, MIPS, û hwd., ji ber ku protokola SWD tenê protokolek taybet e ku ji hêla ARM ve hatî destnîşankirin, û JTAG standarda navneteweyî ya IEEE 1149 e. Çîpa hedefa emulatorê ya asayî bi gelemperî rêzeya ARM Cortex-M ye, ku navrûya JTAG nade nasîn, û ev hilber navrûya JTAG dide nasîn, ku ji bo we guncan e ku hûn di bin platformên din de kar pêşve bibin û debug bikin.
(4) Piştgiriya porta rêzimanî ya virtual (ango, ew dikare wekî emulator an wekî amûrek porta rêzimanî were bikar anîn, li şûna ch340, cp2102, p12303)
(5) DAPLink piştgiriya nûvekirina firmware ya ajokera flash a USB dike, tenê nRST-ê erd bikin, wê bi DAPLink, PC-yê ve girêdin. Ajokerek flash a USB-ê dê hebe, tenê firmware-a nû (pelê hex an bin) bikişînin nav ajokera flash a USB-ê da ku nûvekirina firmware-ê temam bikin. Ji ber ku DAPLink bootloader-ek bi fonksiyona dîska U-yê bicîh tîne, ew dikare bi hêsanî nûvekirina firmware-ê temam bike. Ger hilberek we ya li ser bingeha STM32-ê di hilberîna girseyî de hebe, û dibe ku hilber paşê hewce bike ku were nûvekirin, koda bootloader-ê di DAPLink-ê de pir hêjayî referansa we ye, xerîdar ne hewce ye ku IDE-ya tevlihev an amûrên şewitandinê saz bike da ku nûvekirinê temam bike, tenê kaş bikin ser dîska U-yê dikare bi hêsanî nûvekirina hilberê xwe temam bike.
Prosedûra girêdana têlan
1. Emulatorê bi karta hedef ve girêbide
Diyagrama têlkirinê ya SWD
Diyagrama têlkirinê ya JTAG
Pirs û Bersîv
1. Têkçûna şewitandinê, nîşan dide ku ÇEWTIYA RDDI-DAP ye, çawa çareser bike?
A: Ji ber ku leza şewitandina simulatorê bilez e, sînyala di navbera xeta dupont de dê xaçerêyê çêbike, ji kerema xwe hewl bidin ku xeta Dupont a kurttir, an xeta Dupont a bi hev ve girêdayî biguherînin, hûn dikarin hewl bidin ku leza şewitandinê kêm bikin, bi gelemperî dikare bi rengek normal were çareser kirin.
2. Ger hedef neyê tespîtkirin, ev yek nîşan dide ku ragihandin têk çûye, divê çi were kirin?
A: Ji kerema xwe pêşî kontrol bikin ka kabloya hardware rast e (GND, CLK, 10, 3V3), û dûv re kontrol bikin ka dabînkirina hêzê ya karta hedef normal e. Ger karta hedef ji hêla simulatorê ve tê xebitandin, ji ber ku herikîna derana herî zêde ya USB-yê tenê 500mA ye, ji kerema xwe kontrol bikin ka dabînkirina hêzê ya karta hedef têrê nake.
3. Kîjan şewitandina debugging çîpê ji hêla CMSIS DAP/DAPLink ve tê piştgirî kirin?
A: Senaryoya karanîna tîpîk bernamekirin û debugkirina MCU ye. Bi teorîkî, kernela rêzeya Cortex-M dikare DAP-ê ji bo şewitandin û debugkirinê bikar bîne, çîpên tîpîk ên wekî rêzeya tevahî ya çîpên STM32, rêzeya tevahî ya GD32, rêzeya nRF51/52 û hwd.
4. Ma ez dikarim emûlatorê DAP-ê ji bo debugkirinê di bin Linux-ê de bikar bînim?
A: Di bin Linuxê de, hûn dikarin openocd û emulatora DAP ji bo debuggingê bikar bînin. openocd debuggerê çavkaniya vekirî yê herî populer û bihêz ê cîhanê ye. Her weha hûn dikarin openocd di bin Windowsê de bikar bînin, bi nivîsandina skrîpteke mîhengê ya guncaw hûn dikarin debugginga çîpê, şewitandin û operasyonên din bi dest bixin.
Wênegirtina berheman