Vous êtes sur la page 1sur 4

MICROCONTROLADORES: Final sobre 60 puntos.

TIEMPO: UNA HORA CON VEINTE MINUTOS


FECHA: Febrero 14 del 2009.
Nombre: ______________________________________________________Paralelo: ___________

LLENE LA TABLA DE RESPUESTAS. CADA EJERCICIO VALE TRES PUNTOS

1.
a)
b)
c)
d)

Para el convertidor ADC del PIC16F877 el tiempo mnimo de conversin por bit es de:
6 mseg
6 seg
1.6 seg
1.6 mseg.

2.
Para que el convertidor ADC del PIC16F877 pueda generar interrupciones al trmino de cada
conversin es necesario:
a) borrar ADIF, poner a uno los bits ADIE, GIE y PEIE.
b) borrar ADIE, poner a uno los bits ADIF, GIE y PEIE.
c) borrar PEIE, poner a uno los bits ADIE, GIE y ADIF.
d) ninguna de las anteriores.
3.
Para grabar datos en la memoria FLASH se requiere:
a) Del registro EECON1 solamente.
b) Del registro EECON2 solamente
c) De los registros EECON1 y EECON2.
d) No es posible grabar datos en la memoria FLASH.
4.
Su pantalla es un LCD 2x16 de 16 caracteres por lnea. Asuma que el tiempo de espera entre
caracteres es igual a cero. El tiempo requerido para llenar la pantalla con caracteres ASCII transmitidos a
9600 bps (asuma 8 bits datos + un bit de inicio + un bit de parada) es:
a) 26.66 mseg
b) 3.333 mseg
c) 33.33 mseg
d) Ninguna anteriores.
5.
El convertidor ADC de 10 bits del PIC16F877 se configura con un voltaje de referencia de 5
voltios. El equivalente hexadecimal de una entrada de 3.4 voltios y la resolucin son respectivamente:
a) 16DH , 10 mv b) 2B8H , 4.88 mv
c) 15EH, 7.81 mv
d) Ninguna anteriores
6.
El ADC del PIC16F877 exige esperar 2TAD (TAD=tiempo de conversin por bit) para reiniciar una
nueva conversin.
FALSO (
)
VERDADERO (
)
7.
a)
b)
c)
d)

La tcnica de comunicacin serial de datos ms eficiente es:


Comunicacin serial sincrnica con USART.
Comunicacin serial asincrnica con USART.
Comunicacin serial sincrnica sin USART.
Comunicacin serial asincrnica sin USART.

8.
Si se lleva el PIC16F877 a modo reposo (ejecutar instruccin SLEEP) su convertidor ADC puede
seguir funcionando si:
a) se configura para que opere a la frecuencia Fosc/32.
b) se configura para que opere a la frecuencia FRC.
c) se configura para que opere a la frecuencia Fosc/8
d) ninguna de las anteriores.
9.
El PIC16F877 esta operando con un cristal de 10 MHz. El registro SPBRG del generador de
baudios del USART se carga con 6410 y el bit BRGH del registro TXSTA<2> se fija en 1(alta velocidad).
La frecuencia en bps del transmisor es:
a) 9600 bps
b) 8960 bps
c) 9615 bps
d) ninguna anteriores

