Sistemas

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

¿Cuál de las siguientes NO es una manera de generar retardos (delays) con el microcontrolador Pic16?

  • Funciones de la librería `delays.h` o `htc.h`.
  • Temporizadores (Timers).
  • Bucles implementados en C.
  • Llamadas a otras funciones dentro del programa principal. (correct)

¿Qué ocurre primero cuando se genera una interrupción en el microcontrolador?

  • Se ignora la interrupción y continua el programa.
  • Se pone a '0' el bit GIE para evitar más interrupciones. (correct)
  • Se reinicia el microcontrolador para gestionar el error.
  • Se ejecutan las siguientes instrucciones en la memoria.

¿En qué formato se puede acceder a los registros de control de periféricos en el microcontrolador?

  • En formato byte al registro completo o bit a bit. (correct)
  • Únicamente en formato byte al registro completo.
  • Únicamente bit a bit.
  • Únicamente mediante funciones específicas del compilador.

¿Qué debe ocurrir para poder introducir valores en la memoria de la pantalla LCD?

<p>La pantalla LCD debe estar iniciada. (C)</p> Signup and view all the answers

Si deseas utilizar la función printf para imprimir en la pantalla LCD, ¿qué función debes definir?

<p><code>putch</code> (C)</p> Signup and view all the answers

¿Para qué sirve el fichero .h en el contexto del acceso a los registros del microcontrolador?

<p>Para incluir las definiciones de todos los registros de control de periféricos. (C)</p> Signup and view all the answers

Considerando la estructura de una función en C para microcontroladores, ¿cuál es el orden correcto de los elementos clave?

<p>Tipo de dato de retorno, nombre de la función, declaración de variables internas, código de la función, retorno de variable. (B)</p> Signup and view all the answers

¿Cuál es la función del bit GIE (Global Interrupt Enable) al generarse una interrupción?

<p>Deshabilitar todas las interrupciones del sistema temporalmente. (C)</p> Signup and view all the answers

¿Qué acción realiza el microcontrolador PIC16F877A cuando se retorna de una interrupción (RETFIE)?

<p>Transfiere la dirección del tope de la pila al contador de programa (PC) y activa el bit GIE. (B)</p> Signup and view all the answers

¿Cuál de las siguientes NO es una fuente de interrupción en el PIC16F877A?

<p>Interrupción por comparación analógica. (D)</p> Signup and view all the answers

Dentro de los registros asociados a las interrupciones en el PIC16F877A, ¿cuál de los siguientes permite habilitar o deshabilitar las interrupciones periféricas?

<p>PIE1 (C)</p> Signup and view all the answers

En el contexto de los módulos CCP del PIC16F877A, ¿cuál es la función principal del modo de captura?

<p>Medir el ancho de un pulso o el período de una señal de entrada. (C)</p> Signup and view all the answers

En el modo comparador de los módulos CCP, ¿qué evento ocurre cuando el valor del temporizador es igual al valor almacenado en el registro CCPR1?

<p>Se activa una interrupción. (C)</p> Signup and view all the answers

Al configurar el módulo A/D del PIC16F877A, ¿qué función cumple el registro ADCON0?

<p>Selecciona el canal analógico de entrada y activa la conversión. (B)</p> Signup and view all the answers

¿Cuál es la función principal del módulo USART en el PIC16F877A?

<p>Facilitar la comunicación serial asíncrona con otros dispositivos. (C)</p> Signup and view all the answers

En el contexto del módulo MSSP del PIC16F877A, ¿cuál es el propósito principal del modo I2C?

<p>Permitir la comunicación serial síncrona con múltiples dispositivos utilizando solo dos cables. (A)</p> Signup and view all the answers

¿Cuál de las siguientes opciones describe mejor la función del registro PCLATH en el microcontrolador PIC16F877A?

<p>Almacena la parte alta de la dirección de la siguiente instrucción a ejecutar cuando se realiza un salto condicional que excede la página actual. (B)</p> Signup and view all the answers

En la programación de microcontroladores PIC16F877A, ¿qué utilidad tienen las macros en ensamblador?

