Ver Mensaje Individual
  #5  
Antiguo 14-01-2013
Mikro-77 Mikro-77 is offline
Registrado
NULL
 
Registrado: ene 2013
Posts: 6
Reputación: 0
Mikro-77 Va por buen camino
Código Delphi [-]
program pascalI2c;

 var EE_adr, EE_data : byte; jj : word;

 begin 
  I2C_init(100000); // initialize full master mode 
  TRISD := 0; //  designate portd as output 
  PORTD := $ff; // initialize portd 
  I2C_Start;  // issue I2C start signal 
  I2C_Wr($a2); // send byte via I2C(command to  24cO2) 
  EE_adr := 2; 
  I2C_Wr(EE_adr); // send byte(address for EEPROM) 
  EE_data := $aa; 
  I2C_Wr(EE_data); // send data to be written 
  I2C_Stop; //  issue I2C stop signal 
  for jj:=0 to 65500 do nop; // pause while EEPROM  writes data 
  I2C_Start; // issue I2C start signal 
  I2C_Wr($a2); // send  byte via I2C 
  EE_adr := 2; I2C_Wr(EE_adr); // send byte(address for  EEPROM) 
  I2C_Repeated_Start; // issue I2Csignal repeated start  
  I2C_Wr($a3); // send byte(request data from EEPROM) 
  k := I2C_rd(1); //  read the data 
  I2C_Stop; // issue I2C_stop signal 
  PORTD := k; // show  data on PORTD
 
   while true do // endless loop 
    nop; 
end.
Responder Con Cita