jueves, 25 de octubre de 2012

sdcc easypic2 pcf8583

pcf8583.h
#include <pic16f877a.h>

void unidad_decena(unsigned int dato,unsigned int *unidad, unsigned int *decena);

void hora(unsigned int LED){
   unsigned int unidad,decena;
   unsigned char dato;
   //HORA
   i2c_read_byte(0b10100010,0x4,&dato);   
   unidad_decena(dato,&unidad,&decena);
   print_xy(48,LED);lcd_write(BCD_ASCII(decena),LED);
   print_xy(49,LED);lcd_write(BCD_ASCII(unidad),LED);
   //MINUTOS
   i2c_read_byte(0b10100010,0x3,&dato);   
   unidad_decena(dato,&unidad,&decena);
   print_xy(51,LED);lcd_write(BCD_ASCII(decena),LED);
   print_xy(52,LED);lcd_write(BCD_ASCII(unidad),LED);   
   //SEGUNDOS
   i2c_read_byte(0b10100010,0x2,&dato);   
   unidad_decena(dato,&unidad,&decena);
   print_xy(54,LED);lcd_write(BCD_ASCII(decena),LED);
   print_xy(55,LED);lcd_write(BCD_ASCII(unidad),LED);
}
  
void unidad_decena(unsigned int dato,unsigned int *unidad, unsigned int *decena){
  *unidad=dato & 0x0f;
  *decena=(dato>>=4);
}

No hay comentarios:

IRC

#freenode->#usljujuy

Seguidores

Eventos n_n

Tira Ecol Nano,Bilo y Luca