Behoort bij open leertaak OT 8.4.2 © friesland college 2000 Parallel naar serieel omzetting.

Post on 24-May-2015

213 views 0 download

Transcript of Behoort bij open leertaak OT 8.4.2 © friesland college 2000 Parallel naar serieel omzetting.

behoort bij open leertaak OT 8.4.2

© friesland college 2000

Parallel naar serieel omzetting

Parallel naar serieel omzetting

Parallel naar serieel omzettingParallel naar serieel omzetting

Voer eerst het programma serieel naar parallel uit.

In dit programma gaan we zien hoe parallelle informatie omgezet kan worden tot een serieel signaal.

Dit gebeurt b.v. in de PC waar een parallelle waarde verzonden wordt via de seriële poort en eventueel via een MODEM naar een andere PC, het Internet, of iets dergelijks

Parallel naar serieel omzettingParallel naar serieel omzetting

Om een parallelle informatie om te zetten gebruiken we weer een schuifregister. Voor het gemak zijn hier 4 flipflops gebruikt. Het kunnen er ook 8 of meer zijn.We herkennen het schuifregister: J en K zijn aangesloten op Q en /Q

J

K

J

K

J

K

J

K

klok ingang

Parallel naar serieel omzettingParallel naar serieel omzetting

De flipflops hebben nu direct werkende SET en RESET ingangen

J

K

J

K

J

K

J

K

klok ingang

Parallelle ingang

SET INGANGEN

RESET INGANGEN

/S /S /S /S

/R /R /R /R

Parallel naar serieel omzettingParallel naar serieel omzetting

De /SET en /RESET ingangen worden actief bij een logische 0

J

K

J

K

J

K

J

K

klok ingang

/S /S /S /S

/R /R /R /R

Parallel naar serieel omzettingParallel naar serieel omzetting

Een 0 op een /SET ingang SET de flipflop direct. Dit is onafhankelijk van de toestand van de klokingang.We noemen dit een a-synchrone ingang

J

K

J

K

J

K

J

K

klok ingang

/S /S /S /S

/R /R /R /R

FF wordt geset

Parallel naar serieel omzettingParallel naar serieel omzetting

Een 0 op een /RESET ingang RESET de flipflop direct. Dit is ook onafhankelijk van de toestand van de klokingang.Ook dit is een a-synchrone ingang

J

K

J

K

J

K

J

K

klok ingang

/S /S /S /S

/R /R /R /R

FF wordt gereset

Parallel naar serieel omzettingParallel naar serieel omzetting

We voorzien de schakeling van een centrale reset. Hier voorgesteld als een drukknop, maar in werkelijkheid een digitaal signaal

J

K

J

K

J

K

J

K

klok ingangreset

Parallel naar serieel omzettingParallel naar serieel omzetting

Sluiten we de drukknop, dan worden alle registers gereset.

J

K

J

K

J

K

J

K

klok ingangreset

Parallel naar serieel omzettingParallel naar serieel omzetting

Openen we de reset schakelaar, dan blijven de flipflops gereset.

J

K

J

K

J

K

J

K

klok ingangreset

Parallel naar serieel omzettingParallel naar serieel omzetting

De J en K ingang van de eerste flipflop spelen geen belangrijke rol. We maken J=0 en K=1

J

K

J

K

J

K

J

K

klok ingangreset

Vcc

Parallel naar serieel omzettingParallel naar serieel omzetting

Om het register parallel te laden sluiten we de bovenstaande schakeling aan.

J

K

J

K

J

K

J

K

klok ingang

D

&

C

&

B

&

A

&

load puls

Parallelle ingang

reset

Vcc

Parallel naar serieel omzettingParallel naar serieel omzetting

Bovendien moeten we ervoor zorgen dat tijdens een loadpuls het kloksignaal wordt tegengehouden. Hiervoor zorgt de INVERTER en de EN poort.

J

K

J

K

J

K

J

K

klok ingang

D

&

&

C

&

B

&

A

&

load puls

Parallelle ingang

&

reset

Vcc

Parallel naar serieel omzettingParallel naar serieel omzetting

Het schema is bijna klaar. De Q uitgang van de rechter flipflop (LS-bit) vormt de seriële uitgang.

J

K

J

K

J

K

J

K

klok ingang

D

&

&

C

&

B

&

A

&

load puls

Parallelle ingang

&

seriële uitgang

reset

Vcc

We gaan nu stap voor stap zien hoe de schakeling werkt aan de hand van een timingdiagram.

J

K

J

K

J

K

J

K

klok ingang

D

&

&

C

&

B

&

A

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

Vcc

De parallelle waarde die serieel verzonden moet worden is 1010B. D is de MSB en A de LSB.

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

Vcc

De gele balk in het timingdiagram geeft steeds het moment aan waarover de uitleg gaat.

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

Vcc

Er wordt een resetpuls gegeven. Alle flipflops worden gereset

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

Vcc

De resetpuls is voorbij.

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

Vcc

Nu wordt er een parallel-load puls gegeven. De setingangen van 2 flipflops worden laag (en dus actief)

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

Vcc

De parallelle waarde wordt overgenomen door de flipflops. We noemen dit “parallel load”

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(1) (1)(0) (0)

Vcc

De load puls is voorbij. De geheugens blijven geset. Op de seriële uitgang staat een 0, deze komt van ingang A. Let goed op de ingangen J en K van elke flipflop voordat de eerste klokpuls komt.

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(1) (1)(0) (0)

Vcc

A

De eerste klokpuls wordt gegeven. De informatie schuift op de opgaande flank van de klok naar rechts. Op de seriële uitgang komt de waarde van ingang B te staan (1).

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(1) (1)(0)(0)

Vcc

BA

Als de klokpuls voorbij is, verandert de seriële uitgang niet

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(1) (1)(0)(0)

Vcc

BA

De tweede klokpuls wordt gegeven. De informatie schuift op de opgaande flank van de klok weer naar rechts. Op de seriële uitgang verschijnt de oorspronkelijke waarde van ingang C (0).

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(1)(0)(0)

Vcc

BA

(0)

C

Als de klokpuls voorbij is, verandert de seriële uitgang niet

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(1)(0)(0)

Vcc

BA

(0)

C

De derde klokpuls wordt gegeven. De informatie schuift op de opgaande flank van de klok weer naar rechts. Op de seriële uitgang verschijnt de oorspronkelijke waarde van ingang D (1).

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(1)(0)(0)

Vcc

BA

(0)

C D

Als de klokpuls voorbij is, verandert de seriële uitgang niet

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(1)(0)(0)

Vcc

BA

(0)

C D

Na de vierde klokpuls is het schuifregister volledig leeg geschoven en is ook de seriële uitgang laag.

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(0)(0)

Vcc

BA

(0)

C D

(0)

Het signaal op de seriële uitgang geeft de waarde 1010 weer. Let op: de LSB wordt altijd eerst verzonden!

J

K

J

K

J

K

J

K

klok ingang

D=1

&

&

C=0

&

B=1

&

A=0

&

load puls

Parallelle ingang

&

seriële uitgang

load puls

seriële uitgang

klok ingang

reset

reset

?

(0)(0)

Vcc

BA

(0)

C D

(0)

Dit is het laatste scherm van dit instructieprogramma

stoppen

tijddiagramnogmaals