(日本語) AT24C256 は、I2C EEPROM (Electrically Erasable Programmable Read-Only Memory)で、Raspberry Piは電力損失後もデータを保存および取得できます。このガイドでは、 AT24C256 Raspberry Piを使用して、配線、I2Cの有効化、Pythonを使用したデータの読み書きなど。
あなたが必要とするもの
- ラズベリーパイ (GPIOとI2Cをサポートしているモデル(例:Pi 3、 Pi 4)
- AT24C256 EEPROMモジュール
- ブレッドボードとジャンパーワイヤー
- インストールされたPython ラズベリーパイに
ステップ1:ラズベリーパイにAT24C256を配線する
AT24C256は、 プロトコルの.
[接続]
AT24C256ピン | ラズベリーピピン |
---|---|
VCC | 3.3V(ピン1) |
GND | グラウンド(ピン6) |
SDA | SDA(ピン3、 GPIO2) |
SCL | SCL(ピン5、 GPIO3) |
WP(書き込み保護) | GND(書き込み保護を無効にする) |
ステップ2: Raspberry PiでI2Cを有効にする
- Raspberry Pi設定ツールを開きます。
sudo raspi-config
- に移動します。 インターフェイスオプション>I2C それを有効にします。
- Raspberry Piを再起動する:
sudo reboot
ステップ3:必要なライブラリをインストールする
- Raspberry Piのパッケージリストを更新してください:
sudo apt update && sudo apt upgrade -y
- 必要なI2CツールとPythonライブラリをインストールします。
sudo apt install -y i2c-tools python3-smbus
- AT24C256 EEPROMがI2Cバスで検出されていることを確認します。
EEPROMは、 0x50 (またはA0-A2のピン構成に基づく別のアドレス)。sudo i2cdetect -y 1
ステップ4: AT24C256へのデータの読み書き
AT24C256はデータを格納します。 メモリの256KB各バイトはメモリアドレスを使用してアクセスされます。
EEPROMへのデータの書き込み
import smbus2
import time
EEPROM_ADDRESS = 0x50 # Default I2C address of AT24C256
bus = smbus2.SMBus(1) # Use I2C bus 1
def write_byte(address, data):
bus.write_i2c_block_data(EEPROM_ADDRESS, address, [data])
time.sleep(0.05) # EEPROM needs time to write
# Write data (example: store 'A' at address 0x00)
write_byte(0x00, ord('A'))
print("Data written successfully!")
EEPROMからデータを読み込む
def read_byte(address):
return bus.read_byte_data(EEPROM_ADDRESS, address)
# Read the stored byte at address 0x00
stored_value = read_byte(0x00)
print(f"Stored Data: {chr(stored_value)}")
ステップ5: AT24C256のアプリケーション
- データロギング:オフラインアクセスのためにセンサーデータを時間をかけて保存します。
- 構成ストレージ:システム設定または校正データを保存します。
- セキュアな認証:暗号化されたキーまたは認証トークンを保存します。
- IoTプロジェクト:Internet of Thingsアプリケーションの永続ストレージを有効にします。
トラブルシューティング
-
EEPROMが検出されない:
- 配線を確認し、SDA/SCL接続を確認します。
- [実行]
sudo i2cdetect -y 1
EEPROMのI2Cアドレスを確認します。
-
読み取り/書き込み操作が正しくない:
- 確認する 書き込み保護(WP) は、 接地された 書くことを可能にするため。
- 遅延を導入する(
time.sleep(0.05)
)EEPROM書き込み操作が完了するようにします。
-
I2C通信エラー:
- バス上の競合するI2Cアドレスを確認します。
- 確認する
smbus2
使用して適切にインストールされているpip3 install smbus2
.
おわりに
AT24C256 EEPROMはシンプルで強力な方法です。 データを永続的に保存する ラズベリーパイで。のためにかどうか データロギング、設定の保存、またはIoTアプリケーションこのガイドは、EEPROMストレージと効果的に対話するために必要な基礎知識を提供します。より大きなデータセットの読み書きを試して、その可能性を最大限に探りましょう! 🚀