Turinys:

„Pasidaryk pats“nuosekliųjų kodų keitikliai: 15 žingsnių
„Pasidaryk pats“nuosekliųjų kodų keitikliai: 15 žingsnių

Video: „Pasidaryk pats“nuosekliųjų kodų keitikliai: 15 žingsnių

Video: „Pasidaryk pats“nuosekliųjų kodų keitikliai: 15 žingsnių
Video: MUHTEŞEM FİYATLAR !!! l Adana Oto Pazarı l 2.El Araba Fiyatları 2024, Lapkritis
Anonim
„Pasidaryk pats“nuosekliųjų kodų keitikliai
„Pasidaryk pats“nuosekliųjų kodų keitikliai

Serijinis duomenų perdavimas tapo visur paplitęs daugelyje pramoninių programų, ir yra keletas būdų, kaip sukurti bet kokią serijinę duomenų perdavimo sąsają. Patogu naudoti vieną iš standartinių protokolų, ty UART, I2C arba SPI. Be to, yra keletas kitų protokolų, skirtų labiau pritaikytoms programoms, tokioms kaip CAN, LIN, Mil-1553, Ethernet ar MIPI. Kita galimybė tvarkyti serijinius duomenis yra naudoti pritaikytus protokolus. Šie protokolai paprastai yra pagrįsti eilučių kodais. Dažniausiai naudojami linijų kodavimo tipai yra NRZ, Mančesterio kodas, AMI ir kt. [Konfigūruojamas protokolo dekodavimas iš Mančesterio ir NRZ koduotų signalų, Teledyne Lecroy Whitepape].

Specializuotų serijinių protokolų pavyzdžiai yra DALI, skirtas pastato apšvietimui valdyti, ir PSI5, naudojamas jutikliams prijungti prie valdiklių, skirtų automobilių reikmėms. Abu šie pavyzdžiai yra pagrįsti Mančesterio kodavimu. Panašiai SENT protokolas naudojamas automobilių jutiklių ir valdiklių jungtims, o CAN magistralė, dažniausiai naudojama norint įgalinti ryšį tarp mikrovaldiklių ir kitų automobilių programose esančių įrenginių, pagrįsta NRZ kodavimu. Be to, daug kitų sudėtingų ir specializuotų protokolų buvo ir yra kuriami naudojant Mančesterio ir NRZ schemas.

Kiekvienas eilučių kodas turi savo privalumų. Pvz., Perduodant dvejetainį signalą kabeliu, gali atsirasti iškraipymų, kuriuos galima žymiai sumažinti naudojant AMI kodą [Petrova, Pesha D. ir Boyan D. Karapenev. „Dvejetainio kodo keitiklių sintezė ir modeliavimas“. Telekomunikacijos šiuolaikinėse palydovinėse, kabelinėse ir transliavimo paslaugose, 2003. TELSIKS 2003. 6 -oji tarptautinė konferencija. T. 2. IEEE, 2003]. Be to, AMI signalo pralaidumas yra mažesnis nei lygiavertis RZ formatas. Taip pat Mančesterio kodekse nėra kai kurių trūkumų, būdingų NRZ kodui. Pavyzdžiui, naudojant Mančesterio kodą serijinėje linijoje pašalinami nuolatinės srovės komponentai, atkuriamas laikrodis ir užtikrinamas palyginti aukštas triukšmo atsparumo lygis [Hd-6409 Renesas duomenų lapas].

Todėl standartinių eilučių kodų konvertavimo nauda yra akivaizdi. Daugelyje programų, kuriose eilučių kodai naudojami tiesiogiai ar netiesiogiai, dvejetainį kodą reikia konvertuoti.

Šioje instrukcijoje mes pristatome, kaip realizuoti kelių eilučių kodavimo keitiklius naudojant pigų „Dialog SLG46537 CMIC“.

Žemiau aprašėme veiksmus, kurių reikia norint suprasti, kaip „GreenPAK“mikroschema buvo užprogramuota, kad būtų sukurti serijinio kodavimo keitikliai. Tačiau, jei norite gauti programavimo rezultatą, atsisiųskite „GreenPAK“programinę įrangą, kad peržiūrėtumėte jau užpildytą „GreenPAK“dizaino failą. Prijunkite „GreenPAK Development Kit“prie kompiuterio ir paspauskite programą, kad sukurtumėte pasirinktinį nuosekliųjų linijų kodavimo keitiklių IC.

1 žingsnis: Konversijos dizainas

Konversijos dizainas
Konversijos dizainas
Konversijos dizainas
Konversijos dizainas
Konversijos dizainas
Konversijos dizainas
Konversijos dizainas
Konversijos dizainas

Šioje instrukcijoje pateikiamas šių eilučių kodų keitiklių dizainas:

● NRZ (L) - RZ

Konvertavimas iš NRZ (L) į RZ yra paprastas ir gali būti pasiektas naudojant vieną AND vartą. 1 paveiksle parodyta šios konversijos konstrukcija.

● NRZ (L) - RB

