2016년 5월 18일 수요일

Raspberry Pi - Button을 이용한 GPIO 입력 테스트

Raspberry Pi의 GPIO를 이용하여 버튼이 눌러졌을 때 LED를 켜는 테스트를 해 보자. 테스트를 위해서는 기본적으로 wiringPi가 설치되어 있어야 한다.

테스트 회로는 그림과 같이 Push Button을 눌렀을 때 1번 Pin에 High가 인가 되도록 5V를 연결하였으며 10kΩ의 Pull-down 저항을 연결하였다. LED는 버튼이 눌러진 것을 확인하기 위해 연결하였다.

※ LED의 극성을 반대로 연결하면 LED가 고장 나므로 주의해서 연결한다. 길이가 짧은 쪽이(-), 긴 쪽이 (+)이다. 

회로 및 구성

  • Raspberry Pi 2 Model B
  • Push Button
  • LED (동작 전압: 1.8V ~ 2.3V)
  • 저항 250Ω, 10kΩ




테스트를 위해 buttonTest.c 코드를 다음과 같이 작성한다.

#include <wiringPi.h>

#define LED 4
#define BUTTON 1

int main(void)
{
  if(wiringPiSetup() == -1)
    return 1;

  pinMode(LED, OUTPUT);
  pinMode(BUTTON, INPUT);

  digitalWrite(LED, 0);
  int input = 0;

  for(;;)
  {
    if(digitalRead(BUTTON))
      digitalWrite(LED, 1);
    else
      digitalWrite(LED, 0); 

    delay(100);
  }

  return 0;
}

코드를 컴파일 하고 실행 시킨다.

pi@raspberrypi ~$ gcc -o buttonTest buttonTest.c -lwiringPi
pi@raspberrypi ~$ sudo ./buttonTest


버튼을 누르면 LED에 불이 들어오는 것을 확인할 수 있다.

Related Posts:

  • Olog Mysql Database SchemaThis is a schema for MySQL Olog database. Just copy and make a file such as "olog.sql". following command can load the file. mysql> source olog.sq… Read More
  • Raspberry Pi - PIR Motion Sensor 테스트PIR Motion Sensor는 적외선으로 움직임을 감지하는 센서로 일정한 범위 내에 적외선을 방출하는 물체가 움직일 경우 이를 감지하여 출력 신호로 내보낸다. 센서에 대한 자세한 사양은 다음 웹페이지에서 확인할 수 있으며 테스트를 위해서는 wiringPi가 설치되어… Read More
  • Rasbperry Pi - wiringPi 설치Raspberry Pi에서 GPIO Port를 사용할 수 있는 방법 중 하나는 wiringPi를 이용하는 것이다. wiringPi에 대한 기본적인 사용 방법 및 wiringPi 홈페이지에서 확인할 수 있다. http://wiringpi.com/ wiringPi는 소… Read More
  • Debian Jessie에서 Java 설치update-alternatives 명령을 사용하면 새로운 버전의 Java를 추가 및 변경할 수 있다. 우선 현재 사용하고 있는 Java 버전을 확인한다. scwook@debian:~$ java -version openjdk version "1.8.0_72-i… Read More
  • Raspberry Pi - Button을 이용한 GPIO 입력 테스트Raspberry Pi의 GPIO를 이용하여 버튼이 눌러졌을 때 LED를 켜는 테스트를 해 보자. 테스트를 위해서는 기본적으로 wiringPi가 설치되어 있어야 한다. 테스트 회로는 그림과 같이 Push Button을 눌렀을 때 1번 Pin에 High가 인가 되도록 … Read More

0 개의 댓글:

댓글 쓰기