라즈베리 파이 GPIO 강좌 : 05 . Input 테스트 ( 스위치 입력 , C 언어 ) – Raspberry Pi Village 
 Home » 산딸기 가지 고 놀 기 » 라즈베리 파이 GPIO 강좌 : 05 . Input 테스트 ( 스위치 입력 , C 언어 ) 
 라즈베리 파이 GPIO 강좌 : 05 . Input 테스트 ( 스위치 입력 , C 언어 ) 
 : 라즈베리 파이 GPIO 를 다루 어 보 기 로 하 겠 다 . 이번 강좌 에서 는 GPIO 의 Input 기능 을 테스트 하 기 로 하 자 . 이 를 위해서 는 이전 “ 04 . Output 테스트 ( LED 출력 , C 언어 ) ” 강좌 에서 처럼 간단히 LED 를 연결 하 고 , 추가 로 스위치 회로 를 추가 로 해 주 도록 하 자 . 이 스위치 의 On / Off 신호 를 입력 신호 로 받 고 LED 를 키 고 끄 기 는 프로그램 을 해 볼 것 이 다 . 사용 언어 는 C 언어 이 다 . 
 그리고 이번 에 는 “ Gordons Projects ” 라는 블로그 를 운영 하 는 곳 에서 C 언어 를 지원 하 는 “ wiringPi ” 라이브러리 를 이용 할 예정 이 다 . 설치 방법 은 이전 강좌 인 “ 라즈베리 파이 GPIO 강좌 : 04 . Output 테스트 ( LED 출력 , C 언어 ) ” 를 참조 하 도록 하 자 . 
 3 . 스위치 회로 
 : 이번 GPIO Output 테스트 에 사용 될 GPIO 는 18 번 이 다 . 이 는 P 1 헤더 핀 의 12 번 핀 에 해당 된다 . 회로도 는 아래 와 같이 구성 하 도록 하 자 . 브레드보드 에서 작업 해도 되 고 , 별도 의 기판 에 납땜 을 해도 좋 다 . 
 아래 의 회로도 는 GPIO 18 번 에 연결 된 스위치 의 On / Off 의 Input 값 으로 받 을 수 있 도록 스위치 한 개 와 저항 10 K 옴 하나 로 구성 된 간단 한 풀 업 스위치 회로 이 다 . 스위치 가 On 이 면 Low 값 을 받 고 이 를 프로그래밍 적 으로 LED 가 On 이 되게 하 고 , 스위치 가 Off 이 면 High 값 을 받 게 되 어 LED 를 Off 시키 려는 목적 으로 구성 하 였 다 . 
 : 이번 스위치 테스트 는 C 언어 로 작성 해 보 고자 한다 . 매우 간단 하 니 천천히 따라 해 보 자 . 우선 , 위 와 같 은 회로 를 구성 한 후 전원 을 넣 고 , 라즈베리 파이 를 구동 하 자 . 자 ~ 그럼 쉘 에서 아래 와 같이 프로그램 을 작성 하 여 스위치 로부터 입력 값 을 받 아 LED 를 켜 보 도록 하 자 . 
 1 ) 자신 의 작업 폴더 생 성 및 이동 ( 이전 강의 에서 생성 하 였 다면 생략 ) 
 mkdir gpio - test 
 cd gpio - test 
 # define SW 1 / / BCM _ GPIO 18 
 # define LED 1 4 / / BCM _ GPIO 23 
 # define LED 2 5 / / BCM _ GPIO 24 
 위 내용 은 GPIO 18 번 으로부터 입력 받 은 값 이 Low 이 면 GPIO 23 번 , 24 번 핀 에 연결 된 LED 를 모두 ON 시킨 후 , 1 초 대기 한다 . 그 후 다시 Off 시키 는 내용 이 다 . 그 후 다시 반 복문 for 문 으로 돌아와서 마찬가지 로 GPIO 18 번 의 스위치 값 을 받 아 처리 하 는 내용 이 다 . 위 와 같이 내용 을 전부 입력 해 주 고 , “ gpio - test 2 . c ” 라는 이름 으로 저장 해 주 자 . 
 gcc - o gpio - test 2 gpio - test 2 . c - lwiringPi 
 : 위 의 컴파일 명령 을 실행 해 주 면 gpio - test 2 이 라는 실행 파일 이 생성 된다 . 
 : GPIO 관련 프로그램 실행 은 항상 루트 권한 으로 실행 해 줘야 한다 . 작성 한 프로그램 을 실행 해 보 자 . 스위치 의 On / Off 신호 에 따라 LED 가 켜 지 고 꺼지 는 모습 을 확인 할 수 있 을 것 이 다 . 
 sudo . / gpio - test 2 
 [ 14 ] “ bcm 2835 ” , http : / / www . open . com . au / mikem / bcm 2835 / 
 30 / 04 / 2013 표 윤석 산딸기 가지 고 놀 기 라즈베리 파이 GPIO 강좌 : 05 . Input 테스트 ( 스위치 입력 , C 언어 ) 에 댓글 닫힘 	 GPIO 기초 강좌 , 산딸기 GPIO 
 « Pi - mame machine make in the RaspberryPi 
 라즈베리 파이 스마트 안경 ( R - pi Smart Glasses ) »