nRF51822의 I2C 테스트를 위해 가장 쉽게 테스트 해 볼 수 있는 I2C GPIO확장 모듈 [PCF8574 SSM EVM] 보드를 테스트 해 보았다.
[nRF51822 xBee EVM] 보드의 I2C 는 아래와 같이 할당되어 있다.
SCL -> IO21
SDA -> IO20
Arduino에서 PCF8574 제어를 위한 기본 코드를 실행하면 정상적으로 동작하는것을 확인 할 수 있다.
#include <Wire.h>
#define LED_PIN1 13
#define PCF_8574_ADDR 0x20
void write8(uint8_t Address, uint8_t Value)
{
Wire.beginTransmission(Address);
Wire.write(Value);
Wire.endTransmission();
}
void setup()
{
pinMode(LED_PIN1, OUTPUT);
Serial.begin(115200);
Serial.println("PCF8574 test");
Wire.begin();
Serial.println("write.. ");
write8(PCF_8574_ADDR, 0xff);
Serial.println("OK");
}
int cnt = 0;
void loop()
{
if(cnt>8)cnt = 0;
write8(PCF_8574_ADDR, ~(1<<cnt++));
Serial.println(cnt);
digitalWrite(LED_PIN1, 0);
delay(100);
digitalWrite(LED_PIN1, 1);
delay(100);
}
반응형