//codigo by Christian N.H
#include <18F4550.h>
#device adc=10
#FUSES INTRC_IO,MCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL1,CPUDIV1,NOVREGEN
#use delay(clock=4000000)
#include <math.h>
#use i2c(master, sda=PIN_B0, scl=PIN_B1,slow)
//#use i2c(MASTER, SDA=PIN_B0, FAST, SCL=PIN_B1, FORCE_HW)//NOFORCE_SW)
#include <C:\Users\JUAN\Desktop\alarma_pic18\MODIFICACION\LCD4x20.c> ///////// CAMBIAR POR LAS
#use standard_io(C)
#use fast_io(a)
#use fast_io(d)
int a,b,c,d;
void main(){
while(TRUE)
{
lcd_init();
i2c_start(); //condicion de inicio
i2c_write(0x0A); //direccion del esclavo con el que haremos la comunicacion 1011101
delay_ms(10);
i2c_write('t'); //seleccion de canal analogo(t-canal 0,k-canal 1,h-canal 2,y-canal 3)
i2c_stop(); //finalizacion de la comunicacion
delay_ms(100); //introducimos retardo para que no este constantemte escribiendo
i2c_start();
i2c_write(0x0b);
delay_ms(10);
a=i2c_read(0);
i2c_stop();
i2c_start(); //condicion de inicio
i2c_write(0x0A); //direccion del esclavo con el que haremos la comunicacion 1011101
delay_ms(10);
i2c_write('k'); //seleccion de canal analogo(t-canal 0,k-canal 1,h-canal 2,y-canal 3)
i2c_stop(); //finalizacion de la comunicacion
delay_ms(100); //introducimos retardo para que no este constantemte escribiendo
i2c_start();
i2c_write(0x0b);
delay_ms(10);
b=i2c_read(0);
i2c_stop();
i2c_start(); //condicion de inicio
i2c_write(0x0A); //direccion del esclavo con el que haremos la comunicacion 1011101
delay_ms(10);
i2c_write('h'); //seleccion de canal analogo(t-canal 0,k-canal 1,h-canal 2,y-canal 3)
i2c_stop(); //finalizacion de la comunicacion
delay_ms(100); //introducimos retardo para que no este constantemte escribiendo
i2c_start();
i2c_write(0x0b);
delay_ms(10);
c=i2c_read(0);
i2c_stop();
i2c_start(); //condicion de inicio
i2c_write(0x0A); //direccion del esclavo con el que haremos la comunicacion 1011101
delay_ms(10);
i2c_write('y'); //seleccion de canal analogo(t-canal 0,k-canal 1,h-canal 2,y-canal 3)
i2c_stop(); //finalizacion de la comunicacion
delay_ms(100); //introducimos retardo para que no este constantemte escribiendo
i2c_start();
i2c_write(0x0b);
delay_ms(10);
d=i2c_read(0);
i2c_stop();
lcd_gotoxy(2,1);
printf(lcd_putc,"\btemp=%01.1u",a);
delay_ms(50);
lcd_gotoxy(10,1);
printf(lcd_putc,"\btemp=%01.1u",b);
delay_ms(50);
lcd_gotoxy(2,2);
printf(lcd_putc,"\btemp=%01.1u",c);
delay_ms(50);
lcd_gotoxy(10,2);
printf(lcd_putc,"\btemp=%01.1u",d);
delay_ms(1000);
}
}