Sei sulla pagina 1di 3

CARLOS GODOY – DANILO SARRIA – JUAN PABLO FRANCO

PRIMER INFORME: MICROS II 2016


UNIVERSIDAD DEL VALLE

LABORATORIO 1 MICROS II

1. ¿Por qué debo utilizar la instrucción: port_b_pullups (TRUE)? ¿Qué sucede si no la utilizo en el
programa?

2. Explique en que consiste el siguiente segmento de código, ¿cuál es su función?:

k = kbd_getc();
x =k-48;
if (k!=0){
if (k=='*')

3. ¿Qué significa esta instrucción en el programa?

printf(lcd_putc,"\f Car=%u",k);

4. ¿Qué sucede si en la instrucción x =k-48; no se resta el 48, que cambia en el resultado?

5. Modifique el código 1 y programe el microcontrolador para leer tres teclas del teclado matricial y
posteriormente las visualice en la pantalla lcd.

6. Modifique el código anterior y realice una operación de suma entre dos datos ingresados a través
del teclado.

7. A partir de los resultados obtenidos en el laboratorio determine sus conclusiones.


CARLOS GODOY – DANILO SARRIA – JUAN PABLO FRANCO
PRIMER INFORME: MICROS II 2016
UNIVERSIDAD DEL VALLE

SOLUCION AL CUESTIONARIO

1. La instrucción: port_b_pullups (TRUE)? Se debe utilizar para habilitar las


resistencias internas pull up que por defecto están en el puerto B.

Si no utilizamos esta instrucción estas resistencias internas pull up no se


habilitarán, por lo tanto, si vamos a manejar el teclado en este puerto se tiene que
implementar estas resistencias en el montaje físico.

2. La función de este código principalmente es convertir y mostrar el valor ingresado


de tipo carácter (tabla ascii) a un número decimal
porque al restarle 48 a k (que es de tipo caracter), y sabiendo que el numero 0 en
ascii su valor en decimal es el 48, por eso se le resta el 48, porque como vamos a
pasar el valor mostrado (de tipo caracter) a decimal se debe hacer esta resta según
la tabla ascii.
además, con el if se compara que el valor ingresado no sea un valor nulo, y con el
otro if anidado, se pretende que al pulsar una tecla determinada se cumpla una
orden especifica.

k = kbd_getc(); // EL VALOR A MOSTRAR SE GUARDA EN UNA VARIABLE LLAMADA K


x =k-48; // CON ESTA RESTA SE LLEVA UN DATO TIPO CARCTER (ASCII ) A
DECIMAL, TODO ESTO DEBIDO A LA TABLA ASCII
if (k!=0){ //CONDICION QUE SE CUMPLE SI K ES DIFERENTE DE 0
if (k=='*') // CONDICION QUE SE CUMPLE SI K ES IGUAL A ASTERISCO (*).

3. Esta instrucción muestra en la lcd un mensaje dependiendo de ciertos comandos.

printf(lcd_putc,"\f Car=%u",k); // (primero con \f limpia la Lcd, luego muestra


car=%u, k, %u es un valor de tipo entero sin signo y es coma k (,k)porque k es la
variable donde está guardado el valor a mostrar.

4. Si no se efectúa resta el 48 en la instrucción no se hace la conversión numérica de


ascii a decimal en este caso, lo que cambia en el resultado es que el valor que se
mostrará será de tipo carácter ya que no se hará la conversión.

NOTA: Los demás puntos se anexan junto con la solución al cuestionario de laboratorio.
CARLOS GODOY – DANILO SARRIA – JUAN PABLO FRANCO
PRIMER INFORME: MICROS II 2016
UNIVERSIDAD DEL VALLE

CONCLUSIONES

 La práctica es muy importante en nuestro proceso de formación dado que con ella se llega
a interiorizar mucho mejor los contenidos vistos en clase.
 Son muy interesantes los retos planteados en este laboratorio, con ellos nuestra parte
creativa y constructiva se desarrolla mucho más.
 El manejo del PIC, del LCD y del teclado matricial, se fortalecen más con este tipo de
practicas.
 La utilidad del microcontrolador es muy amplia
 El acompañamiento del profesor en el laboratorio fue un buen aporte a la hora de realizar el
montaje que ya se traía en el esquemático simulado.
 El manejo de las instrucciones para el microcontrolador, la construcción de los códigos
planteados y la implementación práctica, lleva al estudiante a mejorar tanto en lo
académico, como en la interiorización de muchos conceptos.

Potrebbero piacerti anche