<p>Reemplazar secuencias de instrucciones repetitivas por un solo identificador, facilitando la legibilidad y mantenimiento del código. (A)</p> Signup and view all the answers

¿Qué diferencia fundamental existe entre la codificación absoluta y la codificación reubicable en el contexto de la programación en ensamblador para microcontroladores?

<p>La codificación absoluta asigna direcciones fijas a las instrucciones, mientras que la reubicable permite que las direcciones se ajusten durante el proceso de enlazado. (A)</p> Signup and view all the answers

Al configurar un puerto de E/S del PIC16F877A, ¿qué función cumple el registro TRIS?

<p>Define si cada pin del puerto actuará como entrada o como salida. (C)</p> Signup and view all the answers

¿Cuál es la principal ventaja de usar interrupciones en un microcontrolador PIC16F877A en comparación con la espera activa (polling)?

<p>Las interrupciones permiten que el microcontrolador realice otras tareas mientras espera un evento, mejorando la eficiencia del sistema. (D)</p> Signup and view all the answers

En el contexto de los módulos CCP (Capture/Compare/PWM) del PIC16F877A, ¿cuál es la función del modo PWM?

<p>Generar una señal con un ciclo de trabajo variable, útil para controlar la velocidad de un motor o la intensidad de un LED. (C)</p> Signup and view all the answers

Al utilizar el módulo de conversión A/D del PIC16F877A, ¿qué función cumple el tiempo de adquisición?

<p>Establece el tiempo que el convertidor necesita para cargar el condensador interno antes de realizar la conversión, asegurando una lectura precisa. (B)</p> Signup and view all the answers

¿Qué propósito tiene la palabra de configuración en el microcontrolador PIC16F877A?

<p>Define las opciones de configuración del microcontrolador, como el tipo de oscilador, la protección de código y el Watchdog Timer. (B)</p> Signup and view all the answers

En el contexto de la comunicación serie con el módulo USART del PIC16F877A, ¿qué función tiene el generador de baudios?

<p>Determina la velocidad de transmisión de datos en baudios, asegurando una comunicación sincronizada entre dispositivos. (C)</p> Signup and view all the answers

En la programación de un microcontrolador, ¿qué es una subrutina y cuál es su principal beneficio?

<p>Es un bloque de código reutilizable que realiza una tarea específica. Reduce la redundancia y mejora la organización del código. (A)</p> Signup and view all the answers

Al programar con el PIC16F877A, ¿cómo se gestiona el uso de la pila (stack)?

<p>La pila se utiliza para almacenar direcciones de retorno de las subrutinas y variables temporales, gestionada automáticamente por el hardware al llamar y retornar de las funciones. (C)</p> Signup and view all the answers

Al programar en C para el PIC16F877A, ¿cuál es la función del archivo de encabezado (header file) propio del microcontrolador (por ejemplo, pic16f877a.h)?

<p>Define los nombres y las direcciones de los registros especiales del microcontrolador, facilitando el acceso a ellos mediante nombres simbólicos en lugar de direcciones de memoria directas. (B)</p> Signup and view all the answers

Cuando se trabaja con interrupciones en el PIC16F877A, ¿qué función cumple el registro INTCON?

<p>Controla y habilita las interrupciones globales y periféricas, además de indicar las banderas de solicitud de interrupción. (A)</p> Signup and view all the answers

Dentro de la programación de microcontroladores, ¿cuál es la diferencia entre un ciclo de máquina y un ciclo de instrucción?

<p>Un ciclo de máquina es la unidad básica de tiempo del procesador, mientras que un ciclo de instrucción es el tiempo necesario para completar una instrucción, que puede requerir varios ciclos de máquina. (B)</p> Signup and view all the answers

¿Cuál es el propósito principal del módulo MSSP (Master Synchronous Serial Port) en el PIC16F877A?

<p>Gestionar la comunicación serie síncrona, permitiendo la implementación de protocolos como I2C y SPI para la comunicación con otros dispositivos. (B)</p> Signup and view all the answers

