- Kodētāja pamatprincips:
- Kodētāju veidošana, izmantojot kombinētās loģikas dizainus
- 8: 3 kodētāji:
- Parasto kodētāju trūkums:
- Prioritārais kodētājs:
Kodētāji, kā norāda nosaukums, lielāku informācijas daļu kodē mazākā bitu vērtībā. Ir daudz veidu kodētāju, pamatojoties uz ieeju un izeju skaitu un uz tā darbību. Bet katram kodētājam ir viens pamatnoteikums, kodētāja izejas līniju skaits vienmēr būs mazāks nekā ievades līniju skaits. Šajā rakstā mēs uzzināsim vairāk par kodētājiem, kas ir kodētājs, kā un kāpēc tos izmanto digitālajās shēmās.
Kodētāja pamatprincips:
Iedomāsimies, ka kodētājs ir melna kaste, kā parādīts zemāk, kas maģiski samazina ievades līniju skaitu no 4 līdz tikai 2 izejas līnijām, taču joprojām sniedz to pašu informāciju, nezaudējot datus.
Vispirms noskaidrosim, kāds būtu šī kodētāja nosaukums. Tam ir četras ieejas un divas izejas, tāpēc šī kodētāja nosaukums būs 4: 2 kodētājs. Ja kodētājam ir “ n ” izejas līniju, ievades līniju skaits būs 2 n, mūsu gadījumā izejas līniju skaits ir divi (n = 2), tāpēc ievades līniju skaitam jābūt (2 2 = 4) četriem, tieši tā arī ir. Četri ievades kontakti ir apzīmēti no I0 līdz I3 un divi izvades kontakti ir apzīmēti no O0 līdz O1
Tātad, kā kodētājs pārveido četrus signālus divos, to var saprast, apskatot zemāk esošo patiesības tabulu. Ir arī svarīgi zināt, ka parastam kodētājam, piemēram, šeit parādītajam, ir noteikums, ka attiecīgajā laikā tikai vienam ievades tapam jābūt augstam, tāpēc nākamajā patiesības tabulā tikai viena ievade būs augsta.
Visi iespējamie izejas un izejas nosacījumi ir parādīti iepriekš minētajā patiesības tabulā. Piemēram, ja tikai O1 ir augsts (1) un visas pārējās ieejas ir zemas (0), tad abi izejas kontakti būs zemi (0). Līdzīgi katram gadījumam izejas tapas mainīs arī statusu. Izmantojot šo izvades bitu statusu, lietotājs varēs izsekot tam, kāds ieejas signāls būtu ticis dots kodētājam.
Labi, kas ir iedomājies par 4 līniju pārveidošanu par 2 līnijām, kāpēc mums tas vispār ir vajadzīgs?
Lai saprastu, mēs esam izskaidrojuši 4: 2 kodētāju, taču ir arī citi kodētāji, kas var uzņemt lielāku ieeju skaitu un pārveidot tos par mazāku izeju skaitu, piemēram, 8: 3 kodētājs, 16: 4 kodētājs utt. Šie veidi of Encoder ir ļoti noderīgi, ja mums jāsamazina MCU / MPU izmantoto tapu skaits vai jāsamazina signālu nesošo vadu skaits PLC un citās sistēmās, kur ir slēdža vai LED masīvs. To izmanto arī efektīvai datu pārsūtīšanai, izmantojot mazākus vadus. Dažās lietojumprogrammās mums varētu būt situācija, kad vairāk nekā viena ievade varētu būt augsta (1), tādā gadījumā mēs to darīsim ar nosaukumu Priority Encoder, kuru mēs tālāk apspriedīsim šajā rakstā.
Kodētāju veidošana, izmantojot kombinētās loģikas dizainus
Tagad, kad mēs zinām, kā darbojas kodētājs un kur tas tiek izmantots. Ļaujiet mums uzzināt, kā to izveidot, izmantojot vienkāršus loģiskos vārtus. Kaut arī kodētāji, piemēram, 8: 3, ir pieejami kā glīts vienas paketes IC, piemēram, SN74LS148, ir svarīgi zināt, kā tie ir veidoti, lai mēs varētu izgatavot pielāgotus kodētājus saviem projektiem, pamatojoties uz nepieciešamo patiesības tabulu.
Būla izteiksme:
Pirmais, izstrādājot kombinētās loģikas ierīci, ir atrast patiesības tabulas Būla izteiksmi. Tas ir ļoti viegli, un to var viegli noteikt, tikai aplūkojot patiesības tabulu. Tā pati patiesības tabula, kuru mēs redzējām iepriekš, ir dota zemāk ar dažām ilustrācijām, lai jūs labāk saprastu.
Izteicienu skaits būs vienāds ar izvades līniju skaitu, šeit mums ir divas izejas un līdz ar to mums ir divas izteiksmes. Pirmajai izejai O0 vienkārši pārbaudiet, kurā stāvoklī tā ir augsta (1), un izsekojiet atbilstošā ievades kontakta numuru, kas arī paliek augsts (1). Līdzīgi visām lielajām O0 vērtībām ņemiet vērā, kura ieejas tapas numurs ir augsts, un pievienojiet tapas. Ievades tapas, kas atbilst izejas tapai O0, ir iezīmētas ar sarkanu virs, bet O1 - ar zilu. Tātad izteiksme O0 un O1 būs
O 1 = I 3 + I 2 O 0 = I 3 + I 1
4: 2 kodētāja shēmas diagramma:
Kad esam ieguvuši Būla izteiksmi, mums tā vienkārši jāzīmē vārtu veidā. Tā kā mums ir pievienošanas (+) darbība, mēs izmantosim OR vārti, lai izveidotu mūsu ķēdes. Jūs varat arī vienkāršot vai modificēt Būla izteiksmi atbilstoši savām vajadzībām. Iepriekš minētās izteiksmes shēma ir parādīta zemāk
Kontūru var viegli izveidot, izmantojot 7432 OR vārtu IC. Esmu izveidojis savu kodētāja ķēdi virs maizes paneļa, kā parādīts zemāk
Četras ievades līnijas (I0, I1, I2 un I3) nodrošina četras spiedpogas, nospiežot pogu, tā sasaista + 5V ar tapu, padarot to par loģisku 1, un, kad poga netiek nospiesta, tapa tiek turēta zemē caur 10k nolaižamo rezistoru, lai padarītu to loģisku nulli. Izejas (O0 un O1) tiek attēlotas, izmantojot sarkanu LED pāri. Ja gaismas diode spīd, tas nozīmē, ka izejas loģika ir 1, un, ja tās ir izslēgtas, tas nozīmē, ka izejas loģika ir 0. Pilnīga kodētāja ķēdes darbība ir parādīta zemāk esošajā video
Kā redzat, nospiežot pirmo pogu, ieeja I0 tiek padarīta augsta, tāpēc abas izejas paliek zemas. Nospiežot otro pogu, tiek ieslēgta ieeja I1 un tādējādi viena gaismas diode deg augstu, norādot, ka O0 ir augsts. Visbeidzot, nospiežot ceturto pogu, I3 ieeja ir augsta, un tādējādi abas gaismas diodes ir augstas. Šī ir ļoti vienkārša shēma, tāpēc mēs to esam viegli uzbūvējuši uz paneļa, taču praktiskiem kodētājiem ķēde kļūs nedaudz sarežģītāka. Tomēr kodētāji ir pieejami arī kā IC paketes, kuras var iegādāties, ja tas atbilst jūsu projektam.
8: 3 kodētāji:
8: 3 kodētāja darbība un lietošana ir līdzīga 4: 2 kodētāja funkcijai, izņemot ievades un izvades tapu skaitu. Kodētājs 8: 3 tiek saukts arī par oktālo – bināro kodētāju, zemāk parādīta kodētāja 8: 3 blokdiagramma
Šeit Kodētājam ir 8 ieejas un 3 izejas, atkal tikai vienai ieejai jebkurā brīdī jābūt augstai (1). Tā kā ir 8 ieejas, to sauc par oktāla ieeju, un, tā kā ir trīs izejas, to sauc arī par bināro izvadi. Kodētāja patiesības tabula ir parādīta zemāk.
8: 3 kodētāja patiesības tabula:
Būla izteiksme:
Tā kā mums ir jūsu rezultāti, mums būs trīs izteiksmes, kā parādīts zemāk
O 2 = I 7 + I 6 + I 5 + I 4 O 1 = I 7 + I 6 + I 3 + I 2 O 0 = I 7 + I 5 + I 3 + I 1
8: 3 kodētāja shēmas diagramma:
Kad Būla izteiksme ir iegūta, kā vienmēr, mēs varam izveidot ķēdes diagrammu, izmantojot OR vārti, kā parādīts zemāk.
Shēma izmanto 4 ieejas VAI vārtu IC, kā arī varat vienkāršot Būla izteiksmi, lai izmantotu citas parastās 2 ieejas vārtu IC.
Parasto kodētāju trūkums:
Šāda veida kodētāji cieš no šādiem galvenajiem trūkumiem
- Ja neviena no ieejām nav augsta, izeja būs vienāda ar visu nulli, bet arī šie nosacījumi ir pretrunā ar to, ka pirmais bits ir augsts (MSB). Tāpēc vienmēr jārūpējas par to, lai vismaz kāds bits vienmēr būtu ieslēgts
- Ja vairāk nekā viena ieeja ir augsta, izeja tiks sabrukta un var dot rezultātu jebkurai no ieejām, kas rada neskaidrības.
Lai pārvarētu šīs grūtības, mēs izmantojam cita veida kodētāju, ko sauc par Prioritātes kodētāju, kas izmanto papildu izvadi, lai noteiktu, vai izeja ir derīga, un, ja vairāk nekā viena ieeja ir augsta, tiek ņemta vērā tikai tā, kura ir augsta, sākot no LSD ignorējot citas ieejas.
Prioritārais kodētājs:
Analizēsim kā piemēru 4: 2 prioritārā kodētāja, lai saprastu, kā tas atšķiras no parastā kodētāja, un tas var pārvarēt iepriekš minētos divus trūkumus. 4: 2 prioritārā kodētāja blokshēma ir parādīta zemāk
4: 2 prioritātes kodētājam ir arī 4 ieejas un 2 izejas, taču mēs pievienosim vēl vienu izvadi ar nosaukumu V, kas nozīmē derīgu bitu. Šis derīgais bits pārbaudīs, vai visi četri ievades kontakti ir zemi (0), ja zems bits arī padarīs sevi zemu, paziņojot, ka izeja nav derīga, tādējādi mēs varam pārvarēt pirmo iepriekš minēto trūkumu.
4: 2 prioritārā kodētāja patiesības tabula:
Nākamo trūkumu var novērst, piešķirot prioritāti MSB bitiem, kodētājs pārbaudīs no MSB un, kad atradīs pirmo tik augsto bitu (1), tas attiecīgi ģenerēs izvadi. Tāpēc nav svarīgi, vai pārējās tapas ir augstas vai zemas. Tādējādi zemāk esošajā patiesības tabulā, kad ir sasniegts skaitlis 1, “X” uzrāda vienalga vērtības.
Būla izteiksme:
Tagad mums ir jāiegūst trīs izteiksme, kas paredzēta O0, O1 un V. Tā kā patiesības tabulā nav vienalga, mums ir jāizmanto K-kartes metode, lai šim nolūkam iegūtu Būla izteiksmi. Mēs nepārskatīsim, kā risināt ar K kartēm, jo tas nav šī raksta darbības jomā. Bet karte ir parādīta zemāk, lai jūs varētu iejaukties un mācīties pats.
Iepriekš minētajās kartēs kreisais ir paredzēts O1, bet labais - O0. Izejas līnijas min y, bet ievades līnijas - x. Tātad, attiecīgi sakārtojot vienādojumu, mēs iegūsim sekojošo.
O 1 = I 3 + I 2 O 0 = I 2 I 1 '+ I 3
Līdzīgi derīgajam bitam “V” Būla izteiksmi var norādīt kā
V = I 3 + I 2 + I 1 + I 0
Ķēdes shēma:
Šī projekta shēmu var izveidot, izmantojot Būla izteiksmes.
Kontūru var izveidot, izmantojot pamata NOT, AND un OR vārti. Šeit biti O0 un O1 tiek uzskatīti par izvadiem, bet bitu V izmanto izejas apstiprināšanai. Tikai tad, ja bits V ir augsts, izeja tiks ņemta vērā, ja V vērtība ir zema (0), izeja ir jāignorē, jo tas nozīmē, ka visi ieejas kontakti ir nulle.