Norėdami konvertuoti NRZ (L) į RB, turime pasiekti tris loginius lygius (-1, 0, +1). Šiuo tikslu mes naudojame 4066 (keturių dvišalį analoginį jungiklį), kad būtų užtikrintas bipolinis perjungimas nuo 5 V, 0 V ir -5 V. Skaitmeninė logika naudojama trijų loginių lygių perjungimui valdyti, pasirinkus 4066 įjungimo įėjimus 1E, 2E ir 3E [Petrova, Pesha D. ir Boyan D. Karapenev. „Dvejetainio kodo keitiklių sintezė ir modeliavimas“. Telekomunikacijos šiuolaikinėse palydovinėse, kabelinėse ir transliavimo paslaugose, 2003. TELSIKS 2003. 6 -oji tarptautinė konferencija. T. 2. IEEE, 2003].

Loginis valdymas įgyvendinamas taip:

Q1 = Signal & Clk

Q2 = Clk '

Q3 = „Clk & Signal“

Bendra konversijos schema parodyta 2 paveiksle.

● NRZ (L) į AMI

NRZ (L) į AMI konvertavimas taip pat naudoja 4066 IC, nes AMI kodas turi 3 loginius lygius. Loginė valdymo schema apibendrinta 1 lentelėje, atitinkanti bendrą 3 pav. Pateiktą konversijos schemą.

Loginę schemą galima parašyti taip:

Q1 = (Signal & Clk) & Q

Q2 = (signalas ir Clk)"

Q3 = (signalas ir signalas) & Q '

Kur Q yra „D-Flip Flop“išvestis, turinti tokį pereinamąjį ryšį:

Qnext = Signal & Qprev ' + Signal' & Qprev

● AMI į RZ

AMI į RZ konvertavimui naudojami du diodai, skirti įvesties signalui padalyti į teigiamas ir neigiamas dalis. Atvirą neigiamą signalo dalį galima apversti naudojant apverčiantį op-amp (arba tranzistoriumi pagrįstą loginę grandinę). Galiausiai šis apverstas signalas perduodamas į ARBA vartus kartu su teigiamu signalu, kad būtų gautas norimas išvesties signalas RZ formatu, kaip parodyta 4 paveiksle.

● NRZ (L) į padalintos fazės Mančesterį

