한국어
Embedded
 

라즈베리파이2에서 RTOS기반으로 간단한 GPIO제어(LED)를 해보았다.

 

라즈베리파이의 데이터 시트는 아래의 링크를 통해 방문하면 다운로드 받을 수 있으나 더 이상 업데이트가 안 되는듯하다.

https://www.raspberrypi.org/documentation/hardware/raspberrypi/

 

데이터 시트에는 물리 주소의 시작이 0x20000000 로 나와있으나 라즈베리파이2 는 BCM2836 SOC를 사용하고 있고 물리 주소는 0x3F000000 부터 시작한다. GPIO는 여기에 0x200000 를 더한 위치부터 시작한다.

 

어쨋든 LED를 제어해 보기위해 LED를 연결해야하는데 아래 이미지를 참고하여 GPIO12에 연결하기로함.

raspberrypi2_gpio.png

아래의 이미지는 데이터 시트에서 GPIO의 기능을 설정하는 레지스터를 설명하는 일부분을 가져온것이다. LED를 제어하려면 Output으로 설정해야한다.

GPIO Function Select Registers.png

이후에는 GPIO12를 제어하기 위해 GPIO Output Set Register 0 또는 GPIO Output Clear Register 0 레지스터에서 해당 비트를 설정함으로써 LED를 ON, OFF할 수 있다.

GPIO Output Set Register 0.png

 

GPIO Output Clear Register 0.png

 

번호 제목 글쓴이 날짜 조회 수
32 STM32 & LibOpenCM3, printf함수사용 file makersweb 2019.08.08 3127
31 STM32(Cortex-M3) 개발 - Firmware Flashing file makersweb 2019.07.23 3169
30 임베디드 시스템에서 베어메탈(Bare metal) 이란? makersweb 2019.12.11 3354
29 ESP32 블루투스 스피커(A2DP Sink) file makersweb 2019.10.29 3508
28 임베디드 시스템 개발 환경 선택 makersweb 2014.03.05 3529
27 STM32(Cortex-M3) 개발환경구축 with Eclipse file makersweb 2018.11.08 3591
26 부트로더의 start.S 분석 file makersweb 2014.03.23 3614
25 yocto의 몇가지 중요한 용어 및 개념 makersweb 2019.06.21 3991
24 STM32(Cortex-M3) 개발환경구축 with PlatformIO file makersweb 2019.07.26 4018
23 플랫폼 디바이스 및 디바이스 트리 makersweb 2021.03.20 4033
22 JFlashARM으로 MCU에 bin(바이너리)다운로드 file makersweb 2015.06.07 4301
21 시리얼 인터페이스 커넥터를 위한 핀아웃 file pjk 2014.10.10 4798
20 AVR(AT90USB162)을 USB to Serial 로 이용하기 file makersweb 2015.02.14 4821
19 블루투스(Bluetooth) 기초 file makersweb 2019.08.02 4931
18 printk() makersweb 2014.02.27 5154
17 STM32와 CAN(Controller Area Network) Loop Back file makersweb 2017.01.23 5416
16 디바이스 트리(Device Tree, DT) makersweb 2020.01.12 5619
15 HelloWorld 커널 모듈과 yocto 레시피 추가 방법 file makersweb 2019.12.09 5645
14 실시간 운영 체제 또는 RTOS(Real Time Operating System) pjk 2014.12.02 5847
13 폴링(Polling), 인터럽트(Interrupt), DMA(Direct Memory Access) file pjk 2014.10.24 6012