¿Cuál de las siguientes acciones ocurre inmediatamente después de que el microcontrolador PIC16F877A retorna de una interrupción mediante la instrucción RETFIE?

<p>Se activa el bit GIE, habilitando las interrupciones globales. (D)</p> Signup and view all the answers

Además de la interrupción externa por el pin INT (RB0), ¿cuál de las siguientes opciones representa otra fuente de interrupción directamente relacionada con los pines del puerto B en el PIC16F877A?

<p>Interrupción por cambio en el nivel lógico de las entradas RB4:RB7. (B)</p> Signup and view all the answers

¿Cuál es la función primordial de los registros PIR1 y PIR2 en el contexto del manejo de interrupciones en el PIC16F877A?

<p>Indicar qué periférico ha generado una solicitud de interrupción. (C)</p> Signup and view all the answers

En el contexto del módulo CCP, ¿cuál es la principal utilidad del modo de captura en el PIC16F877A?

<p>Medir la duración de un pulso o el período de una señal externa. (B)</p> Signup and view all the answers

¿Qué función cumple el registro ADCON0 en la configuración del módulo A/D del PIC16F877A?

<p>Seleccionar el canal analógico a convertir e iniciar la conversión. (C)</p> Signup and view all the answers

¿Qué implica un reset en el contexto del módulo A/D del PIC16F877A?

<p>Detiene la conversión en curso y reinicia el módulo a su estado inicial. (C)</p> Signup and view all the answers

En el contexto del módulo USART del PIC16F877A, ¿qué rol desempeña el generador de baudios?

<p>Establecer la velocidad de transmisión y recepción de datos. (D)</p> Signup and view all the answers

Considerando la gestión de la memoria EEPROM de datos en el PIC16F877A, ¿cuál es la secuencia precisa de pasos que se deben seguir para realizar una escritura fiable en una dirección específica de esta memoria?

<p>Habilitar la escritura, escribir la dirección, escribir el dato, iniciar la secuencia de escritura. (A)</p> Signup and view all the answers

¿Cuál es la estructura correcta para la definición de una función en C utilizada para microcontroladores PIC?

<p>t_dato_retorno nombre_función(t_dato nombre1, t_dato2 nombre2) { /* declaración de variables internas; código */ return variable; } (B)</p> Signup and view all the answers

¿De qué dos maneras se puede acceder a los registros de control de periféricos en el microcontrolador PIC?

<p>En formato byte al registro completo o bit a bit. (B)</p> Signup and view all the answers

¿Qué ocurre con el bit GIE (Global Interrupt Enable) al generarse una interrupción en el microcontrolador?

<p>Se pone a '0' para evitar interrupciones simultáneas. (D)</p> Signup and view all the answers

¿Cuál de las siguientes opciones describe mejor la función de la función putch al trabajar con una pantalla LCD y la función printf en C?

<p>Debe ser definida por el usuario para redireccionar la salida de <code>printf</code> a la pantalla LCD. (C)</p> Signup and view all the answers

¿Qué implicación tiene llamar a la función dispDefineChar antes de lcd_init al trabajar con una pantalla LCD?

<p>El nuevo carácter definido por <code>dispDefineChar</code> no se guardará en la memoria de la pantalla LCD. (B)</p> Signup and view all the answers

¿Cuál es el efecto secundario más sutil de usar bucles vacíos como método principal para generar retardos en un microcontrolador, especialmente en aplicaciones de tiempo real?

<p>Imposibilidad de ejecutar cualquier otra tarea durante el retardo, afectando la capacidad de respuesta del sistema a eventos externos. (C)</p> Signup and view all the answers

Un ingeniero está depurando un sistema que utiliza interrupciones en el PIC16F877A y observa que, aunque las interrupciones están habilitadas globalmente y a nivel periférico, la rutina de servicio de interrupción (ISR) no se ejecuta. Sospecha de un problema con la configuración del vector de interrupción. ¿Cuál es el error más probable que podría estar impidiendo la ejecución de la ISR?

