LATCH
LATCH
v=jHbiMWhGPzw
R-S https://www.youtube.com/watch?v=ShQwsahdLOc
J-K https://www.youtube.com/watch?v=M9toqPQghaA
https://www.youtube.com/watch?v=moU_o6CzD5c
Qt J
0 0
0 0
0 1
0 1
1 0
1 0
1 1
1 1
Q=Q'J+K'Q
Implementar en arduino la un F-F JK
n arduino la un F-F JK
adores síncronos.
https://www.aprendiendoarduino.com/tag/wemos-d1-mini/
Estado Inicial Variable externa Estado final
A B X A B JA KA
0 0 0 0 0 0 X
0 0 1 0 1 0 X
0 1 0 1 0 0 X
0 1 1 0 1 1 X
1 0 0 1 0 X 0
1 0 1 1 1 X 0
1 1 0 1 1 X 0
1 1 1 0 0 X 1
JB KB
0 X
1 X
X 0
X 1
0 X
1 X
X 0
X 1
A = (A&!k0)|(j0&!A); // ff1 jk estas líneas no se cambia nada, simulan el FF1 con sus entrads j0 y k0 y su s
B = (B&!k1)|(j1&!B); //ff0 jk esta líneas no se cambian nada, simulan el FF2 con sus entrads j1 y k1 y su
boolean A=0;
boolean KA= 0;
boolean JA = 0;
boolean B=0;
boolean KB= 0;
boolean JB= 0;
void setup() {
// put your setup code here, to run once:
pinMode(D2, INPUT_PULLUP); SIN PRESIONAR EL PULSANTE X=1
Serial.begin(115200); PRESIONADO EL PULSANTE X=0
}
void loop() {
// put your main code here, to run repeatedly:
A = (A&!KA)|(JA&!A); // ff1 jk estas líneas no se cambia nada, simulan el FF1 con sus entrads JA y KA y su
B = (B&!KB)|(JB&!B); //ff0 jk esta líneas no se cambian nada, simulan el FF2 con sus entrads JB y KB y su
JA = B&!X;
KA = B&X;
JB=X;
KB=!(A ^ X);
delay(1000);
Serial.print("X: ");
Serial.println(X);
Serial.print("A: ");
Serial.println(A);
Serial.print("B: ");
Serial.println(B);
}
on sus entrads j0 y k0 y su salida A Q=Q'J+K'Q
con sus entrads j1 y k1 y su salida B
Diseñar un circuito con una entrada y una salida que tenga el siguiente comp
• La salida se pone a 1 cuando por su entrada se reciben tres o más unos con
iguientes dos funciones controladas por una
el 0 al 3
CODIFICACIÓN DE ESTADOS
ESTADO A B
S0 0 0
S1 0 1
S2 1 0
S3 1 1
stado inicial Variable externa Estado final
B X ESTADOS A B JA KA
0 0 S0 0 0 0 X
0 1 S1 0 1 0 X
1 0 S0 0 0 0 X
1 1 S2 1 0 1 X
0 0 S0 0 0 X 1
0 1 S3 1 1 X 0
1 0 S0 0 0 X 1
1 1 S3 1 1 X 0
JA=BC
KA = C'
JB KB S
0
0
0
0
0
0
1
1
Estado inicial
ESTADOS
q0
q0
q1
S1
S2
S2
S3
S3
CODIFICACIÓN DE ESTADOS
ESTADO A B
q0 0 0
q1 0 1
q2 1 0
q3 1 1
Estado inicial Variable externa Estado final
A B X ESTADOS A B JA
0 0 0 q0 0 0 0
0 0 1 q1 0 1 0
0 1 0 S0 0 0 0
0 1 1 S2 1 0 1
1 0 0 S0 0 0 X
1 0 1 S2 1 0 X
1 1 0 S0 0 0 X
1 1 1 S0 0 0 X
JA= BX
KA = X' + B
KA JB KB S
X 0 X 0
X 1 X 0
X X 1 0
X X 1 0
1 0 X 0
0 0 X 1
1 X 1 X
1 X 1 X
JB = A'X S = AX
A = X' + B KB = 1
ENTRADAS C D E
Pulsado 0 0 0
NO Pulsado 1 1 1
SALIDAS S1 S2 S3
1 1 1
Utilizando el concepto de FF realice un programa que detecte la tecla pulsada, implementar un contador.
void setup() {
// put your setup code here, to run once:
pinMode(D2, INPUT_PULLUP);
Serial.begin(115200);
}
void loop() {
// put your main code here, to run repeatedly:
A = (A&!KA)|(JA&!A); // ff1 jk estas líneas no se cambia nada, simulan el FF1 con sus entrads JA y KA y su salida
JA = !X;
KA = X;
Serial.print("X: ");
Serial.println(c);
Serial.print("A: ");
Serial.println(A);
}
mplementar un contador.
void loop() {
// put your main code here, to run repeatedly:
A = (A&!KA)|(JA&!A); // ff1 jk estas líneas no se cambia nada, simulan el FF1 con sus entrads JA y
B = (B&!KB)|(JB&!B); // ff2 jk estas líneas no se cambia nada, simulan el FF1 con sus entrads JB y
boolean X= digitalRead(D2); //Variable de control de cambio de estado
JA = B&X ;
KA = !X|B ;
JB =!A&X;
KB =1 ;
}
Serial.print("A: ");
Serial.println(A);
Serial.print("B: ");
Serial.println(B);
}
ulan el FF1 con sus entrads JA y KA y su salida A
ulan el FF1 con sus entrads JB y KB y su salida B
1 2 3
C D E
ENTRADAS C D E
Pulsado 0 0 0
NO Pulsado 1 1 1
SALIDAS S1 S2 S3
1 1 1
E