Obsah:
Video: Sériové ladenie s CloudX: 3 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:59
V tomto projekte sa zameriavam na vysvetlenie konceptu ladenia pomocou sériového terminálu. Najprv však ako štartér umožní vysvetliť jeho koncept prostredníctvom jeho významov.
1. sériová komunikácia
sériová komunikácia je na komunikáciu medzi doskou CloudX a počítačom alebo inými zariadeniami. Všetky dosky CloudX majú najmenej jeden videný sériový port (známy tiež ako UART alebo USART): sériový. Komunikuje na digitálnom RX a TX pine s inými hardwarovými alebo sériovými komunikačnými modulmi (napríklad gsm a gps) ako s počítačom cez USB pomocou karty SoftCard. Ak teda použijete tieto funkcie, nemôžete tiež používať TX a RX na digitálny vstup alebo výstup. Na komunikáciu s doskou CloudX môžete použiť vstavaný sériový monitor prostredia CloudX. Kliknite na tlačidlo sériového monitora na paneli s nástrojmi a vyberte rovnakú prenosovú rýchlosť, akú používa parameter, ktorý sa volá serialBegin ().
2. Ladenie
Ladenie jednoducho znamená identifikovať a odstrániť chyby z (počítačového hardvéru alebo softvéru). Ladenie zahŕňa vyhľadanie a opravu chýb kódu v počítačovom programe. Ladenie je súčasťou procesu testovania softvéru a je neoddeliteľnou súčasťou celého životného cyklu vývoja softvéru. Vezmime si napríklad, že váš kód bol úspešne zostavený a testujete svoj hardvér a nepracuje podľa očakávania, aj keď existuje veľa spôsobov, ako ladiť váš kód; jednoduchý a efektívny spôsob ladenia je použitie sériového ladenia. CloudX IDE generuje 2 typy súborov na úspešnej kompilácii, súbor HEX a COFF. Súbor HEX je striktne strojový kód, ktorý je načítaný do dosky na vykonanie v reálnom svete, ale môže byť spustený aj na počítačových simulačných softvéroch, ako je Proteus Isis, zatiaľ čo súbor COFF je čitateľný formát spustiteľný vo vašom softvéri na simuláciu počítača (Proteus Isis). V tomto rozsahu budeme zvažovať dva základné typy ladenia na sériovom protokole,
1. Mäkké sériové ladenie:
Pri tejto metóde sa všetky testy a ladenia vykonávajú na počítači PC pomocou užitočného softvéru, ako je Proteus ISIS. Pretože CloudX v zásade generuje súbor COFF, odporúčam ho použiť na simuláciu počítača, pretože pomocou neho môžete v zásade prechádzať medzi riadkami kódov a zistiť, odkiaľ pochádza problém, a ak váš kód musí bežať bez krokovania, pomocou virtuálneho terminálu z „virtuálneho“nástrojový režim nástroj, vždy môžete kedykoľvek vedieť, na ktorom riadku beží regulátor. pozrime sa na tento príklad kódu,
Krok 1:
/*
* Súbor: newmain.c
* Autor: OGBOYE GODWIN * * Vytvorené 28. júna 2018, 10:15 AM */
#zahrnúť
#zahrnúť
/* vyrobíme
červený pin1 zelený pin2 žltý pin3 *tlačidlo pin4 */ char *tell = "hmmm, dotkol som sa"; setup () {pinMode (1, VÝSTUP); pinMode (2, VÝSTUP); pinMode (3, VÝSTUP); pinMode (4, VSTUP); Serial_begin (9600); loop () {while (! readPin (4)); Serial_writeText (tell); Serial_writeText ("…. Presun na červenú"); Sériové_písanie (0x0D); portWrite (1, 0x00); pinSelect (1, VYSOKÝ); oneskorenia (200); // skúste odstrániť všetky zdržania komentovania a uvidíte, čo sa stane // potom ich nahraďte (určite to budete milovať!). while (! readPin (4)); Serial_writeText (tell); Serial_writeText ("…. Presun na zelenú"); Sériové_písanie (0x0D); portWrite (1, 0x00); pinSelect (2, HIGH); oneskorenia (200); // skúste odstrániť všetky zdržania komentovania a uvidíte, čo sa stane // potom ich nahraďte (určite to budete milovať!).
while (! readPin (4));
Serial_writeText (tell); Serial_writeText ("…. Presun na žltú"); Sériové_písanie (0x0D); portWrite (1, 0x00); pinSelect (3, VYSOKÉ); oneskorenia (200); // skúste odstrániť všetky zdržania komentovania a uvidíte, čo sa stane // potom ich nahraďte (určite to budete milovať!). }}
pomocou tohto môžete vidieť, aké dôležité je sériové ladenie, ak odstránite oneskorenie. ak by ste to urobili, videli by ste, aké problémy môže tento jednoduchý kód spôsobiť, ak je spustený v reálnom svete bez týchto oneskorení.
Krok 2:
2. Ladenie hardvéru:
Pri tejto metóde sa všetky testy a ladenia vykonávajú tak, že sa prototypová doska CloudX pripojí k počítaču pomocou karty SoftCard a použije sa buď sériový terminál CloudX IDE (odporúča sa), alebo iný užitočný softvér, ako napríklad Proteus ISIS compim, realTerm atď. Generovanie COFF Tu nemožno použiť súbor, pretože táto metóda vyžaduje zavedenie HEX do hardvéru, odporúčam to použiť pre softvérovú kartu CloudX. Všimnite si toho, že váš kód beží bez krokovania, takže môžete vždy vedieť, kde je riadok, v ktorom je radič v danom čase spustený podľa sériového výstupu. pozrime sa na tento kód v rovnakom príklade uvedenom vyššie, nastavte svoj hardvér tak, aby sa podobal na červenú LED --------- na pin1 zelenú LED --------- pin2 žltú LED- ------- tlačidlo pin3 --------- pin4
Krok 3:
kroky
1. Použite rovnaký kód ako vyššie
2. načítajte dosku
3. spustite sériový terminál CloudX kliknutím na tlačidlo „sériový“na paneli s nástrojmi
4. vyberte požadovaný port a prenosovú rýchlosť (9600 v tomto návode)
5. spustite terminál kliknutím na pripojiť (odpojiť, ak si želáte ukončiť)
6. s otvoreným/pripojeným portom na chvíľu stlačte ľubovoľne tlačidlo a na oknách terminálu sa zobrazí sériový výstup. Všimnite si toho, že ak máte oneskorenie z kódu, dostanete niekoľko riadkov sériového výstupu tak rýchlo bez kontroly, než zložíte ruky z tlačidla. Ak máte z akéhokoľvek dôvodu vo svojom kóde podobný alebo podobný problém, na ladenie môžete vždy použiť túto metódu.
Odporúča:
HackerBox 0049: Ladenie: 8 krokov
HackerBox 0049: Debug: Zdravím hackerov HackerBox po celom svete! V prípade HackerBox 0049 experimentujeme s ladením systémov digitálnych mikrokontrolérov, konfigurujeme platformu Bluetooth LOLIN32 ESP-32 WiFi v rámci Arduino IDE a používame FastLED Animation L
Ladenie nasledovníka linky GiggleBot - pokročilé: 7 krokov
Ladenie sledovača linky GiggleBot - pokročilé: V tomto veľmi krátkom návode sa budete naladiť vlastným zariadením GiggleBot tak, aby nasledovalo čiernu čiaru. V tomto inom tutoriále GiggleBot Line Follower sme naprogramovali hodnoty ladenia tak, aby fungovali podľa tohto scenára. Možno by ste sa chceli správať tak, aby
Rotačné ladenie s HAT Pi TV: 3 kroky
Rotačné ladenie s HAT Pi TV: V tomto návode vám ukážem, ako do digitálnej televízie priniesť určité analógové ovládanie pomocou otočného prepínača na zmenu kanálov na vintage televízore s Raspberry Pi. Príslušenstvo TV HAT bolo nedávno vydané a s mojou láskou k prevodníkom
Všetko najlepšie k narodeninám Ladenie pomocou obvodového ihriska: 3 kroky
Šťastné narodeniny ladenie pomocou obvodového ihriska: Tu je návod, ako hrať melódiu Happy Birthday na obvodovom ihrisku kompatibilnom doske Adafruit Arduino. Potreboval som niečo malé na vloženie do škatule na prekvapenie k narodeninám
Ako vykonať automatické ladenie (zadarmo!): 4 kroky
Ako vykonať automatické ladenie (zadarmo!): V garáži sa naučte, ako ľahko vytvoriť efekt automatického ladenia, ktorý tak často počúvate. ** EDIT ** Odkaz na príklad: http://limelinx.com/files/e7b32e25dda5c5a22ab1bfc8c0eb3acd