1.3.6 Tellere

Ved hjelp av JK-vipper kan vi bygge binære tellere. I noen tellere brukes det datavipper og i andre også logiske porter i tillegg. Antall vipper bestemmer hvor mange bit den er på, og hvor langt den kan telle. Har vi en teller med fire JK-vipper, kan den telle til 24 som er lik 16, det vil si fra 0 til 15. På den 16. klokkepulsen vil den være tilbake på 0. Med åtte vipper vil vi kunne telle til 28, som er lik 256, etc. Generelt kan vi si at en teller kan telle til 2x, der x er antall vipper. I noen tellere kan vippene være organisert annerledes, slik at telleren får en annen tellesyklus.

Vi skiller gjerne mellom binære tellere og dekadetellere. Binære tellere teller rent binært, mens en dekadeteller teller binært fra 0 til 9 og vil være tilbake på null etter den tiende klokkepulsen. Noen tellere kan telle både opp og ned. Det finnes også andre typer tellere som har helt andre tellesykluser, som eksempelvis ringtellere. Tellere finner vi også internt i mikroprosessorer og mikrokontrollere.

Digitale tellere er aktuelle i flere sammenhenger, eksempelvis

  • til telling av digitale pulser

  • til tidsmåling

  • som programteller i mikroprosessorer og mikrokontrollere

  • som frekvensdelere

Det er vanlig å bygge tellere ved hjelp av JK-vipper. I noen tilfeller brukes det datavipper.

Oppbygging av tellere

Når vi skal konstruere tellere, benytter vi JK-vipper koblet som T-vipper.

En T-vippe har den egenskapen at utgangen skifter nivå for hver ny klokkepuls som tilføres klokkeinngangen CK. Det er denne funksjonen vi gjør oss bruk av i en teller.

En enkel T-vippe er i utgangspunket en en-bits teller.

4-bits teller med T-koblede JK-vipper

Her har vi benyttet JK-vipper som trigger på klokkepulsens bakflanke.

  • Ved hjelp av fire JK-vipper kan vi bygge en 4-bits binærteller.

  • JK-vippene må kobles som T-vipper

  • Q-utgangen på foregående vippe kobles til klokkeinngangen på neste vippe, osv.

Sekvensdiagram for 4-bits binærteller

4-bits teller som frekvensdeler

Studerer vi sekvensdiagrammet, ser vi at frekvensen for pulsene på utgangen av Q0 er halvparten av frekvensen for klokkepulsene. Pulsene på utgangen av Q1 er halvparten av Q0, Q2 halvparten av Q1, og Q3 halvparten av frekvensen for Q2. Dette gjør at telleren kan brukes som frekvensdeler. For denne telleren får vi altså frekvenser som er 1/2, 1/4, 1/8 og 1/16 av klokkepulsfrekvensen.

Tellere finnes i forskjellige utførelser og virkemåter som kan benyttes til ulike formål. Alle tellere er basert på bruk av vipper. Generelt kan vi dele tellere i to grupper:

  • Asynkrone tellere: Kjennetegnes ved at klokkepulsen tilføres kun den første vippen i telleren.

  • Synkrone tellere: Kjennetegnes ved at klokkepulsen tilføres alle vippene i telleren parallelt.

Tellerne vi har omtalt, teller etter en ren binær tellesyklus, men det finnes tellere som fungerer med helt andre sykluser.

En type er dekadetellere som teller binært fra 0 til 9 og er tilbake på 0 etter 10. klokkepuls (BCD-teller, Binary-Coded Decimal). En annen variant er ringtellere, der utgangene løper som i en ring. Vi vil i denne sammenheng ikke gå inn på detaljer for alle typer tellere.

Tellere kan kobles i serie. To 4-bits tellere kan eksempelvis kobles sammen og vi får da en 8-bits teller som kan telle til 28 = 256,

Ved å kombinere tellere og logiske porter kan vi lage tellesekvenser etter eget ønske.

Ned-tellere er tellere som teller ned fra topp til bunn.

Reversible tellere eller opp/ned-tellere (bidirectional counters) er tellere der vi med et eget styresignal kan bestemme om telleren skal telle opp eller ned.

Kobling for styring av stepmotor ved hjelp av ringteller:

Datablad tellere

Asynkron binærteller

Dette er et felles datablad for de asynkrone TTL-tellerne 74LS90, 74LS92 og 74LS93. Databladet inneholder all nødvendig fysisk og elektrisk informasjon. Tellerne kan kobles på ulike måter, avhengig av hvordan de skal benyttes. Legg spesielt merke til 74LS93, som egentlig er sammensatt av en 1-bits og en 3-bits teller.

Klikk på linken:http://datasheet.digchip.com/311/311-4-000469-74LS93.pdf

Synkron binærteller

Dette er datablad for den synkrone TTL-telleren 74ALS867. Databladet inneholder all nødvendig fysisk og elektrisk informasjon. Dette er en bidireksjonal teller (up/down), der du kan velge telleretning med et eget styresignal.

Klikk på linken: http://www.ti.com/lit/ds/symlink/sn54as867.pdf

Oppgaver tellere

  1. Et transportbånd transporterer pakker. Fotosensorer detekterer pakkene som passerer. Pakkene skal pakkes ned i kasser med 8 stk i hver. Det skal derfor lages en teller som teller pakker i kvanta på 8. Telleren skal startes med en startknapp og stoppe automatisk når 8 pakker har passert.
    Bruk eksempelvis kretsen 74LS93 eller en tilsvarende CMOS. Sannsynligvis må du også benytte portkretser i tillegg. Har du tilgang til Multisim, kan du tegne og simulere kretsen der.
    Utarbeid en løsning som ved hjelp av digitale komponenter utfører denne funksjonen.

  2. Det skal også kunne pakkes kasser med 12 pakker i hver. Utarbeid en tilsvarende løsning for 12 pakker, og der du ved hjelp av et styresignal kan velge mellom 8 og 12 pakker.

  3. Det skal lages et system for kontroll av antall biler som kjører inn og ut i et parkeringshus. Parkeringshuset har plass til 12 biler. Når huset er fullt, skal et rødt lys tennes. Når det er ledige plasser, skal et grønt lys være tent. Én sensor registrerer biler som kjører inn, og en annen sensor biler som kjører ut. Sensorene gir digitale inngangssignaler til tellesystemet. Et syvsegmentdisplay skal til enhver tid vise hvor mange biler som er inne i parkeringshuset.
    Finn datablad for en egnet opp/ned-teller og utarbeid en løsning. Bruk Multisim hvis du har tilgang, eller utarbeid en løsning for kobling på trainer.

  4. Parkeringshuset skal utvides, og det skal bli plass til 60 biler. Utarbeid en tilsvarende løsning for 60 biler.