<p>El vector de interrupción no está apuntando a la dirección de memoria correcta donde se encuentra la rutina ISR. (B)</p> Signup and view all the answers

Un ingeniero necesita transferir datos de alta velocidad entre dos microcontroladores PIC16F877A utilizando el módulo MSSP. Para maximizar la tasa de transferencia y minimizar la latencia, ¿qué modo de operación del MSSP sería el más adecuado y por qué?

<p>Modo SPI Maestro, ya que permite la transmisión síncrona a alta velocidad y control total sobre el reloj. (A)</p> Signup and view all the answers

¿Cuál es la función principal del registro PCLATH en el microcontrolador PIC16F877A?

<p>Almacenar la parte alta de la dirección de la siguiente instrucción a ejecutar cuando se produce un salto en el programa. (A)</p> Signup and view all the answers

En programación en ensamblador para el PIC16F877A, ¿qué propósito tienen las macros?

<p>Reemplazar secuencias de instrucciones por un solo identificador, facilitando la reutilización de código. (C)</p> Signup and view all the answers

¿Cuál es la diferencia fundamental entre la codificación absoluta y la codificación reubicable en ensamblador para microcontroladores?

<p>La codificación absoluta usa direcciones físicas fijas, mientras que la reubicable permite que las direcciones se ajusten durante el enlace. (B)</p> Signup and view all the answers

En la declaración de una función, t_dato1, t_dato2 ... representan los nombres de las variables de entrada internas a la función.

<p>False (B)</p> Signup and view all the answers

El acceso a los registros de control de periféricos en un microcontrolador PIC solo puede realizarse en formato byte.

<p>False (B)</p> Signup and view all the answers

La función dispDefineChar puede utilizarse antes de lcd_init para definir caracteres personalizados en la pantalla LCD.

<p>False (B)</p> Signup and view all the answers

La función printf utiliza internamente la función lcd_putch directamente sin necesidad de una función intermedia.

<p>False (B)</p> Signup and view all the answers

La generación de retardos con un microcontrolador PIC16 solo puede realizarse mediante temporizadores o bucles.

<p>False (B)</p> Signup and view all the answers

El bit GIE (Global Interrupt Enable) se pone a '1' cuando se genera una interrupción para permitir interrupciones simultáneas.

<p>False (B)</p> Signup and view all the answers

El registro PC (Program Counter) se guarda en la pila al ocurrir una interrupción, permitiendo el retorno al flujo principal del programa una vez atendida la interrupción.

<p>True (A)</p> Signup and view all the answers

Los temporizadores (Timers) en los microcontroladores PIC, son completamente independientes y no tienen ninguna relación con el WDT (Watchdog Timer).

<p>False (B)</p> Signup and view all the answers

El vector de interrupciones, que contiene la dirección de inicio de la rutina de interrupción, se encuentra en la dirección de memoria 0x0004 en el PIC16F877A.

<p>True (A)</p> Signup and view all the answers

Cuando se retorna de una interrupción mediante la instrucción RETFIE, el bit GIE (Global Interrupt Enable) se desactiva automáticamente, impidiendo nuevas interrupciones.

<p>False (B)</p> Signup and view all the answers

El microcontrolador PIC16F877A solo puede ser interrumpido por el desbordamiento del TIMER0.

<p>False (B)</p> Signup and view all the answers

Los registros INTCON, PIR1, PIR2, PIE1 y PIE2 son esenciales en la gestión de interrupciones en el PIC16F877A, permitiendo configurar y controlar las diferentes fuentes de interrupción.

<p>True (A)</p> Signup and view all the answers

El módulo CCP en el PIC16F877A solo puede operar en modo de captura.

<p>False (B)</p> Signup and view all the answers

En el modo de captura del módulo CCP, el valor actual del temporizador se guarda cuando ocurre un evento específico en una señal de entrada, permitiendo medir la duración de eventos externos con precisión.

<p>True (A)</p> Signup and view all the answers

El estándar RS-232 utiliza niveles de voltaje de 0V y 5V para representar los estados lógicos, lo que lo hace directamente compatible con los niveles TTL de los microcontroladores sin necesidad de conversión.

