하드웨어 설계/라즈베리파이 및 아두이노

라즈베리파이 GPIO 핀배치도 (펌)

가카리 2014. 5. 30. 15:15
반응형

라즈베리파이 GPIO 강좌

라즈베리파이 GPIO 강좌 : 01. GPIO 소개 및 핀배치

2013.03.01

 

1. 라즈베리파이 GPIO 소개

소형 PC 라즈베리파이는 USB, 이더넷, HDMI 출력, 영상출력, 사운드출력 등의 기능을 갖고 있는 하나의 작은 컴퓨터이다. 가격이 저렴하고, 작은 크기이지만 그 성능은 간단한 OS를 돌리고 동영상을 보고, 인터넷 서핑을 하는 목적에는 전혀 문제가 없는 완전한 컴퓨터인 것이다.

더욱이, 재미있는 점은 단일 마이크로세서와 같이 입출력 신호를 제어할 수 있는 포트가 있다는 것이다. 범용적인 목적으로 입/출력을 담당하는 GPIO (General Purpose Input / Output) 를 가지고 있으며, SPI 통신, I2C 통신, UART 통신 등도 갖추고 있다. 이는 마이크로프로세서를 다루는 사람들에게는 흥미로운 일이 아닐 수 없다. 왜냐하면 일반적으로 마이크로세서는 간단한 리얼타임OS(RTOS) 정도 올리던 것을 전부였는데 라즈베리파이는 데비안계열의 기능 축소판이긴 하지만 리눅스 OS를 올릴 수 있으며, 더욱이 자신이 원하는 포트 제어를 할 수 있기 때문이다. 물론, 제어전용 마이크로프로세서에 비해 리눅스를 기반으로 하고 있기에 시스템 부하에 따라 프로그램 실행 속도가 늦어지거나 실행 지점이 다르다는 등 실시간 제어가 안된다는 것이 문제 이기는 하지만 그런 제약이 없는 프로젝트라면 사용할 만 할 듯 싶다. 추가로 ADC, PWM, 인터럽트 기능이 없는 것도 조금 아쉽지만 제한된 범위에서의 제어에는 문제 없을 듯 싶다.

 

 

 2. 라즈베리파이 외부핀

현재 라즈베리파이 모델B (버전2, 512RAM) 의 경우, 외부핀은 26핀으로 구성되어 있다. (별도로 P5 헤더 및 카메라핀 등 헤더핀이 삽입되어 있지는 않지만 공간을 할당해 놓은것은 제외한다.) 이 중, UART, SPI, I2C 관련핀들은 GPIO 목적으로도 사용되기도 하고 각 관련된 특수 기능을 수행하기도 한다. 아래는 각 핀을 배치에 따라 나열해 본 것이다.

 

위 그림에서 알 수 있듯이 라즈베리파이의 P1 헤더핀에는 전원과 관련하여 9핀이 사용되고 있고, UART 관련 총2핀, I2C 관련 총2핀, SPI 관련 총5핀이 사용되고 있다. 또한, GPIO 전용으로 총 8핀으로 총 26개 핀으로 구성되어 있다. 물론, UART 관련 총2핀, I2C 관련 총2핀, SPI 관련 총5핀 는 각 주어진 기능을 수행하기도 하지만, GPIO로도 이용가능한 핀들이기에 GPIO는 총 17핀이다.

? 5v : 총 2핀

? 3.3v : 총 2핀

? GND : 총 5핀

? TXD, RXD : UART 관련 총2핀

? SDA, SCL : I2C 관련 총2핀

? MOSI, MISO, SCKL, CE0, CE1 : SPI 관련 총5핀

? GPIO 4, 17, 18, 22, 23, 24, 25, 27 : GPIO 전용 총 8핀


더욱이, 위의 그림의 빨간 동그라미의 부분은헤더핀이 삽입되어 있지는 않지만 헤더핀을 삽입하면 별도의 8개핀을 추가로 이용가능하다. 이는 핀번호 순서대로 5v,3.3v, GPIO28, 29, 30, 31, GND, GND 로 구성되어 있다. 본 강좌에서는 별도로 다룰 예정은 아니지만 필요한 사람은 헤더핀 납땜 후 사용하면 크기도 작도 간단히 사용하기 좋을 듯 싶다.

그 이외에도 리셋을 달 수 있는 P6 헤더, JTAG 과 관련된 P2, P3 헤더 등도 있지만 GPIO 강좌와는 관련이 없으니 설명은 생략하도록 한다.

마지막으로, 종합하면 라즈베리파이에서 사용할 수 있는 GPIO는 2, 3, 4, 7, 8, 9, 10, 11, 14, 15, 17, 18, 22, 23, 24, 25, 27, 28, 29, 30, 31 으로 총 21개의 핀이다. (라즈베리파이 모델B 버전2, 512RAM)

 

3. 라즈베리파이 주의사항

1) 전원구성
: 라즈베리파이의 외부핀의 전원관련으로는 3.3v, 5v 의 두 개의 전원핀이 존재한다. 허나~ GPIO 관련하여 사용할 때는 3.3v 의 회로만을 구성해야한다. 이는 라즈베리파이의 동작 전원이 3.3v 이고 그 이상의 전원에 보호하는 기능이 없다. 즉, 5v는 단순히 microUSB 선으로 들어오는 5v 전원을 연결했을뿐 실제 라즈베리파이는 3.3v 범위안에서 작업을 해야한다. 예를들어 스위치, LED를 달더라도 3.3v 에 회로를 맞춰야 한다.

2) 전류사용
: 3.3v 의 핀은 최대 30mA이 전류를 사용할 수 있다. 그 이상의 전류가 필요한 회로를 구성하게 되면 라즈베리파이의 메인 회로에 문제가 있을 수 있다.

3) 과전압, 과전류
: 라즈베리파이는 각 외부핀에 대해 전원 보호 회로를 구성하고 있지 않다. 즉, GPIO 핀에 과전류, 과전압을 주게 되면 내부 라즈베리파이 회로에 영향을 주고 동작하지 않을 수도 있다.

4) 버전별 핀배열
: 라즈베리파이 모델 B 는 출시된 시점에 따라 버전이 1, 2로 나뉜다. 이 두가지 버전은 P1 헤더핀 26개가 서로 다르게 설정되어 있어서 사용함에 있어서 주의해야 한다. 본 강좌에서 설명한 핀 배열은 라즈베리파이 모델B 버전2의 512RAM 버전이다.

 

[ 참고자료 ]

[1] “라즈베리파이 공식 사이트”, http://www.raspberrypi.org/
[2] “라즈베리파이 위키미디어 설명”, http://en.wikipedia.org/wiki/Raspberry_Pi
[3] “Embedded Linux Wiki”, http://elinux.org/
[4] “공식 판매점 Element14″, http://downloads.element14.com/raspberryPi1.html?COM=raspi-group
[5] “공식 판매점 RS Componts”, http://uk.rs-online.com/web/generalDisplay.html?id=raspberrypi
[6] “공식 판매점 Allied Electronics”, http://www.alliedelec.com/lp/120626raso/
[7] “element14의 레즈베리파이 커뮤니티”, http://www.element14.com/community/groups/raspberry-pi
[8] Embedded Linux 커뮤니티의 “RPi Tutorials”, http://elinux.org/RPi_Tutorials
[9] “RASPBERRY PI INFORMATION AND VIDEOS”, http://raspi.tv/
[10] “Raspberry Pi Spy”, http://www.raspberrypi-spy.co.uk/
[11] “RaspiHub”, http://www.raspihub.com/
[12] “Adafruit Blog”, http://www.adafruit.com/blog/category/raspberry-pi/
[13] “Raspberry Pi Pod”, http://www.recantha.co.uk/blog/
[14] “doctormonk”, http://www.doctormonk.com/2013/02/raspberry-pi-and-breadboard-raspberry.html
[15] “bcm2835″, http://www.open.com.au/mikem/bcm2835/

End.

written by Yoonseok Pyo
http://robotpilot.net/

http://cafe.naver.com/openrt

 


이 저작물은 크리에이티브 커먼즈 저작자표시-동일조건변경허락 3.0 Unported 라이선스
따라 이용할 수 있습니다.


출처 : http://www.rasplay.org/?p=2049



반응형