RETO MES DE ABRIL .............................docx
MICC TEMAS PIC16F84A
1. MICC TEMAS:
1. Un PIC16F84A trabajando a 10 MHz, el ciclo de instrucción demora:
a) 1.0 microsegundos.
b) 0.4 microsegundos
b) 4.0 microsegundos.
c) 0.1 microsegundos.
2. El PIC16F84A tiene:
a) 1024 bytes de RAM de datos.
b) 64 bytes de RAM de datos.
c) 68 bytes de RAM de datos.
d) 128 bytes de RAM de datos.
3. La memoria EEPROM de datos soporta hasta:
a) Diez mil ciclos de borrado/escritura.
b) Cien mil ciclos de borrado/escritura.
c) Un millón de ciclos de borrado/escritura.
d) Diez millones de ciclos de borrado/escritura.
4. El voltaje de programación del PIC16F84A se aplica al “pin”:
a) /MCLR.
b) Vss.
c) OSC1/CLKIN.
d) RB0/INT.
5. Asuma que la tensión aplicada a la patita VDD de un PIC16F84A es exactamente 5
voltios DC. La corriente máxima que un “pin” puede proporcionar en estado alto
es:
a) 50 miliamperios.
b) 25 miliamperios.
c) 20 miliamperios.
d) 25 microamperios.
6. Asuma que la tensión aplicada a la patita VDD de un PIC16F84A es exactamente 5
voltios DC. La corriente máxima que un “pin” puede proporcionar en estado bajo
es:
a) 80 miliamperios.
b) 25 miliamperios.
c) 20 miliamperios.
d) 25 microamperios.
7. El oscilador XT (cristal de cuarzo) es el más utilizado con el PIC16F84A ya que
genera una frecuencia muy estable en el rango:
a) 100 KHz a 4 MHz.
b) 1.0 MHz a 10 MHz.
c) 4.0 MHz a 20 MHz.
d) 1.0 Hz a 100 KHz.
8. El PIC16F84A cuenta solamente con:
a) 68 bytes de EEPROM de datos.
b) 128 bytes de EEPROM de datos.
c) 48 bytes de EEPROM de datos.
d) 64 bytes de EEPROM de datos.
2. 9. La memoria FLASH del PIC16F84A soporta hasta:
a) Diez mil ciclos de borrado/escritura.
b) Cien mil ciclos de borrado/escritura.
c) Un millón de ciclos de borrado/escritura.
d) Diez millones de ciclos de borrado/escritura.
10. El registro de función especial que hace de puntero en el modo de
direccionamiento indirecto es:
a) INDF.
b) INCF.
c) FSR.
d) PCL
11. El contador del programa es un registro de:
a) 16 bits.
b) 14 bits.
c) 8 bits.
d) 13 bits.
12. El PIC16F84A cuenta con:
a) una memoria de programa de 512x13.
b) una memoria de programa de 1Kx13.
c) una memoria de programa de 1Kx14.
d) una memoria de programa de 512x14.
13. El PIC16F84A cuenta con una pila (stack) de:
a) 13x8.
b) 8x14.
c) 4x13.
d) 8x13.
14. El registro de función especial que interviene en los cambios de página es:
a) FSR.
b) PCLATH.
c) OPTION_REG.
c) INTCON.
15. Los bits que seleccionan los bancos de la memoria RAM de datos con
direccionamiento indirecto son:
a) RP1 y RP0.
b) IRP y FSR7
c) IRP y RP1
d) INDF7 y FSR7
16. Cuando el perro guardián desborda
a) el contador del programa se carga con 0000H.
b) el contador del programa se carga con 2007H
c) pone a 1 la bandera TO, bit (STATUS, 4).
d) el contador del programa se carga con 0004H.
17. Si usted setea en el OPTION_REG los bits TOSC=1, TOSE=1 y PSA=1,
entonces:
a) TMR0 es contador de pulsos externo, avanza con flanco positivo.
b) TMR0 es contador de pulsos externo, avanza con flanco negativo.
3. c) TMR0 es temporizador, opera con reloj interno.
d) TMR0 es temporizador y opera con frecuencia directa del cristal.
18. Con el perro guardián el divisor de frecuencia funciona:
a) como postdivisor solamente.
b) como predivisor solamente.
c) como postdivisor o predivisor.
c) ninguna de las anteriores.
19. En el caso del TMR0 los pulsos que divide el divisor de frecuencia provienen:
a) del reloj interno solamente.
b) del reloj externo solamente.
c) de ambas fuentes, depende de su programación.
d) ninguna de las anteriores.
20. El registro de función especial que permite decidir el tipo de flanco para la
interrupción externa es:
a) INTCON.
b) EECON1.
c) EECON2.
d) OPTION_REG.
21. En el PIC16F84A funcionando con un cristal de 10 MHz, el TMR0 se lo
configura como temporizador con PSA=1. Después de ejecutar la instrucción
CLRF TMR0, este temporizador desborda en:
a) 102.4 microsegundos.
b) 204.8 milisegundos.
c) 26.2 microsegundos.
d) 26.2 milisegundos.
22. El bit INTEDG del registro de opción:
a) define tipo de flanco del reloj del contador de eventos TMR0.
b) controla las resistencias pullup de PORTB.
c) define tipo de flanco de la entrada de interrupción externa.
d) habilita la interrupción por cambio de estado en RB7….RB4.
23. La fuente de reloj del perro guardián es:
a) el reloj del cristal dividido para 4.
b) el reloj del cristal afectado por el predivisor.
c) un oscilador RC interno.
d) Ninguna de las anteriores.
24. Después de ejecutar la instrucción SLEEP:
a) TMR0 funciona normalmente como temporizador.
b) TMR0 no funciona como temporizador.
c) TMR0 cuando desborda no enciende su indicador T0IF.
d) Ninguna de las anteriores.
25. Sin divisor de frecuencia la temporización nominal programada del WDT es:
a) 72 milisegundos.
b) 2.3 milisegundos.
c) 76 milisegundos.
d) 18 milisegundos.
26. El valor máximo de programación del WDT es:
4. a) 72 milisegundos.
b) 2,3 segundos.
c) 18 milisegundos.
d) 18 segundos
27. La palabra de configuración esta ubicada:
a) en la dirección 2006H de la memoria FLASH.
b) en la dirección 2007H de la memoria EEPROM de datos.
c) en la dirección 2006H de la memoria EEPROM de datos.
d) en la localidad 2007H de la memoria FLASH.
28. El valor nominal programado del temporizador POWER UP es:
a) 76 milisegundos.
b) 18 milisegundos.
c) 72 milisegundos.
d) 36 microsegundos.
29. Durante el retardo dado por el temporizador POWER UP:
a) se bloquea la fuente de reloj del PIC.
b) se mantiene reseteado al PIC.
c) se bloquea la fuente de poder.
d) ninguna de las anteriores.
30. Durante la configuración del PIC16F84A se ejecuta
BSF STATUS,5
BCF TRISA,4
BCF STATUS,5
En “hardware” se conecta un LED4 a la patita RA4 con cátodo conectado a tierra.
No se conecta resistencia PULLUP en la salida RA4.
Una de las subrutinas del programa principal ejecuta:
BSF PORTA, 4.
a) LED4 se enciende inmediatamente ya que RA4 no es tipo drenaje abierto.
b) LED4 se enciende inmediatamente ya que no es tipo colector abierto.
c) LED4 no se enciende porque RA4 es tipo drenaje abierto y requiere PULLUP.
d) LED4 no enciende porque RA4 es tipo colector abierto y requiere PULLUP.
***********************************************************************
TEMAS – ENERO 02 DEL 2010.
31. El contenido de la localidad MIREG en SRAM del PIC 16F877 después de
ejecutar:
MIDATO EQU .12
MIREG EQU 0x30
FACTOR EQU .16
MOVLW MIDATO
ADDLW FACTOR
MOVWF MIREG
es:
a) 0x1C b) 0xC1 c) 0x3C d) 0xC3
5. 32. El estado de las banderas C y Z después de ejecutar
MOVLW 0xFF
ADDLW 1
es:
a) C=1, Z=1 b) C=1, Z=0 c) C=0, Z=1 d) C=0, Z=0
33. Considere el lazo repetir
…….
REPETIR NOP
DECFSZ CNT, F
GOTO REPETIR
FIN GOTO FIN
Inicialmente con que valor debe cargarse la variable CNT para que la instrucción
NOP se ejecute 256 veces.
a) 256 b) 255 c) 0 (cero) d) 1 (uno)
34. El PIC 16F877 opera con un cristal de 4 MHz. DELAY=4ms. El siguiente
segmento de programa genera una onda cuadrada simétrica en RC0.
BCF TRISC,0
AQUÍ BSF PORTC,0
CALL DELAY
BCF PORTC, 0
CALL DELAY
GOTO AQUÍ
La frecuencia de la onda cuadrada generada en la patita RC0 es:
a) 500 Hz b) 250 Hz c)125 Hz d) 60 Hz
35. El tiempo máximo programable para el desborde del “timer” WDT es:
a) 2304 ms b) 1152 ms c) 576 ms d) 144 ms
36. Considere el siguiente segmento de programa donde A es un arreglo de 5 enteros.
INT A [5]={1,2,3,4,5};
void main()
{ INT *P, I;
P=A+4;
FOR (I=0;I<5;I++)
PRINTF ("%u", *(P-I));
WHILE (1);
}
El programa visualiza en pantalla:
a) 1234 b) 12345 c) 54321 d) 4321
6. 37. Considere el siguiente segmento de programa
void main (void)
{ int B[5]={5,10,15,20,25};
int *P;
P = B+2;
printf("%u",*P+3);
while (1);
}
El programa visualiza en pantalla
a) 20 b) 10 c) 15 d) 18
38. El programa principal invoca a la función incxx.
void incxx (int *n)
{*n+=10;}
void main()
{ int c[5]={1,2,3,4,5};
int *p;
incxx(c+1);
p=c+1;
printf ("%u",*p);
while(1);
}
El valor que printf visualiza en pantalla es:
a) 11 b) 12 c) 13 d) 2
39. Considere el programa siguiente
int a[5]={1,2,3,4,5};
void main(void)
{ int *p, i;
p=a;
for (i=0;i<5;i++)
printf (“??”,???); //para imprimir los elementos de a se requiere
} a) printf (“%d”,*p+i);
b) printf (“%d”,*(p+i));
c) printf (”*p+i”, %d);
d) printf (“*(p+i)”,%d);
40. Considere el programa siguiente:
void main()
{ int i;
for(i=1;1;i++)
{ if (getch()=='q') printf ("%unr", i);
else if (i==5) break;
}
printf ("FIN");
7. while(1);
}
Para imprimir FIN se requiere:
a) apretar q cinco veces seguido de otra tecla.
b) apretar q cuatro veces seguido de otra tecla.
c) apretar q tres veces seguido de otra tecla.
d) apretar q seis veces seguido de otra tecla.
41. xxxx