1. Sopimuksen peruste
1.1. Johdatus sopimukseen
UART on "Universal Asynchronous Receiver/Transmitter", lyhenne sanoista Universal Asynchronous Transceiver. 1860-luvulla Bell keksi UART-protokollan, joka muuntaa rinnakkaiset tulosignaalit sarjalähtösignaaleiksi ratkaistakseen tietokoneiden ja teletyyppikirjoittimen viestinnän ongelman. Yksinkertaisen ja käytännöllisen luonteensa vuoksi UART:sta on tullut erittäin laajalti käytetty viestintäprotokolla. Sarjaportit, joille olemme alttiina päivittäin, RS232, RS485 ja muut väylät, sisäinen käyttö on pohjimmiltaan UART-protokollaa.
Ymmärtääksemme ja analysoidaksemme paremmin protokollien ja väylien välistä suhdetta jaamme yleensä täydellisen viestintämäärityksen fyysisiin kerroksiin, protokollakerroksiin ja sovelluskerroksiin. Fyysinen kerros määrittää vain signaalin todelliset ominaisuudet (kuten jännitteen, virran, käyttökapasiteetin jne.) sekä sähköisen signaalin ja loogisen signaalin 0 ja 1 välisen vastaavuuden; Protokollakerros ei välitä siitä, miten taustalla olevat 0:t ja 1:t on toteutettu, vaan se määrittää vain loogisten signaalien ja viestintäprosessin protokollamääritykset (kuten aloitus, data ja loppu jne.); Sovelluskerros ei välitä siitä, miten tiedot saadaan, vaan määrittelee vain datan esityksen merkityksen ja kuinka tietty liiketoimintalogiikka toteutetaan.
UART-protokollan yksinkertaisin sovellus, yleensä fyysinen kerros tarvitsee vain kaksi siirtolinjaa, yhden lähetykseen ja toisen vastaanottoon, jolloin saavutetaan kaksisuuntainen tiedonsiirto. Yksisuuntaisissa lähetyksissä voit myös käyttää vain yhtä siirtolinjaa. Tyypillisin esimerkki tällaisesta sovelluksesta on mikro-ohjaimen toisiinsa kytketyt RX/TX-portit mahdollistaen TTL-tasopohjaisen UART-viestinnän. Erilaisten lähetysetäisyyksien ja luotettavuusvaatimusten vuoksi eri fyysisen kerroksen toteutusten korvaaminen voi saada yhteiset RS232-, RS485- ja muut tietoliikenneväylät.
1.2. Erilaiset fyysisen kerroksen toteutukset
Koska tulo UART-protokollakerrokseen on looginen 0/1-signaali, looginen 0/1-signaali voidaan erottaa eri tasostandardeilla fyysisessä kerroksessa. Erilaisia viestintätarpeita varten voidaan käyttää erilaisia fyysisiä kerroksia. Esimerkiksi yksinkertainen sisäinen viestintä tai yleiset laitteen virheenkorjausskenaariot, UART-protokollaviestintä kahden laitteen välillä voidaan suorittaa käyttämällä yksinkertaista LVTTL/TTL-tasoa.
Yleissarjaportti käyttää RS232-tasoa, joka voi lisätä lähetysetäisyyttä ja vastustaa tietyn tason signaalihäiriöitä. Kustannukset ovat, että vastaavan tason käännössiru vaaditaan fyysisellä kerroksella saavuttaakseen, lähettimen on muutettava sisäinen korkean ja matalan tason signaali korkeamman jännitteen +/- jännitesignaaliksi ja vastaanottopään on muutettava +/ - jännitesignaali sisäiseksi korkean ja matalan tason signaaliksi.
Teollisessa viestinnässä käytetään yleensä RS485-tasostandardia lähetysetäisyyden edelleen parantamiseksi ja signaalin luotettavuuden parantamiseksi. Tavalliset korkean ja matalan tason signaalit muunnetaan differentiaalisten signaalien pariksi lähetyspäässä ja differentiaaliset signaalit muunnetaan tavallisiksi korkean ja matalan tason signaaleiksi vastaanottopäässä. Lisäksi RS485 mahdollistaa jopa 128 lähetin-vastaanottimen kytkemisen väylään, kun taas TTL tai RS232 ovat point-to-point -yhteyksiä.
1.2.1. TTL-pohjainen UART-viestintä
TTL-pohjainen UART-viestintä on yksinkertaisin käyttötapa UART-protokollasovelluksille. Toisin sanoen digitaalisen I/O-lähdön korkeat ja matalat tasot lähetetään suoraan varsinaisena fyysisenä signaalina. Fyysisen yhteyden osalta vain laite tarvitsee olla yhteismaadoitettu, ja yksisuuntainen laiteviestintä voidaan suorittaa signaalijohdon kautta. Jos kaksisuuntaista full dupleksia tarvitaan, käytetään kahta signaalilinjaa.
Eri fyysisten kerrosten toteutuksen erojen vertaamiseksi voidaan havaita, kuinka eri fyysisten kerrosten todelliset signaalit eroavat, kun samaa dataa lähetetään. Tässä esimerkkinä lähetysmerkki 'D', kivioskilloskoopin läpi, tarkkaile suoraan TTL:n lähettämää signaalia (anturin maadoitusliitin on kytketty laitteen yhteiseen maadoituspäähän ja anturin signaalipää on kytketty sininen signaaliviiva yllä olevassa kuvassa), ja kuvan 1-4 mukainen signaalin aaltomuoto voidaan saada. Kuten aaltomuodosta näkyy, kun tiedonsiirtoa ei ole, UART-signaali pysyy korkealla tasolla (signaalin ominaisamplitudi määräytyy I/O:n syöttöjännitteen mukaan), signaali hyppää tiedonsiirron aikana. , ja signaali palaa lepotilaan, kun lähetys on valmis.
1.2.2. UART-tiedonsiirto perustuu RS232:een
Taajuusmuuttajan kyvyn parantamiseksi lähetysetäisyyden ja luotettavuuden lisäämiseksi RS232-väylä käyttää bipolaarista jännitesignaalia fyysiseen lähetykseen. Ennen signaalin lähettämistä/vastaanottamista sisäinen signaali ja väyläsignaali muunnetaan keskenään tasonsiirtosirun avulla. Yhteysmenetelmä on täsmälleen sama kuin TTL-taso, ja koko fyysinen kerros on vain yksi tasokäännöksen kerros lisää.
Myös käyttämällä esimerkkinä lähetysmerkkiä 'D' Pushi-oskilloskoopin anturi on kytketty signaalipäähän ja kuvan 1-6 mukainen todellinen aaltomuoto voidaan kaapata. Voidaan nähdä, että RS232-aaltomuoto on tyhjäkäynnillä negatiivinen jännite, ja tiedonsiirron aikana signaali alkaa hyppiä positiivisen ja negatiivisen jännitteen välillä ja palaa tyhjäkäynnin negatiiviseen jännitetilaan lähetyksen päätyttyä.
1.2.3. UART-tiedonsiirto perustuu RS485:een
RS485 on suunniteltu monimutkaisiin teollisuusympäristöihin, ja RS485-väylän suurin ominaisuus on differentiaalisen signaalinsiirron käyttö verrattuna muiden UART-protokollien fyysisiin kerroksiin. Ennen signaalin lähettämistä RS485-lähetin-vastaanotin muuntaa yksipäisen signaalin differentiaalisignaaliksi ja lähettää sitten väylälle lähetystä varten; Myös ennen vastaanottoa lähetin-vastaanotin muuntaa väylän differentiaalisignaalin yksipäiseksi signaaliksi ja lähettää sitten UART-ohjaimelle vastaanottoa varten. RS485-väylässä tarvitaan kaksi differentiaalisignaalijohtoparia (eli 4 signaalilinjaa) kaksisuuntaiseen kaksisuuntaiseen tiedonsiirtoon. Jos suoritetaan vain half-duplex kaksisuuntainen tiedonsiirto, tarvitaan vain pari differentiaalisignaaleja.
Jälleen, käyttämällä esimerkkinä lähetysmerkkiä "D", kuvassa 1-8 esitetty todellinen aaltomuoto voidaan saada käyttämällä kahta Pushi-oskilloskoopin anturien kanavaanturia (yleisesti viitattu), jotka on kytketty A/B-päihin. yhdestä differentiaalisignaalista. Voidaan nähdä, että aaltomuoto A/B-päässä on komplementaarinen. A-päätteen aaltomuoto on myötäsuuntainen logiikka (positiivinen jännite tyhjäkäynnissä) ja B-navan aaltomuoto on käänteinen logiikka (negatiivinen jännite tyhjäkäynnissä).
2. Protokollan tiedot
2.1. UART-kehysrakenne
Edellisen osan johdannossa tarkastelimme todellista UART-aaltomuotoa kivioskilloskoopin läpi, joten kuinka tämä aaltomuoto tunnistetaan tarkasti merkiksi "D" eikä joksikin muuksi? Tämä sisältää UART-protokollan kehysrakenteen määrittelyn. Kuten kuvassa 2-1:
Kun kahden laitteen on viestittävä UART-protokollan kautta, niiden on sovittava seuraavat asiat samanaikaisesti:
- Ajan pituus signaalia kohti T (baudinopeus = 1/T)
- Tietty bittien määrä kehysrakenteen kussakin kohdassa
- Onko tarkistusnumeroa olemassa ja tarkistusnumeron mekanismi (pariton/parillinen/…). )
Näillä sopimuksilla vastaanottavan laitteen tarvitsee vain odottaa aloitusbitin saapumista ja ottaa sitten näytteitä seuraavasta aaltomuodosta säännöllisin väliajoin saadakseen lähetetyn tietyn tiedon. Kun otetaan esimerkkinä D-merkin aaltomuoto, resoluutioprosessi on esitetty kuvassa 2-2:
2.1.1. Tiedonsiirtonopeus
Tiedonsiirtonopeus on erittäin tärkeä UART-protokollan tai kaikkien asynkronisten sarjaprotokollien käsite, eli bittien määrä, joka voidaan esittää aikayksikköä (1 sekunti) kohti, tai se voidaan ilmaista myös bittileveyden käänteislukuna. . Esimerkiksi UART-aaltomuoto, jonka siirtonopeus on 115200 115200, tarkoittaa, että se pystyy vastaanottamaan 8.68 XNUMX bittiä sekunnissa, mikä tarkoittaa, että jokainen databitti vastaa noin XNUMX uS aikaa.
Asynkronisissa sarjaprotokollissa, kuten UART, signaalien fyysisen kytkennän yksinkertaistamiseksi ja viestintäkustannusten vähentämiseksi on yleensä vain yksi signaalilinja, eivätkä ne voi lähettää dataa ja kellosignaaleja samanaikaisesti. Jotta lähetin-/lähetinlaite voi ratkaista aaltomuodon oikein, sen on oltava samassa baudinopeusasetuksessa. Sama aaltomuoto eri baudinopeuksilla voi saada täysin erilaista tietoa. Vastaanottavalle laitteelle vain aloitusbittiä voidaan käyttää datakehyksen synkronointipisteenä, ja muu data määräytyy baudinopeuden perusteella tietyn näytteenottopaikan määrittämiseksi.
Jälleen, käyttämällä esimerkkinä merkin 'D' aaltomuotoa, kuten kuvassa 2-4, jos se vastaanotetaan väärällä siirtonopeudella, saatat saada täysin väärää dataa.
2.1.2. Tyhjäkäynnit
Kun dataa ei siirretä laitteiden välillä, jatkuva korkea taso ilmaisee käyttämättömyyttä. Mitä pidempi tyhjäkäyntibitin kesto ja mitä pidempi aikaväli kahden datakehyksen välillä, sitä vähemmän dataa lähetetään aikayksikköä kohti.
2.1.3. Aloita bitti
UART-vastaanotin havaitsee aina signaalilinjan tasonmuutoksen, ja kun dataa lähetetään, lähettäjä vetää signaalilinjan korkealta tasolta alemman tason loppuun lepotilaan ja säilyttää jonkin verran aikaa. Kun vastaanotin havaitsee korkean tai matalan tason siirtymän, se alkaa vastaanottaa signaaleja.
2.1.4. Databitit
Databitti sisältää todellisen lähetetyn datan, joka on 5-8 bittiä, jos pariteettia käytetään, ja 5-9 bittiä, jos pariteettia ei käytetä. Yleensä databitit ovat 8 bittiä, ja data lähetetään ensin vähiten merkitsevästä bitistä ja korkeat bitit tulevat toiseksi.
2.1.5. Tarkista numerot
Tarkistusnumeroiden avulla voidaan parantaa lähetyksen luotettavuutta. Jos signaali on väärä lähetysprosessin häiriön vuoksi ja aiheuttaa virheen joidenkin paikkojen tasossa, voidaan todeta, täsmäävätkö vastaanotettu data ja tarkistusnumero laskemalla, vastaavatko vastaanotettu data ja tarkistusnumerot, joten tarjota kelvollista tietoa sovelluskerrokselle, jotta se voi päättää hyväksyä/hylätä vastaavat tiedot.
2.1.6. Pysäytä Bitti
Pysäytysbitti edustaa datakehyksen loppua, ja varsinainen signaali on korkea aikajakso. Pysäytysbitin pituudeksi voidaan asettaa 1, 1.5 tai 2 bittiä. Useimmissa tapauksissa käytetään 1-bitin stop-bittiä.
Koska UART on asynkroninen protokolla, jokaisen kehyksen alku voidaan synkronoida hyppyreunan kanssa, mutta stop-bitti voi laskea vain suhteellisen sijainnin siirtonopeudella, ja jos pysäytyskohdassa tunnistetaan matala taso, kehysvirhe syntyy. Tiedonsiirtoprosessissa siirtonopeuden virheen aiheuttaman ongelman vähentämiseksi voidaan asettaa erilaisia stop-bittien pituuksia mukautumaan.
3. Analysoi UART-kommunikaatio logiikka-analysaattorilla
3.1. Oskilloskooppi vs logiikka-analysaattori
Pääasiallisena yleiskäyttöisenä testaus- ja mittauslaitteena oskilloskoopilla on luonnollinen etu analogisten signaalien yksityiskohtien tarkkailussa. Esimerkiksi reaaliaikainen toiminta korkealla aaltomuodon virkistystaajuudella voi helposti havaita äkillisiä epänormaaleja signaaleja; Esimerkiksi suoritettaessa kohinan arviointia ja signaalin laadun optimointia oskilloskooppi voi vertailla signaalien yhtäläisyyksiä ja eroja samassa väylässä ja eri solmuissa löytääkseen piilotetut signaalin eheysongelmat.
Kuitenkin oskilloskoopissa on luonnollisesti myös epämukavia paikkoja, muutamien kanavien lisäksi näyttö on yleensä pieni, toiminta ei ole tietokone + hiiri tavalla joustava ja hallittavissa nämä morfologiset ongelmat, digitaalisten signaalien hankintaan ja analysointiin, suurin Oskilloskoopin ongelma on liian pieni säilytyssyvyys. Usean sadan tuhannen yuanin oskilloskoopin säilytyssyvyys voi olla myös vain muutama sata Mpts. Samaan aikaan tallennussyvyyden rajoitusten vuoksi, kun on tarpeen tehdä hieman pidempi aikakeräys, oskilloskoopin todellinen näytteenottotaajuus laskee jyrkästi, jolloin kerätty aaltomuoto ei pysty palauttamaan todellista signaalia ja menettää signaalin. analyysin merkitys.
Loogiset analysaattorit ovat testi- ja mittauslaitteita, jotka on erityisesti suunniteltu digitaaliseen signaalin hankintaan ja analysointiin, ja kerätyt aaltomuototulokset ovat vain korkeita ja matalia (eli loogisia 0 ja 1). Se kuitenkin korvaa oskilloskooppien puutteen digitaalisten signaalien hankinnassa ja analysoinnissa.
- 1. Useimpia logiikka-analysaattoreita käytetään PC:llä, ja niissä on pöytätietokoneiden prosessorien tehokas suorituskyky ja kypsien käyttöjärjestelmien interaktiivinen kokemus, mikä parantaa huomattavasti digitaalisen signaalin analysoinnin mukavuutta ja tehokkuutta.
- 2. Logiikka-analysaattorikanavien määrä on suuri, lähtötason DSLogic-logiikka-analysaattorissa on 16 kanavaa, jotka voidaan kerätä samanaikaisesti, ja käyttäjä voi myös hankkia logiikka-analysaattorituotteita, joissa on kymmeniä tai jopa satoja kanavia erittäin kohtuulliseen hintaan. kustannus.
- 3. Logiikkaanalysaattorin tallennussyvyys on suurempi, esimerkiksi DSLogic voi saavuttaa 16G:n tallennussyvyyden stream-tilassa ja samalla ylläpitää melko korkeaa näytteenottotaajuutta, joka ylittää reilusti useimpien oskilloskooppien vastaanottokyvyn.
- 4. Loogiset analysaattorit tarjoavat yleensä runsaasti protokolladekoodaustoimintoja, jotka voivat suorittaa digitaalisten signaalien syvällisen analyysin. Esimerkiksi DSLogic tukee tällä hetkellä yli 100 dekoodausprotokollaa. Useimmilla oskilloskoopeilla on rajalliset dekoodausominaisuudet, ja useimmat vaativat vastaavat laajennukset ostettavan erikseen.
Seuraavaksi keskitymme logiikkaanalysaattoreiden käyttämiseen UART-signaalien hankinnassa ja analysoinnissa eri tilanteissa.
3.2. Luo testiympäristö logiikkaanalysaattoreille
3.2.1. Yhteys DSLogiciin
DSLogic on kannettava logiikka-analysaattori, joka perustuu USB-liitäntään. DSLogic-isäntä vastaa signaalin hankinnasta ja välimuistista, ja lähettää sitten tiedot USB:n kautta PC:n isäntätietokoneohjelmistoon DSView. DSView vastaa aaltomuototietojen käsittelystä, näytöstä, analysoinnista ja vastaavista ihmisen ja tietokoneen vuorovaikutustoiminnoista.
Kun käytät, liitä DSLogic-isäntä suoraan PC-levyn USB-porttiin USB-datakaapelilla, avaa DSView-ohjelmisto ja varmista, että DSLogic-isännän INDIKAATTORI muuttuu ikivihreäksi. Tässä vaiheessa logiikka-analysaattorin yhdistäminen ja alustus on valmis. Kuten kuvasta 3-4 näkyy, nykyinen laitteen nimi vasemmassa yläkulmassa ja vastaava yhteyden tila voidaan tarkastella DSView-ohjelmistossa.
3.2.2. UART-signaaliliitäntä
Kaikissa mittauksissa testilaitteiston ja mitattavan signaalin tulee perustua yhteiseen vertailutasoon, jota kutsutaan yleisesti maadoitukseksi, jotta mitattu signaali voidaan saada ja mitata oikein. Joissain tapauksissa ei ole nimenomaista maadoitusta, mutta mittaustulokset eivät näytä olevan ongelma, tämä johtuu siitä, että mittauslaitteisto ja mitattu signaali on kytketty maahan muulla tavoin, kuten sama virtalähde tai referenssi. maadoitus on kytketty samanaikaisesti verkkovirran maadoitusliittimeen. Tarkkoja mittauksia tehtäessä mittauslaitteisto tulee kuitenkin maadoittaa testattavan signaalin mukaan. Mitä suurempi signaalin maadoitusliittimen silmukkapinta-ala on mitatusta signaalista mittauslaitteeseen, sitä helpompi signaaliin on häiriöitä ja seurauksena on mittausvirheitä tai jopa mittausvirheitä.
UART-signaaleja varten logiikkaanalysaattoria käytettäessä yksinkertaisimmassa tapauksessa tarvitsee liittää vain 2 johtoa, yksi vertailumaahan ja toinen mitattuun signaaliin. Aiemmin mainitsemissamme UART-protokollan fyysisen kerroksen eri toteutuksissa signaalien yhdistämistapa on hieman erilainen.
Esimerkiksi UART-signaalille TTL-tasolla referenssimaan kytkemisen lisäksi tarvitsee vain liittää testattava signaali (TX tai RX) logiikkaanalysaattorin vastaavaan kanavatuloon.
RS232-väyläsignaaleille voimme joko mitata väyläsignaalin tasonmuunnoksen jälkeen (DSLogicin jännitealue on +-30 V kaapelitulossa ja RS15:n +-232 V signaalialue voidaan kytkeä suoraan) tai voimme mitata sisäinen digitaalinen signaali ennen tason muuntamista. Sen johdotusmenetelmä on yhdenmukainen TTL-signaalin kanssa, ainoa huomionarvoinen asia on, että RS232-signaali kääntää tason (negatiivinen jännite tyhjäkäynnillä, eli matala taso), kun dekoodaamme UART-protokollaa, voimme kääntää vastaavan signaalitason DSView:n dekoodausasetusikkuna (Invert Signal -asetuksena on kyllä).
RS485-väylä käyttää differentiaalisia signaaleja, ja kun käytämme logiikka-analysaattoria signaalin hankinnassa, meidän on kiinnitettävä erityistä huomiota mitatun signaalin liitäntään. Ensinnäkin logiikka-analysaattorin referenssipaikka on kytkettävä vastaavan testattavan laitteen RS485-lähetin-vastaanottimen vertailumaahan, jotta loogisella analysaattorilla voidaan taata oikea tason vertailutaso; Toiseksi differentiaalisignaaleja varten logiikan analysaattorin tarvitsee vain saada korkea ja matala homopolariteetti sisäisen signaalin kanssa. Digitaalisten signaalien näkökulmasta differentiaalinen tapa vain parantaa signaalin lähetyksen luotettavuutta lisätietoa lisäämättä. Kuvan 3-7 mukaisesti, kun testaat 485-väylän signaalia logiikka-analysaattorilla, kytke vastaavan laitteen lähetin-vastaanottimen referenssimaa ja A+-signaali differentiaaliväylään.
Tietysti, jos vain B-signaali voidaan kerätä, voimme myös asettaa UART-dekooderin kääntämään signaalin oikean protokollan resoluution saamiseksi dekoodattaessa DSView:ssa.
3.2.3. Kynnysasetukset
Loogisen analysaattorin kynnys on korkeiden ja matalien tasojen arviointijännite, eli kun tulosignaalin jännite on korkeampi kuin kynnysjännite, hankinta on korkeatasoinen; Kun tulosignaalin jännite on alle kynnysjännitteen, hankinta on alhainen.
UART-protokollan osalta olemme aiemmin ottaneet käyttöön, että sillä on erilaisia fyysisen kerroksen toteutuksia ja eri fyysisen kerroksen toteutuksissa on eri tasostandardit. Meidän tarvitsee vain valita vastaava kynnys erottaaksemme korkean ja alhaisen tason eri tapauksissa. Kuvassa 3-8 esitetyt kynnykset voivat periaatteessa täyttää tämän vaatimuksen.
Joissakin tapauksissa RS485-väylän differentiaalisen signaalin amplitudi voi vaihdella laajalla alueella konfiguroinnin tai virheenkorjauksen vuoksi. Koska RS485-spesifikaatiossa määrätään, että niin kauan kuin erojännite AB:n välillä on suurempi kuin 200 mV, sitä voidaan pitää korkeana. Tässä vaiheessa voimme käyttää kivioskilloskooppia tarkkaillaksemme todellista signaalitason amplitudia ja sitten päättää sopivasta kynnysarvosta. Sinun tarvitsee vain varmistaa, että asettamasi kynnysjännite pystyy kohtuudella erottamaan korkean ja matalan tason.
3.3. Yksinkertainen UART-signaalin hankinta
Useimmat UART-signaalit ovat hitaita signaaleja, kuten yleisimmin käytetty baudinopeus 115200 115.2, mikä osoittaa, että signaalin taajuus on vain 1 KHz. Tällaiset signaalit voidaan hankkia suoraan käyttämällä DSLogicin oletusasetuksia. Tässä ottamalla isäntä kiinteä XNUMXs intervalli ja lähettämällä toistuvasti merkin "D" esimerkkinä, se kuvaa kuinka logiikka-analysaattoria käytetään tällaisten UART-signaalien hankkimiseen ja analysoimiseen.
3.3.1. Signaalin hankinta
Kun laitteisto- ja signaaliliitäntä on valmis, napsauta DSView-ohjelmiston ”Start”-painiketta suoraan saadaksesi testattavan signaalin oletusasetuksella (1 MHz:n näytetaajuuden hakuaika 1s). Jos haluat muokata näytteenottotaajuutta ja hankinnan kestoa, valitse vastaavat parametrit suoraan vastaavasta pudotusvalikosta. Näytteenottotaajuuden asetusperiaatteeksi suositellaan vähintään 10-kertaista mitatun signaalin maksimitaajuutta, esimerkiksi UART-signaaleille, joiden baudinopeus on 115200 115.2 baudia, nopein signaalitaajuus on 1 KHz, kun 8M näytteenottotaajuus on valittuna kullakin bittisignaalilla on 9 tai 1 näytepistettä ja vastaava vaihevirhe on +-8/12.5 (10%); Kun 86M näytetaajuus valitaan, signaalin bittiä kohden on 87 tai 1 näytepistettä, mikä vastaa vaihevirhettä +-86/1.16 (3 %). Liian korkeaa näytetaajuutta ei tietenkään yleensä suositella, koska mitä suurempi näytetaajuus, sitä lyhyempi aika, jonka se voidaan kerätä, ja liian korkea näytetaajuus voi kerätä useita hyppyjä yhdellä hyppyllä. hitaan signaalin reunaan, mikä aiheuttaa ongelmia protokollan dekoodauksessa. Kuva 9-XNUMX näyttää tuloksena olevan signaalin aaltomuodon, joka on saatu oletusasetuksia käyttäen.
Kuten kuvasta 3-9 voidaan nähdä, kanava 0 saa signaalin, joka on jatkuvasti korkea, mutta ei löydä hyppyjä. Tarkkaile huolellisesti aaltomuotoikkunan yläpuolella olevaa aikaviivainta ja ikkunan alaosassa olevaa vierityspalkkia, jotta tiedät, että nykyinen ikkuna näyttää vain osan kerätystä aaltomuodosta, ei kaikkia signaaleja. Tässä vaiheessa voit zoomata hiiren rullalla tai napsauttaa hiiren oikealla painikkeella aaltomuotoaluetta näyttääksesi kaikki aaltomuodot koko haun ajan. Hanki kuvan 3-10 mukainen tulos.
Yllä olevan kuvan perusteella haluamme tarkastella vain kanavan 0 siirtymäosaa. Voit kytkeä muiden kanavien aaltomuotonäytön pois päältä Options-ikkunassa ja säätää kanavasignaalin näyttökorkeutta. Osoita sitten hiirtä kohdeaaltomuotoon ja samalla hiiren pyörän läpi suurentaaksesi suunnatun kohdan aaltomuotoa; Vaihtoehtoisesti voit valita aaltomuodon alueen, jota haluat lähentää pitämällä hiiren oikeaa painiketta painettuna ruudussa. Pidä myös hiiren vasenta painiketta painettuna siirtääksesi aaltomuotoa vasemmalle ja oikealle. Hanki aaltomuodon tiedot, jotka näkyvät Kuvassa 3-11.
Kun aaltomuotoa tarkkaillaan, hiiren asettaminen pulssiaaltomuodon päälle voi näyttää tietoja, kuten nykyisen signaalin pulssin leveyden, jakson, taajuuden ja toimintajakson. Samanaikaisesti voit myös lisätä kohdistimen kaksoisnapsauttamalla hiiren vasenta painiketta, jolloin kohdistinta siirrettäessä se napsahtaa automaattisesti läheiseen hyppyreunaan.
3.3.2. UART-dekoodaus
Logiikkaanalysaattorin keräämä signaalin aaltomuoto muuttuu ajallisesti vain korkealla ja matalalla tasolla (0/1), mikä ei edistä kohdennettua signaalinsiirtoprosessin ja sisällön analysointiamme. Vaikka voimme käyttää paljaalla silmällä aaltomuotoa vastaavan protokollan sisällön kääntämiseen protokollamäärittelyn mukaisesti, se heikentää huomattavasti analyysin tehokkuutta. DSView:n sisäänrakennettu dekooderi tarjoaa rikkaan protokollapurkusisällön, joka muuttaa tylsät aaltomuodot merkityksellisiksi merkeiksi, merkinnöiksi ja datasisällöksi. Se helpottaa suuresti insinöörien signaalien analysointia ja ymmärtämistä virheilmoitusten tai kriittisten tietojen löytämiseksi.
DSView-ohjelmistossa hankitun aaltomuodon protokolladekoodaus on hyvin yksinkertaista, avaa vain "Decode"-paneeli, etsi vastaava dekooderi (tässä valitsemme 1: UART-protokolla) ja aseta vastaavat dekooderin asetukset (mukaan lukien näyttö/kanava /kehysrakenne/muoto jne.). Kun ohjelmisto on määritetty, se alkaa purkaa UART-protokollaa valitulla kanavalla. Dekoodattu tulos näytetään protokollakanavassa. Tämä näkyy kuvassa 3-12.
Dekooderia valittaessa DSView tarjoaa kätevän protokollahakutoiminnon, syötä vain avainmerkit protokollan hakukenttään, DSView listaa kaikki nämä merkit sisältävät dekooderit, joista käyttäjä voi valita oikean dekooderin. Kuten kuvasta 3-13 näkyy, UART 0:aan liittyy kaksi protokollaa: UART ja 1: UART, jossa 0: UART on yksinkertaistettu dekooderi, joka ei jäsennä bittitietoja eikä tue ylemmän tason protokollien pinoamista, kun haluamme saada vain aaltomuotoa vastaavat tiedot, voit käyttää tätä yksinkertaistettua protokollaa vähentääksesi dekoodausaikaa ja muistiresursseja.
Dekooderin asetusikkunassa on monia dekoodaukseen liittyviä asetusvaihtoehtoja ja eri protokollien asetusikkunan sisältö on erilainen. Kaikkien dekooderien on asetettava joitain vaihtoehtoja, kuten kanava- ja protokollasignaalien vastaavuus. Tässä käytetään kanavan 0 nappaamaa UART-signaalia, joten vastaava dekoodattava kanava tulee asettaa kanavalle 0.
Ja protokollaan liittyvät asetusvaihtoehdot olemme selittäneet yksityiskohtaisesti kehysrakenneosiossa, varsinaisessa toiminnassa voidaan saada myös sarjaportin kautta isäntätietokoneohjelmisto (sarjaportin virheenkorjausavustaja jne.) näiden tietojen saamiseksi. Tämä näkyy kuvassa 3-14.
Dekoodatun datasisällön osalta DSView tukee erilaisia näyttömuotoja. Esimerkiksi aiemmin hankittu UART-signaali näyttää merkin 'D' ASCII-koodien muodossa tai se voidaan muuttaa heksadesimaalimuotoiseksi (Hex) näyttötilaksi, jolloin tuloksena näkyy 0x44. Tämä näkyy kuvassa 3-15. Tällä hetkellä tuetut näyttömuodot ovat: hex (heksadesimaali), dec (desimaali), oct (oktaali), bin (binääri) ja ascii-koodi.
3.4. Yhden UART-lähetyksen hankinta
Kun aaltomuoto, jonka haluamme kaapata, on satunnainen signaali, emme tiedä milloin aaltomuoto ilmestyy, ja jos käytämme suoraa hankintamenetelmää, voimme ehkä vain siepata tyhjäkäynnin signaalin aaltomuodon suurimman osan ajasta, emmekä voi sieppaa signaalin todellisen lähetyksen aikana.
Tällä hetkellä se voidaan kaapata laukaisemalla. Asettamalla vastaavat liipaisuolosuhteet voimme ohjata signaalin hankinnan alkamisaikaa aaltomuodon muutoksen mukaan, jotta voimme kaapata tarkasti haluamamme signaalin aaltomuodon.
3.4.1. Puskuritila
DSLogic tukee kahta hankintatilaa: suoratoistotila ja puskuritila. Stream-tilassa kerätyt tiedot lähetetään tietokoneelle reaaliajassa, minkä jälkeen DSView käsittelee sen. Puskuritilassa kerätyt tiedot tallennetaan ensin välimuistiin DSLogicin sisäiseen laitteistovälimuistiin ja siirretään sitten PC:lle hankinnan jälkeen, ja DSView käsittelee ne.
Sen lisäksi, että saavutetaan korkeammat näytteenottotaajuudet, puskuritila tukee myös enemmän laukaisuvaihtoehtoja ja -asetuksia, kuten monitasoinen liipaisu, sarjaliipaisu ja liipaisupaikkojen asetus. Suoratoistotila sen sijaan tukee vain yksinkertaista laukaisua.
3.4.2. Triggerin asetukset
Yksinkertaista laukaisua varten voimme asettaa laukaisuvaihtoehdon suoraan kanavan viereen. Se vastaa peräkkäin nousevaa reunaa, korkeaa, laskevaa reunaa, matalaa tasoa ja mitä tahansa reunan liipaisinta. Säilytä oletusarvoinen yksinkertainen laukaisutila laukaisupaneelissa. Esimerkiksi UART-lähetykselle, joka ei tiedä, milloin se tapahtuu, voimme laukaista laskevan reunan. Kun UART-signaali pysyy käyttämättömänä, liipaisin ei täyty. DSLogic odottaa liipaisuehdon saapumista kuvan 3-17 mukaisesti.
Kun UART alkaa lähettää ensimmäistä aloitusbittiä, liipaisuehto aktivoituu ja DSLogic saa signaalin aaltomuodon liipaisuhetkellä. Tämä näkyy kuvassa 3-18.
Tarkastellaan monimutkaisempaa laukaisuskenaariota, kuten laite A lähettää jatkuvasti tietoja laitteelle B satunnaisesti ja laite B vastaa eri tietoihin laitteen A lähettämän tietosisällön mukaan. Jos haluamme tietää, mitä dataa laite A lähetti laitteelle B ennen datan 0 lähettämistä, kuinka asetamme liipaisuehdon, jotta aaltomuoto saadaan kiinni vastaavalla hetkellä?
Tässä on kaksi ongelmaa, jotka on ratkaistava. Ensin meidän on asetettava liipaisimen sijainti, jotta voimme nähdä tiedot ennen liipaisinta, ei dataa liipaisimen jälkeen; Toiseksi meidän on löydettävä dataa 0 lähettävän laitteen B aaltomuodon ominaisuudet ja muutettava se vastaavaan liipaisuehtoon.