<p>False (B)</p> Signup and view all the answers

En el contexto del módulo MSSP (Master Synchronous Serial Port) del PIC16F877A, la comunicación I2C requiere obligatoriamente el uso de resistencias de pull-up en las líneas SDA (Serial Data) y SCL (Serial Clock), incluso si el dispositivo esclavo ya las incorpora internamente.

<p>False (B)</p> Signup and view all the answers

La memoria de programa del PIC16F877A está organizada en bancos de memoria de 8 bits.

<p>False (B)</p> Signup and view all the answers

El registro PCLATH se utiliza para direccionar la parte alta de la memoria de programa cuando se realizan saltos o llamadas a subrutinas.

<p>True (A)</p> Signup and view all the answers

La pila del PIC16F877A es un área de memoria utilizada para almacenar temporalmente datos y direcciones durante la ejecución del programa.

<p>True (A)</p> Signup and view all the answers

En el PIC16F877A, la memoria de datos se divide en dos bancos principales: el banco de propósito general y el banco de funciones especiales.

<p>False (B)</p> Signup and view all the answers

Una directiva del ensamblador EQU se utiliza para asignar un valor numérico a una etiqueta, creando una constante simbólica.

<p>True (A)</p> Signup and view all the answers

Las macros en ensamblador son subrutinas que se pueden llamar desde diferentes puntos del programa.

<p>False (B)</p> Signup and view all the answers

El direccionamiento inmediato implica que el operando de la instrucción es la dirección de memoria donde se encuentra el dato a utilizar.

<p>False (B)</p> Signup and view all the answers

La codificación absoluta en ensamblador permite que el código se pueda cargar en cualquier dirección de memoria sin necesidad de modificación.

<p>False (B)</p> Signup and view all the answers

El registro STATUS en el PIC16F877A contiene información sobre el estado actual de la CPU, incluyendo flags de carry, zero y digit carry.

<p>True (A)</p> Signup and view all the answers

Los puertos de E/S del PIC16F877A solo pueden configurarse como entradas o salidas a través de los registros TRISA, TRISB, TRISC, TRISD y TRISE.

<p>True (A)</p> Signup and view all the answers

El Puerto Paralelo Esclavo (PSP) permite al PIC16F877A actuar como un maestro en la comunicación paralela con otros dispositivos.

<p>False (B)</p> Signup and view all the answers

En la programación en C para el PIC16F877A, la función main() no es necesaria si se utilizan interrupciones para controlar el flujo principal del programa.

<p>False (B)</p> Signup and view all the answers

El módulo USART del PIC16F877A solo soporta comunicación síncrona.

<p>False (B)</p> Signup and view all the answers

En el modo PWM del módulo CCP, la resolución del ciclo de trabajo es inversamente proporcional a la frecuencia PWM.

<p>True (A)</p> Signup and view all the answers

El módulo MSSP del PIC16F877A implementa el protocolo I3C (Improved Inter Integrated Circuit), que permite velocidades de comunicación superiores al I2C

<p>False (B)</p> Signup and view all the answers

Flashcards

Memoria

Lugar donde se almacenan datos e instrucciones que la CPU puede acceder directamente.

Estructura de una Función en C

Tipo de dato de retorno y nombre de la función, seguido de los tipos y nombres de los parámetros de entrada. Incluye la declaración de variables internas y el código de la función.

Fichero .h

El archivo .h contiene las definiciones de todos los registros de control de periféricos del microcontrolador.

Capacidad de memoria

Cantidad total de información que una memoria puede almacenar.

Signup and view all the flashcards

Acceso a Registros

Se puede acceder a un registro de control de periféricos completo (formato byte) o bit a bit.

Signup and view all the flashcards

Expansión de capacidad

Proceso de aumentar la capacidad total de memoria disponible en un sistema.

Signup and view all the flashcards

Generación de Retardos

Temporizadores (Timers), bucles de retardo (software) y funciones de la librería delays.h o htc.h.

Signup and view all the flashcards

Mapa de memoria

