Satura rādītājs:

Sērijas atkļūdošana, izmantojot CloudX: 3 soļi
Sērijas atkļūdošana, izmantojot CloudX: 3 soļi

Video: Sērijas atkļūdošana, izmantojot CloudX: 3 soļi

Video: Sērijas atkļūdošana, izmantojot CloudX: 3 soļi
Video: Измерение 5A-30A переменного и постоянного тока с использованием ACS712 с библиотекой Robojax 2024, Novembris
Anonim
Sērijas atkļūdošana, izmantojot CloudX
Sērijas atkļūdošana, izmantojot CloudX

Šajā projektā es cenšos izskaidrot atkļūdošanas jēdzienu, izmantojot seriālo termināli. Bet vispirms kā iesācējs, ļaujiet izskaidrot tā jēdzienu, izmantojot tā nozīmi.

1. sērijas sakari

seriālā komunikācija ir paredzēta saziņai starp CloudX plati un datoru vai citām ierīcēm. Visām CloudX plāksnēm ir vismaz viens redzamais seriālais ports (pazīstams arī kā UART vai USART): seriāls. Tas sazinās ar digitālo RX un TX tapu ar citām aparatūrām vai sērijas sakaru moduļiem (piemēram, gsm un gps), kā ar datoru, izmantojot USB, izmantojot SoftCard. Tādējādi, ja izmantojat šīs funkcijas, nevar izmantot arī TX un RX digitālajai ievadei vai izvadei. Lai sazinātos ar CloudX plati, varat izmantot CloudX vides iebūvēto sērijas monitoru. Rīkjoslā noklikšķiniet uz seriālā monitora pogas un atlasiet to pašu pārraides ātrumu, ko izmanto parametrā, ko sauc par serialBegin ().

2. Atkļūdošana

Atkļūdošana vienkārši nozīmē identificēt un noņemt kļūdas (datora aparatūra vai programmatūra). Atkļūdošana ietver koda kļūdu atrašanu un labošanu datorprogrammā. Atkļūdošana ir daļa no programmatūras testēšanas procesa un ir neatņemama visa programmatūras izstrādes dzīves cikla sastāvdaļa. Pieņemsim, piemēram, ka jūsu kods ir veiksmīgi apkopots un jūs testējat aparatūru un tā nedarbojas, kā paredzēts, lai gan ir daudz veidu, kā atkļūdot kodu; vienkāršs un efektīvs veids, kā to atkļūdot, ir sērijveida atkļūdošana. CloudX IDE ģenerē 2 veidu failus veiksmīgā kompilācijā, HEX un COFF failus. HEX fails ir stingri mašīnas kods, kas tiek ielādēts tāfelei izpildei reālajā pasaulē, bet to var palaist arī jūsu datora simulācijas programmatūrā, piemēram, Proteus Isis, bet COFF fails ir lasāms formāts, kas izpildāms jūsu datora simulācijas programmatūrā (Proteus Isis). Šajā jomā mēs apsvērsim divus galvenos sērijas protokola atkļūdošanas veidus,

1. Mīksta sērijas atkļūdošana:

Šajā metodē katrs tests un atkļūdošana tiek veikta personālajā datorā, izmantojot kādu noderīgu programmatūru, piemēram, Proteus ISIS. Tā kā CloudX pamatā ģenerē COFF failu, es iesaku to izmantot datora simulācijai, jo ar to jūs varat būtībā pāriet starp koda rindām un norādīt, no kurienes rodas problēma, un ja jūsu kodam ir jādarbojas bez soļiem, izmantojot virtuālo teminal no "virtuālā instrumenta režīma "rīks, jūs vienmēr varat zināt, kurā līnijā kontrolieris darbojas jebkurā brīdī. apskatīsim šo koda piemēru,

1. darbība:

Attēls
Attēls
Attēls
Attēls

/*

* Fails: newmain.c

* Autors: OGBOYE GODWIN * * Izveidots 2018. gada 28. jūnijā, 10:15 */

#iekļaut

#iekļaut

