Envío Gratis en compras mínimas de $1200 mxn Enviamos a toda la Republica Mexicana
Buscar

Práctica 2 con Miuva. LED-RGB con pulsador PIC C

En la práctica anterior aprendimos a utilizar el el led RGB de Miuva así como enviar a un puerto un “0” o un “1” lógico, en esta ocasión utilizaremos el pulsador de propósito general que tiene Miuva y aprenderemos a leer el valor del mismo para realizar una acción, para esta práctica será encender un color del led RGB.

El pulsador de Miuva está ubicado en el pin 0 del puerto C, por lo tanto lo primero que se debe hacer es definir este pin como una entrada, mediante la función set_tris_c().

Para recibir información del estado de un pin se utiliza la siguiente función:

input_state(PIN_C0);    //Regresa la información del estado del pin C0

 

Por lo tanto crearemos un ciclo de condición if en el cual se entrará cuando la función input_state() nos devuelva un “1” lógico.

Con esto podemos crear el siguiente código.

Código para PIC C:

#include <18f4550.h>          // la librería del PIC
#Fuses HSPLL, NOWDT, NOPROTECT, NOLVP, NODEBUG, USBDIV, PLL2, CPUDIV1, VREGEN
#use delay (clock=48M)        //Seleccionamos la frecuencia de reloj de 48MHz
#use standard_io(C)        //Preconfiguramos el puerto C
#use standard_io(e)        //Preconfiguramos el puerto E
void main(){               //Inicio de la función principal
   set_tris_e(0x00);       //Configuramos puerto E como salida 
   set_tris_C(0x01);       //Configuramos pin C0 como entrada
   output_e(0x07);         //Apagamos el LED RGB
   while(true){            //Inicia ciclo infinito
      if (input_state(PIN_C0)){  //Revisamos el estado del PIN_C0
         output_low(PIN_E1);     //Encender LED
         delay_ms(100);          //Esperamos 100 milisegundos
      }
      else{                      //Si no se presionó el pulsador
         output_high(PIN_E1);    //Apagar LED
      }
   }
}

Observa el video demostrativo