Representación visual de la organización de la memoria, mostrando direcciones y rangos.

Signup and view all the flashcards

Inicialización de LCD

Antes de introducir valores en la memoria de la pantalla LCD, esta debe estar inicializada.

Signup and view all the flashcards

Lenguajes de programación

Conjunto de reglas y símbolos usados para escribir programas que la computadora entiende.

Signup and view all the flashcards

printf y putch en LCD

La función printf utiliza internamente la función putch, la cual debe ser definida a partir de lcd_putch para mostrar caracteres en la LCD.

Signup and view all the flashcards

PCLATH

Es un registro que contiene la parte alta de la dirección del programa.

Signup and view all the flashcards

TIMER0

Es un temporizador/contador de 8 bits que puede generar interrupciones y está relacionado con el WDT (Watchdog Timer).

Signup and view all the flashcards

La pila

Es una estructura de datos donde se almacenan temporalmente direcciones de retorno de subrutinas.

Signup and view all the flashcards

Funcionamiento de Interrupciones

Al ocurrir una interrupción, el bit GIE se pone a '0' para deshabilitar interrupciones simultáneas, y la dirección de retorno del programa se guarda en la pila.

Signup and view all the flashcards

Memoria de datos

Regiones de la memoria RAM donde se almacenan variables y datos usados por el programa.

Signup and view all the flashcards

Direccionamiento

Describe cómo se especifica la ubicación de un operando en la memoria o en un registro.

Signup and view all the flashcards

Registros de funciones especiales

Registros dedicados a controlar funciones específicas del microcontrolador, como los timers o los puertos.

Signup and view all the flashcards

Registro STATUS

Es un registro que contiene información sobre el estado actual del microcontrolador.

Signup and view all the flashcards

Instrucciones

Son comandos básicos que le indican al microcontrolador qué operación realizar.

Signup and view all the flashcards

Directivas del programa ensamblador

Son instrucciones al ensamblador, no se ejecutan en el microcontrolador.

Signup and view all the flashcards

Macros

Es una secuencia de instrucciones que se reemplazan con un solo nombre.

Signup and view all the flashcards

Operandos

Dato sobre el que opera una instrucción. Puede ser un registro, una constante o una dirección de memoria.

Signup and view all the flashcards

Vector de interrupciones

El vector de interrupciones (dirección 0x0004) se carga en el PC.

Signup and view all the flashcards

Bit GIE

Activa el bit GIE (Global Interrupt Enable) habilitando las interrupciones globales.

Signup and view all the flashcards

Fuentes de interrupción (PIC16F877A)

INT, cambio en RB4:RB7, desbordamiento de TIMER0/1/2, eventos CCP, USART, A/D.

Signup and view all the flashcards

Registros de Interrupción (PIC16F877A)

INTCON, PIR1, PIR2, PIE1, PIE2.

Signup and view all the flashcards

Modos de operación CCP

Captura, Comparador, PWM (Modulación por Ancho de Pulso).

Signup and view all the flashcards

Conversión A/D

Convierte una señal analógica en una representación digital.

Signup and view all the flashcards

Módulo USART

Permite la comunicación serial asíncrona, útil para conectar dispositivos a través de distancias.

Signup and view all the flashcards

Generador de baudios

Define la velocidad de transmisión de datos en la comunicación serial.

Signup and view all the flashcards

Estructura de Función en C

Define la estructura de una función en C, incluyendo el tipo de dato de retorno, nombre, parámetros de entrada y el código de la función.

Signup and view all the flashcards

Bit GIE (Habilitación Global de Interrupciones)

Bit que habilita o deshabilita todas las interrupciones en el sistema.

Signup and view all the flashcards

Tipos de memorias

Conjunto de celdas que almacenan datos e instrucciones.

Signup and view all the flashcards

Arquitectura

Diseño y organización de los componentes de un sistema.

Signup and view all the flashcards

Lenguaje Ensamblador

Lenguajes que controlan el hardware directamente.

Signup and view all the flashcards

Memoria de programa

Región de la memoria donde se guarda el programa.

Signup and view all the flashcards

Registros especiales

Son registros que controlan funciones específicas del microcontrolador.

Signup and view all the flashcards

Instrucciones máquina

Instrucciones básicas para el microcontrolador.

Signup and view all the flashcards

Directivas ensamblador

Instrucciones para el ensamblador, no para el micro.

Signup and view all the flashcards

Subrutina

Una sección de código que realiza una tarea específica.

Signup and view all the flashcards

Codificación absoluta

Asignación directa de direcciones en el código.

Signup and view all the flashcards

Puertos E/S

Regiones físicas del microcontrolador para interacción.

Signup and view all the flashcards

Interrupción externa INT

Se activa cuando hay una interrupción externa en el pin RB0.

Signup and view all the flashcards

Interrupción por cambio en RB4:RB7

Se activa cuando hay un cambio en el nivel lógico de RB4 a RB7 del puerto B.

Signup and view all the flashcards

Registros INTCON, PIR1, PIR2, PIE1, PIE2

Son registros que permiten configurar y controlar los periféricos del microcontrolador relacionados con interrupciones.

Signup and view all the flashcards

Registros de control del módulo A/D

Registros que controlan la operación del módulo A/D, como la selección del canal y la configuración de la conversión.

Signup and view all the flashcards

Standard RS-232

Es el estándar más común para la comunicación serial asíncrona.

Signup and view all the flashcards

Tipos de datos

Son los distintos tipos de datos que se pueden utilizar en C.

Signup and view all the flashcards

Study Notes

Modos de Direccionamiento de la Memoria de Datos

  • Para direccionamiento directo e indirecto, la dirección completa requiere 9 bits.
  • En el direccionamiento directo, los bits RP1:RP0 del registro STATUS completan la dirección.
  • En el direccionamiento indirecto, el bit IRP del registro STATUS completa el contenido del registro FSR.

Registros de Funciones Especiales (SFR)

  • Los SFR están asociados a funciones y periféricos del microcontrolador PIC de gama media.
  • Se mencionan varios SFR y su relación con distintos dispositivos como Timer0, Timer1, puertos paralelos, etc.

Registro STATUS

  • El registro STATUS es vital para el control del microcontrolador, incluyendo la selección del banco de memoria.
  • Los bits TO# y PD# son de sólo lectura, mientras que Z, DC y C se ajustan según la lógica de la instrucción.
  • Se recomienda usar bcf, bsf, swapf y movwf para modificar bits del registro STATUS.

Estructura de las Sentencias en Ensamblador

  • Cada línea puede tener hasta cuatro campos: etiqueta, código, operandos/datos y comentario.
  • Se explica el propósito de cada campo, incluyendo que el código puede ser una instrucción, directiva o llamada a macro.

Instrucciones

  • La mayoría se ejecutan en 4 ciclos de reloj, excepto saltos y llamadas que tardan 8 ciclos.
  • Todas las instrucciones tienen una longitud de 14 bits.
  • Se pueden acceder y modificar bits individuales en los registros de datos.
  • No hay instrucciones directas para guardar o extraer datos desde la pila.

Clasificación de Instrucciones por Formato

  • Orientadas al byte, operando con registros de la memoria de datos.
  • Orientadas al bit, actuando sobre un bit específico de un registro.
  • Literales y de control, operando con datos inmediatos o direcciones de programa.

Instrucciones de Transferencia de Datos

  • Incluyen movf, movlw, movwf, clrf, clrw y swapf, afectando el bit Z del STATUS.

Instrucciones Aritméticas

  • addwf, addlw, subwf y sublw, que afectan a los bits C, DC y Z del registro STATUS.

Instrucciones Lógicas

  • comf, andwf, andlw, iorwf, iorlw, xorwf y xorlw, que modifican el bit Z del registro STATUS.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Sistemas de Gestión de Bases de Datos
10 questions
Sistemas Hidrográficos de América
13 questions
Sistemas de Memória
40 questions

Sistemas de Memória

FreeLavender181 avatar
FreeLavender181
Use Quizgecko on...
Browser
Browser