Talaan ng mga Nilalaman:
Video: Serial Debugging With CloudX: 3 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Sa proyektong ito, naglalayon ako na mapalabas ang konsepto ng pag-debug sa pamamagitan ng serial terminal. Ngunit una bilang isang nagsisimula, hinahayaan ang explaing ang konsepto nito sa pamamagitan ng mga kahulugan nito.
1. serial komunikasyon
ang serial na komunikasyon ay para sa komunikasyon sa pagitan ng board ng CloudX at isang computer o iba pang mga aparato. Ang lahat ng mga board ng CloudX ay mayroong kahit isang nakita na serial port (kilala rin bilang isang UART o USART): Serial. Nakikipag-usap ito sa digital RX at TX pin sa iba pang mga hardwares o serial module ng komunikasyon (tulad ng gsm at gps) tulad ng computer sa pamamagitan ng USB gamit ang SoftCard. Kaya, kung gagamitin mo ang mga pagpapaandar na ito, hindi mo rin magagamit ang TX at RX para sa digital input o output. Maaari mong gamitin ang built-in na serial monitor ng kapaligiran ng CloudX upang makipag-usap sa isang CloudX board. I-click ang pindutang serial monitor sa toolbar at piliin ang parehong rate ng baud na ginamit sa parameter na tinawag sa serialBegin ().
2. Pag-debug
Nangangahulugan lamang ang pag-debug na kilalanin at alisin ang mga error mula sa (computer hardware o software). Ang pag-debug ay nagsasangkot sa paghahanap at pagwawasto ng mga error sa code sa isang computer program. Ang pag-debug ay bahagi ng proseso ng pagsubok ng software at isang mahalagang bahagi ng buong buong buhay ng software development. Hinahayaan natin halimbawa na matagumpay na naipon ang iyong code at sinusubukan mo ang iyong hardware at hindi ito gumagana tulad ng inaasahan, bagaman maraming paraan upang i-debug ang iyong code; isang simple at effectice na paraan upang ma-debug ito ay sa pamamagitan ng paggamit ng serial debugging. Bumubuo ang CloudX IDE ng 2 uri ng file sa matagumpay na pagtitipon, HEX at COFF file. Ang HEX file ay mahigpit na code ng makina na kung saan ay na-bootload sa board para sa pagpapatupad sa totoong mundo ngunit maaari ding tumakbo sa iyong mga software ng simulation ng PC tulad ng Proteus Isis habang ang file ng COFF ay isang nababasa na format na naisasagawa sa iyong mga software ng simulation ng PC (Proteus Isis). Para sa saklaw na ito isasaalang-alang namin ang dalawang pangunahing uri ng pag-debug sa serial protocol,
1. Soft Serial Debugging:
Sa pamamaraang ito, ang bawat pagsubok at pag-debug ay ginagawa sa PC sa pamamagitan ng ilang kapaki-pakinabang na software tulad ng Proteus ISIS. Dahil ang CloudX ay karaniwang bumubuo ng COFF file, inirerekumenda kong gamitin ito para sa simulation ng PC dahil dito maaari kang karaniwang hakbang sa pagitan ng mga linya ng mga code at malaman kung saan nagmumula ang isang problema, at kung ang iyong code ay dapat tumakbo nang walang hakbang, gamit ang virtual teminal mula sa "virtual tool mode na instrumento ", palagi mong malalaman kung saan aling linya ang nagpapatakbo ng controller sa anumang naibigay na oras. hinayaan nating tingnan ang halimbawa ng code na ito,
Hakbang 1:
/*
* File: newmain.c
* May-akda: OGBOYE GODWIN * * Nilikha noong Hunyo 28, 2018, 10:15 AM * /
# isama
# isama
/ * gagawa kami
pulang pin1 berde pin2 dilaw na pin3 * pindutan pin4 * / char * sabihin = "hmmm, nahipo ako"; setup () {pinMode (1, OUTPUT); pinMode (2, OUTPUT); pinMode (3, OUTPUT); pinMode (4, INPUT); Serial_begin (9600); loop () {habang (! readPin (4)); Serial_writeText (sabihin); Serial_writeText ("โฆ.maglilipat sa pula"); Serial_write (0x0D); portWrite (1, 0x00); pinSelect (1, TAAS); mga pagkaantala (200); // subukang alisin ang pagkomento sa lahat ng pagkaantala at tingnan kung ano ang mangyayari // pagkatapos ay palitan ang mga ito (tiyak na gugustuhin mong!). habang (! readPin (4)); Serial_writeText (sabihin); Serial_writeText ("โฆ.moving to green"); Serial_write (0x0D); portWrite (1, 0x00); pinSelect (2, MATAAS); mga pagkaantala (200); // subukang alisin ang pagkomento sa lahat ng pagkaantala at tingnan kung ano ang mangyayari // pagkatapos ay palitan ang mga ito (tiyak na gugustuhin mong!).
habang (! readPin (4));
Serial_writeText (sabihin); Serial_writeText ("โฆ.maglilipat sa dilaw"); Serial_write (0x0D); portWrite (1, 0x00); pinSelect (3, TAAS); mga pagkaantala (200); // subukang alisin ang pagkomento sa lahat ng pagkaantala at tingnan kung ano ang mangyayari // pagkatapos ay palitan ang mga ito (tiyak na gugustuhin mong!). }}
sa pamamagitan nito maaari mong makita kung gaano kahalaga ang Serial debugging kung aalisin mo ang pagkaantala. kung ginawa mo iyon ay makikita mo kung gaano kaguluhan ang simpleng code na maaaring maging sanhi kung ito ay naisakatuparan sa totoong mundo nang wala ang mga pagkaantala.
Hakbang 2:
2. Pag-debug ng Hardware:
Sa pamamaraang ito, ang bawat pagsubok at pag-debug ay ginagawa sa pamamagitan ng paglakip ng CloudX prototype board sa PC gamit ang softCard at paggamit ng alinman sa serial terminal ng CloudX IDE (inirekomenda) o ilang iba pang kapaki-pakinabang na software tulad ng Proteus ISIS compim, realTerm, atbp. Bumuo ng COFF gagamitin ang file cant dito dahil ang pamamaraang ito ay hinihingi ang HEX bootloaded sa hardware, inirerekumenda kong gamitin ito para sa CloudX softcard. Tandaan na tatakbo ang iyong code nang walang hakbang upang lagi mong malaman kung aling aling linya ang controller ay tumatakbo sa anumang naibigay na oras ng serial output. Hinahayaan mong tingnan ang code na ito sa parehong halimbawang nakalista sa itaas, i-setup ang iyong hardware upang maging similer sa minahan ng pulang LED --------- sa pin1 berde na LED --------- pin2 dilaw na LED - ------- pindutan ng pin3 --------- pin4
Hakbang 3:
mga hakbang
1. Gumamit ng parehong code tulad ng nasa itaas
2. bootload sa iyong board
3. simulan ang CloudX serial Terminal sa pamamagitan ng pag-click sa "serial" na pindutan sa tool bar
4. piliin ang nais na port at baud rate (9600 sa tutorial na ito)
5. simulan ang terminal sa pamamagitan ng pag-click sa kumonekta (idiskonekta kung nais mong umalis)
6. sa port na binuksan / konektado, pansamantalang itulak ang pindutan sa kalooban at makikita mo ang serial output na ipinapakita sa mga terminal windows. Tandaan na kung mayroon kang mga pagkaantala sa code, makakakuha ka ng maraming mga linya ng serial output na tumatakbo nang napakabilis nang walang kontrol bago mo alisin ang iyong mga kamay sa pindutan. Kung sa anumang kadahilanan sa iyong code, mayroon kang tulad o katulad na problema, maaari mong palaging gamitin ang pamamaraang ito upang i-debug.
Inirerekumendang:
Raspberry PI 3 - Paganahin ang Mga Serial na Komunikasyon sa TtyAMA0 hanggang BCM GPIO 14 at GPIO 15: 9 Mga Hakbang
Raspberry PI 3 - Paganahin ang Mga Serial na Komunikasyon sa TtyAMA0 hanggang BCM GPIO 14 at GPIO 15: Kamakailan lamang ay nagkaroon ako ng interes na paganahin ang UART0 sa aking Raspberry Pi (3b) upang maikonekta ko ito nang direkta sa isang aparato ng antas ng signal na RS-232 gamit ang isang karaniwang 9 -pin d-sub konektor nang hindi kinakailangang dumaan sa isang USB sa RS-232 adapter. Bahagi ng aking intere
Pag-aayos ng Mac Lilypad USB Serial Port / Isyu ng Driver: 10 Hakbang (na may Mga Larawan)
Pag-aayos ng Mac Lilypad USB Serial Port / Isyu ng Driver: Bilang ng 2016, ang iyong Mac ay mas mababa sa 2 taong gulang? Nakapag-upgrade ka ba kamakailan sa pinakabagong OS (Yosemite o anumang mas bago)? Hindi na gumagana ang iyong mga Lilypad USB / MP3? My ipapakita sa iyo ng tutorial kung paano ko naayos ang aking mga Lilypad USB. Ang error na nakasalamuha ko ay nauugnay
Pagkontrol sa Dynamixel 12A sa pamamagitan ng Pagpapadala ng Mga Packet Serial: 5 Mga Hakbang
Pagkontrol sa Dynamixel 12A sa pamamagitan ng Pagpapadala ng Mga packet Serial: DYNAMIXEL 12A
HC-05 Serial Configuration sa paglipas ng Bluetooth: 10 Hakbang
HC-05 Serial Configuration Over Bluetooth: Habang gumagamit ng mga Android device at HC-05 Bluetooth SPP module para sa ilang mga proyekto ng Arduino, nais kong suriin at baguhin ang mga rate ng baud ng HC-05 at iba pang mga parameter nang hindi kumokonekta sa isang PC USB port. Naging ito. Ang mga module ng HC-05 ay nagkokonekta sa serial at Blu
Encapsulate ang Hakbang Servo Motor Na May Serial Control Sa Pamamagitan ng Arduino Gamit ang isang 3D Printer - Pt4: 8 Hakbang
Pagsasaayos ng Hakbang Servo Motor Na May Serial Control Sa Pamamagitan ng Arduino Gamit ang isang 3D Printer - Pt4: Sa ikaapat na video na ito ng serye ng Motor Step, gagamitin namin ang natutunan namin dati na bumuo ng isang stepper servo motor na may kontrol sa pamamagitan ng serial komunikasyon at real feedback sa posisyon gamit ang isang resistive encoder na sinusubaybayan ng isang Arduino. Sa