Konvertavimas iš NRZ (L) į padalintos fazės Mančesterį yra nesudėtingas, kaip parodyta 5 paveiksle. Įvesties signalas kartu su laikrodžio signalu perduodamas į NXOR vartus, kad gautų išvesties signalą (pagal G. E. Thomas susitarimą). XOR vartai taip pat gali būti naudojami norint gauti Mančesterio kodą (pagal IEEE 802.3 konvenciją) [https://en.wikipedia.org/wiki/Manchester_code].

● Skirstomosios fazės Mančesterio į padalijimo fazę ženklo kodas

Konvertavimas iš padalintos fazės Mančesterio į padalijimo fazės ženklo kodą parodytas 6 paveiksle.

„D-flip“valdoma tokia lygtimi:

Qnext = Q '

Išėjimo signalas gaunamas taip:

Išėjimas = Clk & Q + Clk "Q"

● Daugiau eilutės kodo konversijų

Naudojant aukščiau pateiktas konversijas, galima lengvai gauti daugiau eilučių kodų. Pvz., NRZ (L) į Mančesterio padalijimo fazės kodą ir padalinto fazės Mančesterio kodo konvertavimą į padalijimo fazės ženklo kodo konvertavimą galima sujungti, kad būtų tiesiogiai gautas NRZ (L) į padalijimo fazės ženklo kodas.

2 žingsnis: „GreenPAK“dizainas

Aukščiau pateiktas konvertavimo schemas galima lengvai įgyvendinti „GreenPAK ™“dizaineryje kartu su kai kuriais pagalbiniais išoriniais komponentais. SLG46537 suteikia daug išteklių nurodytiems projektams įgyvendinti. „GreenPAK“konversijų projektai pateikiami ta pačia tvarka, kaip ir anksčiau.

3 žingsnis: NRZ (L) į RZ „GreenPAK“

NRZ (L) į RZ GreenPAK
NRZ (L) į RZ GreenPAK

„GreenPAK“dizainas NRZ (L) - RZ 7 paveiksle yra panašus į 1 žingsnyje parodytą, išskyrus tai, kad yra pridėtas vienas DLY blokas. Šis blokas yra neprivalomas, tačiau jis pašalina trikdžius dėl laikrodžio ir įvesties signalų sinchronizavimo klaidų.

4 žingsnis: NRZ (L) į RB „GreenPAK“

NRZ (L) į RB GreenPAK
NRZ (L) į RB GreenPAK

„GreenPAK“dizainas, skirtas NRZ (L) ir RB, parodytas 8 paveiksle. Paveikslėlyje parodyta, kaip prijungti CMIC loginius komponentus, kad būtų pasiektas numatytas dizainas, pateiktas 1 veiksme.

5 veiksmas: NRZ (L) į AMI „GreenPAK“

NRZ (L) į AMI „GreenPAK“
NRZ (L) į AMI „GreenPAK“

9 paveiksle parodyta, kaip sukonfigūruoti „GreenPAK CMIC“konvertavimui iš NRZ (L) į AMI. Ši schema kartu su pagalbiniais išoriniais komponentais, pateikta 1 žingsnyje, gali būti naudojama norimai konversijai

6 veiksmas: AMI į RZ „GreenPAK“

AMI į RZ GreenPAK
AMI į RZ GreenPAK

10 paveiksle pavaizduotas „GreenPAK“dizainas AMI konvertavimui į RZ. Tokiu būdu sukonfigūruotas „GreenPAK CMIC“kartu su „op-amp“ir diodais gali būti naudojamas norint gauti reikiamą išvestį.

7 žingsnis: NRZ (L) į Splito fazės Mančesterį GreenPAK

NRZ (L) į padalintos fazės Mančesterį GreenPAK
NRZ (L) į padalintos fazės Mančesterį GreenPAK

11 paveiksle „GreenPAK“konstrukcijoje naudojami NXOR vartai, norint gauti NRZ (L) į Mančesterio padalijimo fazę.

8 žingsnis: „GreenPAK“padalijimo fazės Mančesteris į padalijimo fazės ženklų kodą

„GreenPAK“padalijimo fazės Mančesteris į padalijimo fazės ženklo kodą
„GreenPAK“padalijimo fazės Mančesteris į padalijimo fazės ženklo kodą

12 paveiksle pateiktas „GreenPAK“dizainas, skirtas „Split“fazės Mančesterio iki padalijimo fazės ženklui. Konversijos dizainas yra baigtas ir konversijos procesui nereikia jokių išorinių komponentų. DLY blokai yra neprivalomi, kad būtų pašalinti trikdžiai, atsirandantys dėl sinchronizavimo klaidų tarp įvesties ir laikrodžio signalų.

9 žingsnis: eksperimentiniai rezultatai

Visi pateikti dizainai buvo patikrinti. Rezultatai pateikiami ta pačia tvarka kaip ir anksčiau.

10 veiksmas: nuo NRZ (L) iki RZ

NRZ (L) į RZ
NRZ (L) į RZ

Eksperimentiniai NRZ (L) pavertimo RZ rezultatai pateikti 13 paveiksle. NRZ (L) rodomas geltonai, o RZ - mėlyna spalva.

11 žingsnis: NRZ (L) - RB

NRZ (L) į RB
NRZ (L) į RB

Eksperimentiniai NRZ (L) pavertimo RB rezultatai pateikti 14 paveiksle. NRZ (L) rodomas raudonai, o RB - mėlyna spalva.

12 veiksmas: NRZ (L) į AMI

NRZ (L) į AMI
NRZ (L) į AMI

15 paveiksle parodyti eksperimentiniai NRZ (L) ir AMI konversijos rezultatai. NRZ (L) rodomas raudonai, o AMI - geltonai.

13 žingsnis: AMI į RZ

AMI į RZ
AMI į RZ

16 paveiksle pavaizduoti AMI konvertavimo į RZ eksperimentiniai rezultatai. AMI yra padalinta į teigiamas ir neigiamas dalis, pažymėtas geltona ir mėlyna spalvomis. Konvertuotas išvesties RZ signalas rodomas raudonai.

14 žingsnis: NRZ (L) į Splito fazės Mančesterį

NRZ (L) į padalintos fazės Mančesterį
NRZ (L) į padalintos fazės Mančesterį

17 paveiksle pavaizduoti eksperimentiniai NRZ (L) ir Mančesterio padalijimo fazės rezultatai. NRZ (L) signalas rodomas geltonai, o konvertuotas išvesties padalintas fazės Mančesterio signalas rodomas mėlyna spalva.

15 žingsnis: padalijimo fazės Mančesteris į padalijimo fazės ženklo kodą

Skirstomosios fazės Mančesteris į padalijimo fazės ženklo kodą
Skirstomosios fazės Mančesteris į padalijimo fazės ženklo kodą

18 paveiksle pavaizduotas konvertavimas iš padalintos fazės Mančesterio į padalijimo fazės ženklo kodą. Mančesterio kodas rodomas geltonai, o „Mark“kodas - mėlyna spalva.

Išvada

Linijiniai kodai yra kelių serijinio ryšio protokolų, kurie visuotinai naudojami įvairiose pramonės šakose, pagrindas. Lengvas ir nebrangus eilutės kodų konvertavimas, kurio siekiama daugelyje programų. Šioje instrukcijoje pateikiama išsami informacija apie kelių eilučių kodų konvertavimą naudojant „Dialog“SLG46537 kartu su kai kuriais pagalbiniais išoriniais komponentais. Pateikti dizainai buvo patikrinti ir daroma išvada, kad eilutės kodų konvertavimą galima lengvai atlikti naudojant „Dialog“CMIC.

Rekomenduojamas: