English page
I2C接続のMACアドレス書き込み済みEEPROM 24AA025E48 (Microchip社製)を実装したモジュールです。Grove互換コネクタを搭載しています。
Ethernet、Wi-Fi、Bluetooth等のネットワーク接続デバイスに一意の48bit MACアドレス(EUI-48)を割り当てることができます。
また、MACアドレスを記載したシールを同梱しています。
各部の名称
販売
販売ページ(スイッチサイエンス)
※販売ページに表示されている在庫数のほかにも、追加の在庫を保有している場合がございます。大量注文や在庫に関する問い合わせはこちらまでご連絡ください。
内容物
- 製品本体 ×1
- MACアドレス記載シール x1
※MACアドレス記載シールは以下のように基板の裏面に貼付できるサイズです。
仕様
- 搭載IC:Microchip 24AA025E48 (SOIC-8もしくはSOT-23のいずれかのICを搭載)
- メモリ容量:2 Kbits(内ユーザ書込み可能領域:1 Kbits)
- インターフェイス:Grove互換コネクタ、スルーホール (2.54mmピッチ)
- I2C最大動作周波数:400 kHz
- 設定可能I2Cアドレス:0x50~0x53 (ショートジャンパJP2, JP3により切替)
- デフォルトI2Cアドレス:0x50
- 電源電圧:1.7V ~ 5.5V
- 最大消費電流
- 読込み時:1 mA
- 書込み時:3 mA
- 待機時:1 μA
- 外形寸法:W27 x D15 x H7 mm
資料
回路図
- v1.0:schematic-v1_0.pdf
外形寸法
DXFファイル:dimension_dxf.zip
3D CADデータ
STEPファイル:3d_step.zip
プログラム例
M5Stack Core2
配線図・サンプルコードを見る
#include <M5Core2.h>
#define MAC_24AA02Exx_DEV_ADDR 0x50
#define MAC_24AA02Exx_REG_ADDR_MAC 0xF8
void setup() {
M5.begin(true, true, true, true);
M5.Lcd.setTextSize(2);
Wire.beginTransmission(MAC_24AA02Exx_DEV_ADDR);
Wire.write(MAC_24AA02Exx_REG_ADDR_MAC);
Wire.endTransmission(false);
Wire.requestFrom(MAC_24AA02Exx_DEV_ADDR, 8);
uint8_t MAC_addr_buf[8] = {'\0'};
for(int i = 0; i < 8; i++)
MAC_addr_buf[i] = Wire.read();
// Determine whether the MAC address is EUI-48 or EUI-64
int MAC_bytes;
uint8_t MAC_addr[8] = {'\0'};
if( (MAC_addr_buf[0] == 0xFF) && (MAC_addr_buf[1] == 0xFF) ) {
MAC_bytes = 6; // EUI-48 (24AA02xE48)
memcpy(MAC_addr, MAC_addr_buf + 2, MAC_bytes);
} else {
MAC_bytes = 8; // EUI-64 (24AA02xE64)
memcpy(MAC_addr, MAC_addr_buf, MAC_bytes);
}
// print MAC address
M5.Lcd.print(8 * MAC_bytes);
M5.Lcd.println("bit MAC address");
for(int i = 0; i < MAC_bytes; i++) {
char strBuf[3];
sprintf(strBuf, "%02X", MAC_addr[i]);
M5.Lcd.print(strBuf);
if(i < (MAC_bytes - 1))
M5.Lcd.print(":");
}
M5.Lcd.println();
}
void loop() {
}
Arduino
ソースコード:24AA025Exx_sample.ino
Nucleo
NUCLEO-L476RGを利用したソースコードはこちら (IDE:SW4STM32)