Memória (24LC256) illesztése I2C buszon

Az előz bejegyzésben felépítettük az I2C-hez szükséges alapokat. Most nézzük, hogyan lehet egy EEPROM-ot kezelni Pythonban.

A program részletes megértéséhez érdemes átolvasni a memória adatlapját.

    import smbus
    address = 0x50    #24LC256 i2c címe - A2:A1:A0 = 0
    regmsbyte = 0     #MSB cím - integer(0-128)
    reglsbyte = 0     #LSB cím -integer(0-256)

    # Egy byte olvasása 24LC256-ból (Random Read operation)
    bus.write_byte_data(address,regmsbyte,reglsbyte)  #eszköz cím és regisztercím "írás"
    datalsbyte = bus.read_byte(address)               #egy byte kiolvasása a memóriából

    # bájt(ok) írása memóriába [1-32db]
    datalsbyte = 48      #adatok amit kiírunk
    datamsbyte = 49

    writestring = [reglsbyte, datalsbyte, datamsbyte]
    bus.write_i2c_block_data(address,regmsbyte,writestring)