/* izgatavosim

sarkana pin1 zaļa pin2 dzeltena tapa3 *poga pin4 */ char *tell = "hmmm, i have touch"; setup () {pinMode (1, OUTPUT); pinMode (2, OUTPUT); pinMode (3, OUTPUT); pinMode (4, INPUT); Serial_begin (9600); cilpa () {while (! readPin (4)); Serial_writeText (pateikt); Serial_writeText ("… pārvietojas uz sarkanu"); Sērijas_rakstīt (0x0D); portWrite (1, 0x00); pinSelect (1, HIGH); delayms (200); // mēģiniet noņemt komentāru aizkavēšanos un redzēt, kas notiek // pēc tam nomainiet tos (jums noteikti patiks!). while (! readPin (4)); Serial_writeText (pateikt); Serial_writeText ("… pārvietojas uz zaļo"); Sērijas_rakstīt (0x0D); portWrite (1, 0x00); pinSelect (2, HIGH); delayms (200); // mēģiniet noņemt komentāru aizkavēšanos un redzēt, kas notiek // pēc tam nomainiet tos (jums noteikti patiks!).

while (! readPin (4));

Serial_writeText (pateikt); Serial_writeText ("… pārvietojas uz dzeltenu"); Sērijas_rakstīt (0x0D); portWrite (1, 0x00); pinSelect (3, HIGH); delayms (200); // mēģiniet noņemt komentāru aizkavēšanos un redzēt, kas notiek // pēc tam nomainiet tos (jums noteikti patiks!). }}

ar to jūs varat redzēt, cik svarīga ir sērijas atkļūdošana, ja noņemat aizkavi. ja jūs to darītu, jūs būtu redzējis, cik apgrūtinošs var būt šis vienkāršais kods, ja tas tiek izpildīts reālajā pasaulē bez kavēšanās.

2. darbība:

Attēls
Attēls
Attēls
Attēls
Attēls
Attēls

2. Aparatūras atkļūdošana:

Šajā metodē katrs tests un atkļūdošana tiek veikta, pievienojot datoram CloudX prototipa plāksni, izmantojot softCard, un izmantojot vai nu CloudX IDE sērijas termināli (ieteicams), vai kādu citu noderīgu programmatūru, piemēram, Proteus ISIS compim, realTerm utt. failu nevar izmantot šeit, jo šī metode prasa HEX sāknēšanu aparatūrā, es iesaku to izmantot CloudX softcard. Ņemiet vērā, ka jūsu kods darbojas bez soļiem, lai jūs vienmēr varētu zināt, kurā rindā kontrolieris darbojas jebkurā brīdī, izmantojot sērijas izvadi. apskatīsim šo kodu, izmantojot to pašu piemēru, kas uzskaitīts iepriekš, iestatiet aparatūru tā, lai tā būtu līdzīga manai sarkanajai LED --------- līdz pin1 zaļajai gaismas diodei --------- pin2 dzeltenā gaismas diode- ------- pin3 poga --------- pin4

3. darbība:

Attēls
Attēls

soļi

1. Izmantojiet to pašu kodu, kas norādīts iepriekš

2. bootload savā kuģa

3. palaidiet CloudX sērijas termināli, rīkjoslā noklikšķinot uz pogas "serial"

4. izvēlieties vēlamo portu un pārraides ātrumu (šajā apmācībā 9600)

5. sāciet termināli, noklikšķinot uz savienojuma (atvienojiet, ja vēlaties iziet)

6. kad ports ir atvērts/pieslēgts, uz brīdi nospiediet pogu pēc vēlēšanās, un jūs redzēsit sērijas izeju, kas parādīta termināla logos. Ņemiet vērā, ka, ja kods tiek aizkavēts, jūs saņemsiet vairākas sērijas izvades līnijas, kas tik ātri darbosies bez kontroles, pirms noņemat rokas no pogas. Ja kāda iemesla dēļ kodā rodas šāda vai līdzīga problēma, jūs vienmēr varat izmantot šo metodi atkļūdošanai.

Ieteicams: