Advertisement
AlexShu

24LC01B and Arduino Due

Jun 2nd, 2015
1,313
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.95 KB | None | 0 0
  1. /*
  2. Alexshu.com
  3.  
  4. Simple code for reading and writing integers with i2c eeprom
  5. Tested with 24LC01B and Arduino Due
  6. */
  7.  
  8. #include <Wire.h>
  9.  
  10. #define EEPROM_ADDR 0x50
  11.  
  12. void setup()
  13. {
  14.   Wire.begin();
  15.   Serial.begin(9600);
  16.  
  17.   Serial.println("Reading...");
  18.  
  19.   eeprom_write(0,100);
  20.   eeprom_write(0,100);
  21.  
  22.   Serial.println("Reading...");
  23.  
  24.   Serial.println(eeprom_read(0));
  25.   Serial.println(eeprom_read(1));
  26.  
  27. }
  28.  
  29. void eeprom_write(int address, int value){
  30.   Wire.beginTransmission(EEPROM_ADDR);
  31.   Wire.write(address);              
  32.   Wire.write(value);            
  33.   Wire.endTransmission();      
  34.   delay(10);  
  35. }
  36.  
  37. int eeprom_read(int address){
  38.   int value;
  39.   Wire.beginTransmission(EEPROM_ADDR);
  40.   Wire.write(address);            
  41.   Wire.endTransmission();      
  42.  
  43.   Wire.requestFrom(EEPROM_ADDR,1);    
  44.   while(Wire.available())    
  45.   {
  46.     value = Wire.read();          
  47.   }
  48.   return value;
  49. }
  50.  
  51. void loop()
  52. {
  53.  
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement