Diagrama y función del pin 74HC148

Introduccion

  El codificador de prioridad 74148 es un chip integrado de 16 pines, que es una serie de codificadores de prioridad de ocho hilos a tres hilos. Excepto por los pines de la fuente de alimentación VCC (16) y GND (8), las funciones y los números de pin de los otros pines de entrada y salida son como se muestran en la figura. En el que I 0- I 7 es la señal de entrada, A2, A1, A0 es una señal de salida codificada binaria de tres bits, EI es la entrada de habilitación, EO es la salida habilitada y GS es la salida codificada del primer chip.
  En el circuito codificador de prioridad, se permite la entrada simultánea de más de dos señales codificadas. Sin embargo, al diseñar el codificador de prioridad, todas las señales de entrada de e69da5e887aa7a6431333361303130 se han alineado en orden de prioridad. Cuando hay dos o más señales de entrada al mismo tiempo, el codificador de prioridad solo codifica las señales de entrada con alta prioridad, y las señales con baja prioridad no tienen efecto. 74148 es un codificador de prioridad de ocho hilos a tres hilos.
  El codificador de prioridad 74148 es un chip integrado de 16 pines. Además de los pines de alimentación VCC (16) y GND (8), las funciones y los números de pines de los pines de entrada y salida restantes se muestran en la figura. Entre ellos, I 0- I 7 son señales de entrada, A2, A1, A0 son señales de salida codificadas binarias de tres bits, EI es el terminal de entrada de habilitación, EO es el terminal de salida de habilitación y GS es el primer terminal de salida codificado con chip.
La salida de la ecuación lógica de la tabla de verdad 74148 es:

A2 =(I4+I5+I6+I7)EI
A1 = (I2I4I5+I3I4I5+I6+7)· EI
A0 = (I1I2I4I6+I3I4I6+I5I6+I7)· EI

Cuando se habilita la entrada EI = 1, todos los grupos de salida se bloquean en un nivel alto.
Cuando se habilita la entrada EI = 0, se permite la codificación. Entre la entrada I0 ~ I7, la entrada I7 tiene la prioridad más alta, y el resto está en orden: I6, I5, I4, I3, I2, I1, rango I0.
La ecuación lógica para habilitar EO en la salida es:

EO =I0· I1· I2· I3· I4· I5· 67· EI,

  Esta expresión lógica indica que cuando todos los terminales de entrada codificados son de alto nivel (es decir, no hay entrada codificada), y EI = 0, EO es cero;
  lo que indica que la señal de salida de bajo nivel de EO significa "el circuito funciona, pero no hay código Entrada
  La ecuación lógica del código de salida de la salida de codificación de prioridad de corte extendida GS es: GS = (I0 + I1 + I2 + I3 + I4 + I5 + I6 + I7) · EI, que indica que siempre que cualquier sección de entrada de codificación tenga una señal de bajo nivel Entrada, y EI = 0, GS es un nivel bajo.
La señal de salida de nivel bajo de GS significa "el circuito está funcionando y hay una entrada de código. "(GS = 0)
En" Digital Electronic Technology Foundation ", EI significa S, EO significa Ys, y GS significa YEX (EX es subíndice).
En el software de simulación multisim, hay 74HC148DW y 74HC148N. Simulación de impacto.Inserte la descripción de la imagen aquí

Mapa físico de chip

Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí

Tabla de verdad 74HC148 (codificador limitado)

Inserte la descripción de la imagen aquí

¿Qué es un codificador de prioridad?

  Un codificador de prioridad es un circuito o algoritmo que comprime múltiples entradas binarias en un número menor de salidas. Su salida es una representación binaria del número ordinal 0 al bit más significativo de la entrada. Los codificadores de prioridad se utilizan a menudo para controlar las solicitudes de interrupción cuando se procesan las solicitudes de mayor prioridad.

   Si dos o más entradas actúan en el codificador de prioridad al mismo tiempo, la entrada con la prioridad más alta se emitirá con prioridad. La siguiente figura es un ejemplo de un codificador de 4 hilos-2 hilos, donde la entrada de mayor prioridad está en el lado izquierdo de la tabla de funciones, y "x" representa un elemento irrelevante, ya sea 1 o 0, es decir, independientemente de Cualquiera que sea el valor, no afecta la salida. Solo cuando la entrada de mayor prioridad cambia, la salida cambiará.

El programa de computadora de un solo chip que implementa la función de codificador de prioridad 74HC148

//在arudino 中调试通过
//将A0,A1,A2,接入IO 4,7,8
//如数据不稳定可以将digitalRead改为digitalReadt程序消抖进行对比。
void setup() {
// put your setup code here, to run once:
Serial.begin(9600); 
#define HC148A0 8
pinMode (4, INPUT);
pinMode (7, INPUT);
pinMode (8, INPUT);
}
void loop() {

int a = 0;
Serial.print(" A2 ");
Serial.print("A1");
Serial.print(" A0 ");
int n8 = digitalRead(8);
delay(2);
int n7 = digitalRead(7);
delay(2);
int n4 = digitalRead(4);
bitWrite(a, 0, n4);
bitWrite(a, 1, n7);
bitWrite(a, 2, n8);
Serial.print(n8, BIN); Serial.print(" "); Serial.print(n7, BIN); Serial.print(" "); Serial.print(n4, BIN);Serial.print(" = "); Serial.println(a);

delay(100);
}
bool digitalReadt(int testpin) {
bool digval = digitalRead(testpin); //消抖
delay(5);
while (digval != digitalRead(testpin)) {
delay(5);
digval = digitalRead(testpin);
delay(5);
}
return digval;
}

Inserte la descripción de la imagen aquí

153 artículos originales publicados · Me gusta 248 · Visitas 330,000+

Supongo que te gusta

Origin blog.csdn.net/qq_45172832/article/details/105405882
Recomendado
Clasificación