1. 라즈베리파이 업데이트 및 업그레이드 실시

 

  sudo apt-get update

  sudo apt-get upgrade 

 

2. 소스관리툴 git 를 다운로드 (오픈소스 https://github.com/WiringPi/WiringPi 의 소스를 가져오기위해)

 

  sudo apt-get install git-core

 

3. “wiringPi” 프로젝트를 받아온다.

 

  git clone git://git.drogon.net/wiringPi

 

4. 빌드 및 설치

 

  cd wiringPi
  ./build

 

5. 아래의 명령어로 설치 확인

  gpio -v gpio readall

  

gpio readall을 해서

 

핀 구조가 나오면 wiringPi 라이브러리 설치 완료가 된것이다.

 

 

LED 회로를 간단하게 구성

 

 

vi에디터를 이용해 C언어를 제작

#include <stdio.h>
#include <wiringPi.h> // 라즈베리파이의 GPIO를 하기위해 아까 받아놓은 라이브러리를 사용

 

#define LED1 4         // GPIO 23 의 핀번호를 정의하기위해 #define 사용

 

int main(void)
{

 if (wiringPiSetup () == -1)
 return 1;                        

 // wiringPisetup() 함수는 라즈베리파이에서 현재 핀 번호가 제대로 다 매핑되어 GPIO기능을 할 수 있는지 검사하는 함수 [-1일땐 GPIO 작업 불능]

 

 pinMode (LED1, OUTPUT); // pinMode()는 보통 센서를 정의하고 어디에 사용 될건지 명시

 

 for(;;)
 {
  digitalWrite(LED1, 1);  // digitalWrite() 혹은 digitalRead()로 센서로 부터 데이터를 읽거나 출력

  delay(1000);

  digitalWrite(LED1, 0);  // 1은 ON 2는 OFF

  delay(1000);
 }
 return 0;
}
 

 

프로그램 컴파일

 

gcc -o gpio-test1 gpio-test1.c -lwiringPi

 

 

위의 컴파일 명령을 실행해 주면 gpio-test1 이라는 실행 파일이 생성

 

5. 프로그램 실행

 GPIO 관련 프로그램 실행은 항상 루트 권한으로 실행 (sudo 명령어)

GPIO23에 연결된 LED가 켜진 후, 1초 대기, 그리고 두 LED가 모두 꺼지는 작업을 반복 수행

프로그램 종료는 Ctrl + C 로 종료

 

 

 

sudo ./gpio-test1

.

 

 

+ Recent posts