기본적으로 WiringPi를 해당 블로그에서 소개한 방식대로 설치해 봤고 코딩은 깜박이는 거라서 간단히 29번을 이용헤 전류를 보냈다 안보냈다 하면서 LED를 깜박이는 효과를 부여하여 정상적으로 GPIO를 제어해 보았습니다.
sudo apt-get install git-core
git clone git://git.drogon.net/wiringPi
cd wiringPi
./build
gpio -v gpio readall -> 설치 확인
gpio readall -> 현재 GPIO 핀 확인
실험 폴더를 하나 생성하고 거기에 프로그래밍을 한다.
cd gpiotest -> 폴더 생성
편집창 열기 : 해당 파일명이 없으면 새롭게 생성한다.
sudo nano ledblink.c
코딩
아래 아두이노 코드와 별반 차이가 없어 친근감이 느껴지더군요.
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(500);
digitalWrite(LED_BUILTIN, LOW);
delay(500);
}
pinMode(), digitalWirte()로 대충 아두이노에서 쓰던 방식을 그대로 여기서 코딩하면 거부감 없이 사용할 수 있을 것 같다. 회로도는 핀을 젤 끝 29번을 사용하여 LED를 제어를 해 보았어요.
컴파일
gcc -o 실행네임 소스네임.c -lwiringPi
gcc -o testblink ledblink.c -lwiringPi
실행
sudo ./testblink
while(1)로 무한루프 돌기 때문에 창 안에서 중단할때는 CTRL+C로 탈출하면 된다.
암수 전선이 몇개 안되서 실험을 RaspberryPi에서 아두이노키트에 가지고 있던걸 다 실험해봐야 하는데 가지고 있는 전선이 수수 전선만 있어서 전선만 따로 사기가 애매해서 어짜피 GPIO 제어의 첫단추 LED 제어가 무사히 성공했으니 다른 기본제어는 아두이노랑 별 차이가 없기 때문에 원리적 접근만 해봐야 겠네요.