92. Interrupt On Change. Sensibilidad del Puerto B para las interrupciones ****PIC16f887****
Introducción al teclado matricial
Resumen de la sección: En esta sección, el presentador introduce el teclado matricial como un periférico útil y explica cómo funciona.
Teclado Matricial
- El teclado matricial es una herramienta excelente para utilizar.
- Es importante analizar el registro se ve antes de continuar con el ejercicio porque su valor por defecto después de cada receta es cero.
- El puerto B debe ser sensible por completo a cualquier cambio para que provoque una interrupción.
- La interrupción cambia un tanto del concepto con respecto a la interrupción del revés.
- El registro y el CB es importante habilitar de forma individual a cada pin del puerto B para hacer una fuente de interrupción por cambio de ésta después de configurar el registro yo se ve automáticamente se salva el valor lógico que le está entrando lo esté a cada uno de los pines configurados y que cualquier cambio que haya en alguno de ellos obligará a que se levante la bandera y RBF este y si le diste permiso de que fuera fuente interrupción que te va a interrumpir.
Interruptor Change
Resumen de la sección: En esta sección, el presentador explica qué es Interruptor Change y cómo funciona.
Interruptor Change
- Interruptor Change trata sobre hacer que el puerto B sea sensible por completo a cualquier cambio.
- Cuando cambie cualquier valor que tenga puesto el puerto en sus terminales en ese momento, provocará una interrupción.
- Cambia un tanto del concepto con respecto a la interrupción del revés porque ahí sólo era sensible a blancos de su vida oa flancos de bajada y acá no del valor que tengas puesto con que cambie un beat es suficiente para que te provoque una interrupción.
- Este periférico tiene una mejora con respecto a otros picks de la misma gama en donde esté te permite seleccionar qué pines del puerto quieres que sean sensibles.
Configuración del registro
Resumen de la sección: En esta sección, el presentador explica cómo configurar el registro para hacer fuente de interrupción por cambio de estado en las terminales del puerto B.
Configuración del Registro
- Es importante analizar el registro se ve antes de continuar con el ejercicio porque su valor por defecto después de cada receta es cero.
- El registro y el CB es importante habilitar de forma individual a cada pin del puerto B para hacer una fuente de interrupción por cambio.
- Después de configurar el registro, se ve automáticamente salva el valor lógico que le está entrando lo esté a cada uno de los pines configurados y cualquier cambio que haya en alguno obligará a que se levante la bandera y RBF este.
- Para bajar la bandera previamente debes leer al puesto B si no se lee al puerto B no se baja la bandera.
Permisos para interrupciones
Resumen de la sección: En esta sección, el presentador explica los permisos necesarios para generar interrupciones.
Permisos para Interrupciones
- Los permisos necesarios para ser fuente interrupción son dos: R&B (registro 5,3) y global.
- No se requiere permiso intermedio.
- Para bajar la bandera de interrupción, es necesario leer al puerto B. Si no se lee al puerto B, no se baja la bandera y entonces tú le dices bs.f éste 5,0 y te sales de la interrupción.
Ejercicio sobre el periférico
Resumen de la sección: En esta sección, el presentador muestra un ejercicio rápido sobre el periférico.
Ejercicio sobre el Periférico
- El programa escrito debe tener un switch en el puerto B.
- Es importante analizar el registro se ve antes de continuar con el ejercicio porque su valor por defecto después de cada receta es cero.
- Recuerda cómo se conecta a un bip-bip aquí está el puerto B tiene studio switch en este caso va a.
Conexión de interruptores y resistencias
Resumen de la sección: En esta sección, se explica cómo funciona la conexión de interruptores y resistencias en una tarjeta. Se muestra cómo los interruptores controlan el flujo de información a través de las resistencias.
Conexión de interruptores y resistencias
- Los interruptores controlan el flujo de información a través de las resistencias.
- Cada vez que cambia un valor en los interruptores, se debe interrumpir y mostrar el número de bits que cambió en la pantalla LCD.
- Si se mueve el interruptor "enable", comenzará a capturar información no relacionada con él.
- El puerto CE está conectado por separado para evitar este problema.
Conteo del temporizador
Resumen de la sección: En esta sección, se explica cómo contar ciclos utilizando un temporizador. También se muestra cómo cambiar las cadenas para mostrar el contador en la pantalla LCD.
Conteo del temporizador
- El temporizador cuenta dos millones de ciclos creados por el timer 0 1 y las cadenas LFP.
- Las cadenas LFP son reemplazadas por "contador" y aquí escribimos el valor del contador que aumenta cada dos segundos.
- Cuando algo cambia, investigamos cuál fue el pin que cambió e imprimimos ese valor en la pantalla LCD.
Cambio del puerto VE al puerto SE
Resumen de la sección: En esta sección, se explica cómo cambiar el puerto VE al puerto SE y cómo esto afecta la impresión de caracteres en la pantalla LCD.
Cambio del puerto VE al puerto SE
- El archivo "imprime 32 caracteres" no habla de qué puerto simplemente manda a las funciones y los valores que queremos.
- El puerto de salida será el puerto SE que controlará cada display de siete segmentos su común.
- El archivo "funciones LCD" es donde vienen estas funciones y aquí cambiamos el nombre para seguir trabajando con él en la LR.
Configuración de puertos
Resumen de la sección: En esta sección, el presentador habla sobre cómo configurar los puertos y cómo escribir un programa para que reconozca las palabras clave.
Sustitución de palabras clave
- Se sustituyen las palabras clave por números para hacer más rápido el proceso.
- El puerto se configura como 07.
Guardar estado anterior del puerto
- Es necesario guardar el estado anterior del puerto para saber cuál bit cambió.
- Se guarda el estado anterior en un registro llamado "vf".
Bajar bandera y dar permiso de interrupción
- Se baja la bandera "rv efe" y se da permiso de interrupción "r&b".
- Para bajar la bandera es necesario leer al puerto.
Configuración del sistema
Resumen de la sección: En esta sección, se configura el sistema para que muestre un valor por defecto de cero y luego se reinicie. Se utiliza un cómetelo para convertir minutos y se establece en el banco 1.
Configuración del valor por defecto
- Se busca el río y se establece un valor por defecto de cero.
- Se utiliza un cómetelo para convertir minutos.
- El valor se establece en el banco 1.
Resolución del problema principal
Resumen de la sección: En esta sección, se resuelve el problema principal que impide que los contadores cambien de 0 a 99.
Eliminación del SLR Report
- Ya no es necesario utilizar SLR Report porque las interrupciones solo imprimen en la LCD y toman unos milisegundos.
Rutina de servicio de interrupción
- La recarga de datos ya está configurada correctamente.
- El contador incrementa cada dos segundos y ese es el que vamos a imprimir.
- Convertimos a decimal y lo mandamos a imprimir esa cadena.
Desaparición de una parte innecesaria
Resumen de la sección: En esta parte, eliminamos una parte innecesaria del código.
Eliminación de la interrupción
- Ya no necesitamos bajar la interrupción por timer porque es independiente del sistema.
- El valor del timer sigue siendo 125.
Resolución adicional al problema principal
Resumen de la sección: En esta parte, resolvemos un problema adicional al problema principal.
Preguntar si hubo interrupción por timer
- Si hay una interrupción por timer, se resuelve el problema.
- Si no hay una interrupción por timer, se resuelve el problema del revés.
Cambio de valor de un interruptor
Resumen de la sección: En esta parte, se cambia el valor de un interruptor y se elimina sus rebotes.
Eliminación de los rebotes
- Ya no es necesario preguntar si acertó y estar incrementando aleatorio.
- Hay que investigar cuál cambio para saber qué valor tiene.
Investigación del cambio en los bits
Resumen de la sección: En esta parte, investigamos cuál fue el bit que cambió.
Uso de la función lógica XOR
- Se utiliza la función lógica XOR para saber cuál fue el bit que cambió.
- Se pregunta por cada uno para saber cuál generó el cambio.
Preguntando por bits
Resumen de la sección: En esta sección, el orador explica cómo preguntar por bits específicos y resolver problemas relacionados con ellos.
Preguntando por bits
- Si se pregunta por el bit 0 y está en 1, entonces saltará a una resolución y luego preguntará por otro bit.
- Si se pregunta por un bit que está en 0, saltará a otra pregunta para verificar si otro bit también está en 0. Si no lo está, cargará un valor doble con cero.
- Si el bit que se pregunta está en 1, cargará w con cero y repetirá el proceso para otros bits.
- Una vez que haya terminado de preguntar sobre todos los bits, w contendrá el número del bit que cambió.
Pasando valores a decimal
- El orador explica cómo pasar los valores binarios obtenidos anteriormente a decimal.
- Para hacer esto, simplemente sume de 30 a dLw.
Imprimiendo resultados
- El orador explica cómo imprimir solo la última parte del resultado obtenido anteriormente.
- Se llama una función "carácter" para imprimir el resultado final en la dirección deseada.
Bajar la bandera
Resumen de la sección: En esta sección, el presentador muestra un pedazo de código donde baja la bandera y lo copia para usarlo más adelante. También modifica el valor del estado actual del puerto.
Modificación del valor del puerto
- El presentador explica que ya no es intensa y que deben bajarla.
- Se rescata el valor del estado actual del puerto y se modifica.
- Ahora todo está por el puerto, por lo que no es necesario modificarlo.
Ensamblar el código
- El presentador revisa rápidamente si hay errores de sintaxis en el código.
- Lleva a cabo una prueba en la tarjeta para asegurarse de que todo esté funcionando correctamente.
Corrección de errores en el código
Resumen de la sección: En esta sección, el presentador detecta un error en el código relacionado con la lcd y explica cómo corregirlo.
Error en la lcd
- El presentador detecta un problema con la lcd cuando utiliza las funciones correspondientes.
- Explica que hay definiciones de rs y w que deben modificarse.
- Es importante dejar listo el número de puerto para reutilizarse cómodamente.
Solución al problema
- Se escribe "puerto" para cambiar al número de puerto deseado.
- El presentador ensambla el código y lo prueba en la tarjeta.
- Se detecta un error al modificar el bit 0 del puerto, por lo que se debe corregir.
- Se propone poner un caso prohibido para solucionar el problema.
Solución de errores en tarjeta
Resumen de la sección: En esta sección, el presentador explica cómo solucionar errores en una tarjeta. Los errores pueden deberse a que los deep sweet que tiene la tarjeta son de tres estados y el tiempo que le toma pasar de 0 a 1 o viceversa es mucho más largo que en cualquier beat suite.
Cambio del estado prohibido
- Los errores pueden deberse a que los deep sweet que tiene la tarjeta son de tres estados y el tiempo que le toma pasar de 0 a 1 o viceversa es mucho más largo que en cualquier beat suite.
- Para solucionar este problema, se cambia el estado prohibido por completo.
- Se guarda el resultado generado directamente en un registro nuevo.
- Si no encuentra ninguno de los valores permitidos, carga un número prohibido.
Comparación con registros anteriores
- El valor encontrado se guarda y se compara con registros anteriores.
- Si no encuentra ningún número prohibido, carga uno válido.
- Si fue 8, entonces brinca al puesto anterior para comparar nuevamente.
Conversión del valor obtenido
- El número obtenido se lee y se convierte a carácter.
Conclusión
Esta solución permite evitar errores y obtener resultados precisos.
Ensamblaje y análisis del circuito
Resumen de la sección: En esta sección, el presentador ensambla el circuito y analiza que no haya errores. Luego cambia los bits en diferentes posiciones para verificar que todo esté funcionando adecuadamente.
Análisis del circuito
- El presentador ensambla el circuito y verifica que no haya errores.
- Cambia el bit 7 y luego el bit 1 para verificar si hay cambios de estado. Se escucha un doble clic cuando pasa por el estado del medio.
- Cambia los bits 4, 6 y 3 para verificar que ya no saque símbolos raros. Si encuentra algún cambio, podría quedar bloqueado.
- Cambia nuevamente los bits 5 y 0 para asegurarse de que todo esté funcionando adecuadamente.
Conclusión
El ejercicio está completo y todo está funcionando adecuadamente.
Agradecimiento final
Resumen de la sección: El presentador agradece al espectador por ver el video.
- El presentador agradece al espectador por ver el video.
Convierte cualquier video en un resumen como este
Videos de YouTube, reuniones, clases. Con transcripción, búsqueda y chat.