아두이노 I2c Master
I2C Master
는 ATmega328P에 내장된 TWI(I2C) 통신을 기반으로 운영되는 Master 입니다.
시작하기
아두이노IDE에서 소스를 컴파일 및 보드에 전송을 합니다. 연결된 컴퓨터의 시리얼 통신을 통하여 I2C_Master와 데이터를 주고 받을 수 있습니다.
시리얼통신
기본적인 통신은 시리얼 방식을 이용합니다. 시리얼 통신창에서 명령을 입력하면 Master 또는 연결된 Slave 노드로 데이터를 재선송 합니다.
전원을 인가하면 다음과 같이 통신이 화면에 출력됩니다.
도움말 모드
시리얼 모니터에서 ?
를 입력하면 기능 도움말을 볼 수 있습니다.
?
부저 소리내기
시리얼 모니터 입력으로 연결된 부저에 소리를 출력할 수 있습니다.
beep=500
빌트인 LED 제어하기
시스템이 동작하는 동안에는 LED 가 깜빡입니다.
깜빡이는 LED의 속도를 제어할 수 있습니다.
led=300
LCD 출력하기
연결된 LCD에 시리얼 모니터로 입력받은 텍스트를 출력할 수 있습니다.
lcd=hello/world is now
구분기호 /
를 이용하여 첫번째 줄과 두번째 줄을 나누어서 출력할 수 있습니다.
블루투스
블루투스 모듈 HC06을 아두이노핀 6
,7
번에 입력합니다.
블루투스 모듈에 명령을 입력할때에는 +
프리픽스 코드를 같이 사용합니다.
+AT
+
기호가 붙은 명령들은 아두이노에 연결된 블루투스로 데이터를 재전송합니다.
응답메시지
시리얼 모니터에서 블루투스로 전송을 하는 경우에는 +>
출력기호가 붙습니다. 반대로 블루투스에서 시리얼모니터로 전송받을 때에는 +<
기호가 붙습니다.
블루투스 모듈 이름 변경하기
AT+NAME
명령을 통하여 블루투스의 이름을 변경할 수 있습니다.
+AT+NAME변경할이름
Master Ready!
> INPUT : +AT+NAMEI2C_MASTER
command = +AT+NAMEI2C_MASTER
+> OKsetname
모듈과 통신하기
i2c는 Master에 127개의 모듈을 연결할 수 있습니다.
연결된 모듈에 명령을 전송하기 위해서는 번호:
를 같이 사용합니다.
예를들어
1:beep=500
1번 모듈에 연결된 beep에 500ms 초동안 음을 발생하라는 명령을 전송합니다.