

#include <30F3013.h>


#fuses XT, PR, NOWDT, NOPROTECT, NOWRT, NOMCLR,NOBROWNOUT
#use delay(clock=3582056)
#use fast_io(b)                           //Optimizamos E/S del PORTB
#use fast_io(c)                           //Optimizamos E/S del PORTC
//#define use_portb_lcd TRUE         //definir portb lcd

#define LCD_RW_PIN PIN_B3

#include <lcd.c>               //libreria manejo lcd



#use rs232(UART2, baud=9600, xmit=PIN_F5, rcv=PIN_F4, parity=N, bits=8)


#include <ADE7753.h>

int32 Vrms;


void main() {
setup_spi(SPI_MASTER | SPI_L_TO_H | SPI_CLK_DIV_4 );
setup_adc_ports(sAN8);// Configuración ADC dsPIC 30F3013
setup_adc(ADC_CLOCK_INTERNAL);
  long variable;
  char a;
  
  
   lcd_init();
  output_low(PIN_B3);
printf("\fHola\n");

 
 setup_oscillator(OSC_INTERNAL);//selecciono oscilador interno

 While(TRUE)
  {
 
  

  SET_ADC_CHANNEL(8);
   delay_us(20);
   variable = READ_ADC();
   variable=variable/220;
   
    
 //  a=getc(); 
read_ADE7753((int8)Vrms,_VRMS); //Leemos el Vrms del ADE7753
   //printf("\f%c",a);
   lcd_putc("f");
   printf(lcd_putc,"\fVariable: %d\n",Variable); 
   printf("\fVariable: %d",Variable); 
   printf("\nVariable2: %d\n",Vrms); 
   //lcd_putc("Tincho..!!"); 
   //printf(lcd_putc,"RSR232: %c\n",a); 
   printf(lcd_putc,"\nVariable2: %d\n",Vrms);
  
  
 
  output_high(PIN_d9);
  delay_ms(500);
  output_low(PIN_D9);
  delay_ms(200);
     }
}




