• ST-211

    04/01/2023 at 00:08 0 comments

    /*
    320  160 80  40  20  10  5  0    0   1   1   0   0  1 =   $1.25  = 0x19 =25

     0    0   1   1   1   1  0 =   $1.50  = 0x1E = 30

    1 0 0 1 0 0 1 365
    */

    #include <Wire.h>

    void eeprom_i2c_write(byte address, byte from_addr, byte data) {
      Wire.beginTransmission(address);
      Wire.write(from_addr);
      Wire.write(data);
      Wire.endTransmission();
    }

    byte eeprom_i2c_read(int address, int from_addr) {
      Wire.beginTransmission(address);
      Wire.write(from_addr);
      Wire.endTransmission();

      Wire.requestFrom(address, 1);
      if(Wire.available())
        return Wire.read();
      else
        return 0xFF;
    }

    void setup() {
      Wire.begin();
      Serial.begin(9600);

    eeprom_i2c_write(B01010000, 72, 30); //$1.50
    delay(100);
    eeprom_i2c_write(B01010000, 74, 35);//$1.75
    delay(100);
    eeprom_i2c_write(B01010000, 76, 40);//$2.00
    delay(100);
      for(int i = 0; i < 10; i++) {
        eeprom_i2c_write(B01010000, i, 255);
        delay(100);
      }

      Serial.println("Read to memory!");
       for(int i = 0; i < 80; i++) {
        byte r = eeprom_i2c_read(B01010000, i);
        Serial.print(i);
        Serial.print(" - ");
        Serial.print(r);
        Serial.print("\n");
        delay(100);
       }
    }

    void loop() {
     
      }