MICROCONTROLADORES
Enviado por SHIRLEY JAZMIN CALSINA HUACANI • 29 de Agosto de 2022 • Examen • 506 Palabras (3 Páginas) • 144 Visitas
MICROCONTROLADORES (14955)
1.- Responda las siguientes preguntas ( 1pt cada uno)
a) ¿Cuál es la cantidad de corriente que sale de los pines GPIO del PIC18F4550?
30 mA
b) ¿Cuál es el tamaño máximo que puede pesar un programa en el PIC18F4550?
Memoria de programa flash de 32 kB
RAM de 2048 Bytes
EEPROM de datos de 256 Bytes
c) ¿Qué es una subrutina de interrupción?
Una interrupción es una suspensión temporal de la ejecución de un proceso, para pasar a ejecutar una subrutina de servicio de interrupción, la cual, por lo general, no forma parte del programa. Las rutinas de servicio a interrupciones son, en la gran mayoría de casos, una solución más eficiente que el blockin polling y el non blocking polling al momento de responder ante eventos determinados
d) ¿En el módulo PWM, qué significado tiene el duty cycle?
Es el valor de referencia que se usa para comparaciones en caso de monitorear el timer2, para generar una señal PWM en un pin especifico.
2.- Responda las siguientes preguntas (1pt cada uno)
a) En lenguaje C, ¿qué es una variable global y una variable local?
Una variable es global a no ser que esté declarada dentro de una definición de función. Las variables globales resultan visibles y disponibles para todas las sentencias de un script. Las variables locales sólo resultan visibles y disponibles dentro de la función en la que están definidas.
b) ¿Qué es una variable puntero?
Una variable de tipo puntero almacena la dirección de memoria de otra variable que puede ser int, char, float, struct etc.
c) ¿Cuáles son las velocidades a las que trabaja el protocolo UART?
9600 baudios
d) Para el conversor ADC del PIC184450, ¿Qué frecuencia de muestreo máxima se puede conseguir con un cristal de 5Mhz y conversión de 10bits? Explique.
Frecuencia de muestreo= tad +tcon+dis
Tad= prescaler/fosc= 16/5mhz =3.2 us
Tcon= 11*tad= 30.52us
Tdis=0.2us
TOTAL = 3.2+30.52+0.2=33.99us
3.- Se desea generar una señal PWM de 500ms de periodo. Configure los registros necesarios para tener un duty cycle de xy%. (xy representa los últimos dos digitos del código del alumno). Además especifique el código necesario. (6 pts)
#include <stdint.h>
#include <xc.h>
#include "configh.h"
#include <stdio.h>
#include <pic18f4550.h>
#include "LCD.h"
#define _XTAL_FREQ 3000000
void PWM_init(void);
void timer2_init(void);
...