10.
Considere el USART. La bandera TXIF=1 del registro PIR1 indica que:
a) el registro TXREG o buffer de datos del transmisor se encuentra lleno.
b) el registro TXREG o buffer de datos del transmisor se encuentra vaco.
c) el registro TSR se encuentra vaco.
d) ninguna de las anteriores.
11.
El bit TRMT=1 del registro de control del transmisor TXSTA del USART indica que:
a) hay error en la generacin del bit de parada.
b) el transmisor est listo para transmitir.
c) el registro de desplazamiento del transmisor TSR est lleno.
d) el registro de desplazamiento del transmisor TSR est vaco.
12.
Para configurar el USART para transmisin serial Asncrona es necesario que:
a) SYNC=0 en registro TXSTA , SPEN=1 en registro RCSTA, RC6 salida y RC7 entrada.
b) SYNC=1 en registro TXSTA, SPEN=0 en registro RCSTA, RC6 salida y RC7 entrada
c) SYNC=0 en registro TXSTA, SPEN=0 en registro RCSTA, RC6 entrada y RC7 salida.
d) ninguna de las anteriores.
13.
Considere el USART. La bandera RCIF=1 del registro PIR1 indica que:
a) el registro RCREG o buffer de datos del receptor se encuentra lleno.
b) el registro RCREG o buffer de datos del receptor se encuentra vaco.
c) el registro RSR se encuentra vaco.
d) ninguna de las anteriores.
14.
Considere el siguiente segmento de programa donde TIMER2 interrumpe cada vez que desborda,
trabajando con un PIC16F877 a 4MHz. El TIMER 2 esta programado con un preescalador de 16, un
postescalador tambien de 16 y PR2=255.
int x=0;
#int_TIMER2
void TIMER2_isr (void)
{
printf ("Interrupcion exitosa\r");
x++;
}
void main()
{
setup_timer_2 (T2_DIV_BY_16, 255, 16);
enable_interrupts (INT_TIMER2);
enable_interrupts (GLOBAL);
while(x!=5); //espera por una interrupcion
disable_interrupts (global);
printf ("FIN");
while (1); }
a) TMR2 interrumpe cada 65.5 milisegundos.
b) TMR2 interrumpe cada 4.0 milisegundos.
c) TMR2 interrumpe cada 56.2 milisegundos
d) TMR2 interrumpe cada 16.3 milisegundos
15.

16.

Con referencia al ejercicio anterior (#6), la subrutina de servicio se ejecuta


a)
4 veces.
b)
6 veces.
c)
5 veces.
d)
65 veces
La frecuencia FPWM mxima posible en un PIC16F877 operando con un cristal de 20 MHz y
Peescalador=1 es:
a) 1 MHz.
b) 1 KHz.
c) 250 KHz.
d) 5.0 MHz.

17.

El segmento de cdigo siguiente:


char c;
if (!ADFM) c=ADRESH;
else
{
c=ADRESH;
c=c<<6;
c=c | (ADRESL >>2);
}
a) Coloca en la variable c los 8 bits menos significativos del resultado de la conversin ADC.
b) Coloca en la variable c los 6 bits ms significativos del resultado de la conversin ADC.
c) Coloca en la variable c los 8 bits ms significativos del resultado de la conversin ADC.
d) Ninguna de las anteriores.

18.

Considere el siguiente segmento de programa:


int suma (int a, int b) //esta funcion suma a+b.
{
int resultado;
resultado =a+b;
// return resultado;
}
void main (void)
{
int valor=0;
//printf ("Imprime la suma de dos numeros \n\r");
valor=suma(6,120); // se llama a la funcin suma
printf("La suma es: %d\n\r", valor);
while(1); }
El programa imprime en pantalla:
a)
La suma es: 126
b)
La suma es: 0
c)
La suma es: %126
d)
La suma es: %nr

19.

El mdulo PWM del PIC16F877 ha sido configurado con PR2=120, y CCPR1L=60:

a) Como CCPR1L < PR2 la salida RC2 se mantiene siempre en alto.


b) Como CCPR1L < PR2 la salida RC2 se mantiene siempre en bajo.
c) Como CCPR1L < PR2 la salida RC2 cambia de alto a nivel bajo.
d) Ninguna de las anteriores.
20.

Para el 16F877, el BIT EEIE de los registros de funciones especiales se encuentra en:
a) INTCON
b) PIE2
c) PIR1
d) PIE1

*************************************************************************************
FORMULAS DE AYUDA:
1)

BPS=FOSC / 16(X+1)

Velocidad alta;

BPS= FOSC/64(X+1)

2)

PERIODO = (X+1) * (FACTOR DIVISOR FREC) * 4 * TOSC

Velocidad baja

MICROCONTROLADORES: Final sobre 60 puntos


FECHA: Febrero 14 del 2009.
TABLA DE RESPUESTAS
Marque con una X la alternativa correcta.
Cada pregunta vale tres puntos.
#
a
b
c
d
Pregunta
1
X
2
X
3
X
4
X
5
X
F( )
V(X )
6
7
X
8
X
9
X
10
X
11
X
12
X
13
X
14
X
15
X
16
X
17
X
18
X
19
X
20
X

Vous aimerez peut-être aussi