Kuva 3-19 Liipaisimen asento
UART:n protokollasääntöjen mukaan dataa 0 lähettävä aaltomuoto on suhteellisen laaja jatkuva matalan tason pulssisignaali. Jos UART:n baudinopeus on 115200 ja asettamamme näytteenottotaajuus on 1MHz, datan 0 aaltomuoto on esitetty kuvassa 3-20, joka on noin 78.125uS matalan tason pulssi.
Edistyneen liipaisimen tai liipaisuasennon asettaminen edellyttää puskuritilan tukea, sinun on ensin asetettava "Run mode" -asetukseksi "Buffer mode" "Asetukset" -kohdassa, äläkä valitse "RLE-laitteistopakkaus" -vaihtoehtoa. Aseta edistynyt liipaisuehto kanavalle 1 jatkuvalla alhaalla 75 näytepisteellä (vastaa 1 MHz näytteenottotaajuutta, mikä on alhainen taso 75us) ja aseta liipaisuasetukseksi 80 % helpottaaksesi tietojen tarkkailua ennen liipaisua. Tarkat asetukset näkyvät kuvassa 3-21.
Tämän liipaisuehdon mukaan se laukeaa, kun laite B lähettää datan 0, ja saatu aaltomuoto on esitetty kuvassa 3-22.
3.4.3. Toista kokoelma
Joissakin tapauksissa meidän on tarkkailtava dynaamisesti joidenkin signaalien tilaa, kuten Burstin lähettämää datasisältöä joka kerta, mutta emme tiedä milloin tiedot lähetetään, ja on mahdotonta napsauttaa "Aloita"-painiketta usein. . DSView tarjoaa "toiston" hankintatilan, joka hakee ja päivittää aaltomuodot automaattisesti, kun laukaisu saavutetaan. Kun korjaamme joitain jaksollisia purskesignaaleja, on erittäin kätevää tarkkailla dynaamisen hankinnan ja protokollan jäsennyksen tuloksia toistotilan kautta.
Toistotila voidaan asettaa kuvan 3-23 mukaisesti. Toistoväli on pienin viipymäaika kahden näytteen välillä helpottaa edellisen hankinnan aaltomuodon ja dekoodaustulosten havainnointia.
3.5. Pitkäaikaisten UART-lähetysten hankinta
Kun on tarpeen hankkia erittäin pitkiä aaltomuotoja analysointia varten, voimme käyttää Stream-tilaa. DSLogic voi saavuttaa näytteenottosyvyyden 16 G kanavaa kohden Stream-tilassa. 1MHz:n näytteenottotaajuudella hakuaika voi olla 16G/1M ≈ 16000s, mikä on yli 4 tuntia.
3.5.1. Suoratoistotila
Stream-tilan asetukset näkyvät kuvassa 3-24, ja eri DSLogic-laitteistoversiot tukevat erilaisia suoratoistotilan kanavavaihtoehtoja. USB3-porttiin perustuvalla U16Pro3.0:lla se voi saavuttaa 3 kanavaa @ jopa 1 GHz näytteenottotaajuudella, 6 kanavaa @ jopa 500 MHz näytteenottotaajuudella, 12 kanavaa @ jopa 250 MHz näytteenottotaajuudella ja 16 kanavaa @ jopa 125 MHz näytteenottotaajuudella.
Kun kerätyn datan määrä on suhteellisen suuri, 0:UART-protokollaa voidaan käyttää dekoodaukseen verrattuna 1:UART-protokollaan, joka jättää pois bittitietojen ulostulon, ei tue korkean tason protokollien pinoamista ja voi lyhentää dekoodausaikaa. ja vähentää muistin käyttöä. Muut toiminnot ovat samat kuin 1: UART. Dekoodausefekti näkyy kuvassa 3-25.
3.5.2. Protokollaluettelo tulee näkyviin
Kuten seuraavasta kuvasta näkyy, graafisen dekoodauksen tulos on täysin synkronoitu hankitun aaltomuodon kanssa ajassa, mikä auttaa meitä ymmärtämään aaltomuodon ja löytämään ongelman, mutta samaan aikaan se ei ole ajan näyttöasteikon vuoksi. dekoodaustuloksen katsomista varten. Luettelonäytöt kompensoivat tämän puutteen, jolloin on helppo tarkastella ja analysoida suuria määriä dekoodattua sisältöä.
DSView tarjoaa tavan siirtyä graafisten tulosten ja luettelotulosten välillä. Napsauta mitä tahansa riviä tulosluettelossa hypätäksesi automaattisesti vastaavaan aaltomuototulokseen, ja voit myös valita, zoomataanko aaltomuotoon automaattisesti hyppyjen aikana vai korjataanko aaltomuodon nykyinen zoomaussuhdesarake. Lisäksi, kun tarkastelemme aaltomuotoa tietyllä hetkellä, jos haluamme hypätä kohtaan, jossa tätä aaltomuotoa vastaava dekoodaustulos näkyy luettelossa, sinun tarvitsee vain napsauttaa paikannuspainiketta aaltomuodon oikeassa yläkulmassa. luettelon näyttöikkuna.
Lisäksi purettu sisältö voidaan viedä tiedostoon luettelonäytön kautta. Kuten yllä olevasta kuvasta näkyy, napsauttamalla luettelossa näkyvää "Tallenna" -painiketta voit viedä parhaillaan purettavan sisällön csv- tai txt-tiedostoon, mikä on kätevää kolmannen osapuolen tietojenkäsittelyssä, kuten syöttämisessä Matlabiin. analysointia varten tai tietojen syötteenä muille ohjelmistoille.
3.5.3. Dekoodaa datahaku
Toinen luettelonäytön etu on se, että dekoodattuja tuloksia voidaan käyttää merkkijonoina tuloshakuihin, kuten tiettyjen toimintojen tai datatavujen etsimiseen, mikä voi nopeasti paikantaa tarkasteltavan sijainnin.
Kirjoita haettava avainsana hakukenttään ja paina eteenpäin-/taaksepainikkeita löytääksesi avainsanan sisältävän dekoodatun sisällön, ja aaltomuotoliittymä hyppää oikeaan sijaintiin analysointia varten. Jos jäsennät segmentin tuloksia, voit napsauttaa tarkistuslistan riviä, jolloin eteenpäin/taaksepäin-painikkeet etsivät edellistä ja seuraavaa osumaa alkaen tällä toiminnalla sen sijaan, että aloitat tyhjästä.
UART-protokollassa DSView tukee myös monirivistä datahakua. Voidaan käyttää tiedoissasi näkyvien vierekkäisten merkkijonotulosten etsimiseen. Kuten kuvasta 3-29 näkyy, monirivinen datahaku ketjuttaa useita avainsanoja "-"-merkillä.
3.5.4. Aaltomuotohaku
DSView ei tue vain dekoodattujen tulosten hakua, vaan myös alkuperäisen aaltomuodon hakutoimintoa. Aaltomuodot voidaan paikantaa nopeasti monissa kohtauksissa. Esimerkiksi kun aaltomuoto lähetetään äkillisesti, koska tyhjäkäyntijakso on suhteellisen pitkä, on mahdotonta nähdä yksityiskohtaista aaltomuotoa, joka lähetetään useita kertoja samanaikaisesti, voit käyttää aaltomuotohakua ja siirtyä heti seuraavaan aaltomuotohypyyn katsomalla aaltomuotoa edellisellä hetkellä varmistaaksesi, että zoomaussuhde ei muutu.
Tarkista "Haku" työkalupalkki, hakukenttä ilmestyy ohjelmistoikkunan alle, napsauta hakukenttää, avaa hakuasetusikkuna, määritä kanavan hyppyreuna, voit etsiä kriteerit täyttävää aaltomuotoa vasemmalla ja oikealla avaimet. Samanaikaisesti voit myös manuaalisesti siirtää hakukohdistinta määrittääksesi, mistä haku alkaa.
Kun haku valitaan, näkyviin tulee kohdistin, jossa on "S"-tunniste, alkutila on harmaa, jos napsautat vasemmalle/oikealle etsiäksesi ja löytääksesi kriteerit täyttävän aaltomuodon, kohdistin muuttuu siniseksi ja siirtyy automaattisesti hakupaikkaan. . Jos siirrät "S"-kohdistinta manuaalisesti, kohdistin muuttuu jälleen harmaaksi.
3.5.5. Kohdistimen käyttö
DSView tukee monenlaisia kohdistintoimintoja, mikä mahdollistaa paitsi ajoitusmittausten osoittimen avulla myös erityisten aaltomuotojen merkitsemisen ja seuraamisen kohdistimella. Kun aaltomuoto on käyttämättömänä tai aikaväli on pitkä, voit lisätä kohdistimen kuhunkin kiinnostavaan kohtaan, ja kun haluat hypätä kiinnostavaan aaltomuotoon, sinun tarvitsee vain napsauttaa hiiren oikealla painikkeella viivaimen aluetta ja napsauttaa sitten kohdistimen järjestysnumero, johon haluat hypätä ja joka voi hypätä vastaavaan kohdistimen paikkaan.
Jos haluat siirtää kohdistinta, sinun tarvitsee vain siirtää hiirtä kohdistimen lähellä, kun kohdistin näkyy lihavoituna, napsauta hiiren vasenta painiketta valitaksesi, osoitin seuraa hiiren liikettä, määrittää sijainnin ja napsauta vasenta painiketta uudelleen vapauttaaksesi kohdistimen. Kun haluat kohdistimen napsahtaa johonkin tietyn kanavan aaltomuodon hyppyreunoista, sinun tarvitsee vain siirtää hiirtä lähellä hyppyreunaa, jolloin kohdistin napsahtaa automaattisesti hypyn reunaan.
3.5.6. Hiiren mitat
Kursoripohjaisten mittausten lisäksi DSView tarjoaa kätevämpiä hiirimittauksia. Esimerkiksi nykyisen pulssin leveyden, jakson, käyttöjakson ja taajuuden mittaukset (täytyy vain asettaa hiiri muuttuvan pulssin päälle); Reunojen lukumäärän mittaus (napsauttamalla aaltomuodon alku- ja loppukohtaa lasketaan automaattisesti tämän intervallin hyppyreunat); ja reunaetäisyyden mittaus (klikkaa hiiren aloitusreunaa ja siirry päätyreunaan).
Kuten kuvassa 3-31, siirrä hiiri siirtymäreunan aloitusreunaan, napsauta hiiren vasenta painiketta, valitse aloitussiirtymäreuna, siirrä hiiri loppusiirtymäreunan kohtaan ja etäisyys näiden kahden välillä. siirtymäreunat (kesto/näytteenottovälipiste) tulevat näkyviin ja hiiren vasenta painiketta napsautetaan uudelleen mittauksen suorittamiseksi loppuun.
4. Usein Kysytyt Kysymykset
4.1. Määritä tuntematon siirtonopeus
Kun emme voi saada etukäteen UART-aaltomuodon siirtonopeutta, voimme myös arvata todellisen siirtonopeuden hankitun aaltomuodon perusteella. DSView tarjoaa "Arvaa bittinopeus" -dekooderin mielivaltaisen aaltomuotomerkkijonon siirtonopeusparametrien arvaamiseksi. Guess-bittinopeuden periaate on löytää aaltomuodon kapein pulssinleveys vuorotellen bitin aaltomuodon leveydeksi ja laskea sen käänteisarvo baudinopeudeksi. Joten tuloksia voi olla useita, meidän tarvitsee vain tarkkailla, onko vastaava pulssi kohtuullinen pulssin leveys, ja sitten valita maksimisiirtonopeustulos. Tämä näkyy kuvassa 4-1.
Kun tiedonsiirtonopeus on saatu, se voidaan asettaa UART-dekooderin asetuksiin. Koska UART-protokolla synkronoi uudelleen jokaisen aloitusbitin, siirtonopeuden virhe kertyy vain yhteen datakehykseen, ja niin kauan kuin virhe yhden kehyksen sisällä ei ylitä bittibitin rajaa, voidaan saada oikea dekoodaustulos. .
Tietenkin, jos aaltomuodosta on pieni näyte, kuten aaltomuodossa ei ole yhden bitin leveää pulssia, arvattu siirtonopeus on todennäköisesti virheellinen, mikä johtaa virheelliseen dekoodaustulokseen. Kun on aaltomuoto, joka ei ole protokollan mukainen, UART-dekooderi antaa myös mahdollisia virhevihjeitä, kuten kehysvirheitä, kuten kuvassa 4-2. Kokeneet insinöörit voivat säätää tiedonsiirtonopeutta tarkkailemalla aaltomuotoa ja dekoodaustuloksia saadakseen oikeat dekoodaustulokset.
4.2. Luottamuksenvastaisten merkkien dekoodaus
Edellisessä osiossa mainittiin, että UART-protokollaa voidaan lähettää erilaisilla fyysisillä signaaleilla, ja joillakin fyysisen kerroksen signaaleilla voi olla käänteinen suhde protokollasignaaliin (korkea ja matala taso vaihdettavissa), kuten RS232 tai B-signaali. RS485-differentiaalisignaali. Kun keräämämme signaali käännetään, DSView:n UART-dekooderi voidaan myös asettaa saamaan oikea dekoodaustulos.
Käyttäjän tarvitsee vain vaihtaa "Invert Signal?" UART-dekooderin asetuksissa. Vaihtoehto on "kyllä". Käänteisen signaalin dekoodaus on esitetty seuraavassa kuvassa.
4.3. Usean ryhmän UART-viestinnän dekoodaus
DSView:n UART-dekooderi on tarkoituksella suunniteltu yksikanavaiseksi lähestymistavaksi, mikä mahdollistaa mielivaltaisten kanava-asetusten tekemisen multipleksoitua viestintää varten dekoodauksen aikana. Esimerkiksi full-duplex UART-viestinnässä, jossa on sekä TX- että RX-signaali, meidän tarvitsee vain lisätä kaksi UART-dekooderia vastaamaan TX- ja RX-dekoodausta.
Kuten alla olevasta kuvasta näkyy, kyseessä on tapaus, jossa kolme UART-signaalia dekoodataan samanaikaisesti.
4.4 Lähtöasennosta johtuva dekoodausvirhe
Jokaisessa viestintäprosessissa laitteen on aloitettava alkutilasta, jotta se vastaanottaa viestintäsisällön oikein, eli tunnistaa ja analysoi protokollakehyksen oikein. Sama pätee loogisiin analysaattoreihin, jos signaalin saanti alkaa tarkalleen datakehyksen keskeltä, niin väärä aloituskohta johtaa todennäköisesti väärään dekoodaustulokseen. Kuten seuraavassa kuvassa näkyy, laite lähettää jatkuvasti "DreamSourceLab" -merkkijonoa, mutta koska ensimmäisen sieppauksen sijainti on tarkalleen datakehyksen keskellä, ensimmäisen aaltomuodon dekoodaus tulee sekaisin.
Tietojen virheellisen dekoodauksen välttämiseksi voimme keinotekoisesti asettaa dekoodauksen aloitus- ja loppukohdan, jotta vältetään katkaistujen datakehysten aiheuttamat dekoodausvirheet. Dekoodauspaikka voi olla minkä tahansa kohdistimen määritetty paikka, ja toiminnon tarvitsee vain asettaa vastaavat aloitus- ja lopetuskohdat dekooderin asetuksissa vastaavan kohdistimen lisäämisen jälkeen. Kuten seuraavassa kuvassa näkyy, aloitusasennon asettaminen välttää ensimmäisen katkaistun aaltomuodon virheellisen dekoodauksen.
5. Kehittynyt analyysi
5.1. Monikerroksinen protokollan jäsennys
UART on erittäin laajalti käytetty perusprotokolla, ja monet käytännön sovelluksissa käytetyt siirtoprotokollat ovat laajennettuja UARTin pohjalta. Esimerkiksi: DMX512, LIN, MIDI ja Modbus jne., taustalla oleva viestintäperusta on UART-protokolla. 、
Tämän ominaisuuden mukaan DSView tukee myös monikerroksisten protokollien jäsennyspinoamista. Kun lisäämme monimutkaisen protokollan dekooderin, DSView rakentaa automaattisesti koko protokollapinon ylätasolta, mikä tekee dekoodaustuloksista rikkaampia ja täydellisempiä, mikä on erittäin hyödyllistä käyttäjän syvälliselle analyysille ja protokollan ymmärtämiselle.
Otetaan Modbus RTU esimerkkinä ymmärtääksemme DSView:n monikerroksisten protokollien analysointiprosessia. UART-tavunsiirtofunktion perusteella Modbus RTU määrittelee kunkin tavun erityisen merkityksen yksityiskohtaisesti siten, että Modbusin kehysrakenne muodostuu yhdistämällä useita UART-protokollakehyksiä yhteen. Tämä näkyy seuraavassa kuvassa.
Kun käytät DSView:ta tällaiseen protokollan dekoodaukseen, sinun tarvitsee vain kirjoittaa vastaava protokolla protokollan hakukenttään ja lisätä se. DSView rakentaa automaattisesti asetussivun koko pinoamisprotokollalle seuraavan kuvan mukaisesti, ja käyttäjä voi tehdä vastaavat asetukset.
Kuten seuraavassa kuvassa näkyy, protokollan pinoamisrakenne näkyy selvästi Modbus RTU:n dekoodaustuloksesta. Jokaisen kehyksen Modbus koostuu 8 UART-tavukehyksestä. Modbus-kehyksen sisällössä on myös selkeät kommentit, jotka osoittavat sen erityisen merkityksen. Kun lähetysvirhe tapahtuu, tällainen dekoodaustulos voi paikantaa erittäin selvästi virheen sijainnin sekä virheen syyn (on kyseessä sitten taustalla olevan UART-ongelma tai Modbus-protokollakerroksen ongelma). Jos et halua nähdä taustalla olevia tietoja, voit piilottaa vastaavan dekoodatun sisällön dekooderin asetussivulla.
Jätä vastaus