IoT/Raspberry Pi

[Raspberry Pi] LED 블링크 C 코드

반나무 2020. 12. 2. 13:04

라즈베리파이의 GPIO는 핀번호를 두가지로 나뉘어서 사용한다.

 

wiring(와이어링 넘버링 <- 라이브러리)

BCM(BCM넘버링)

 

blink.c

#include <wiringPi.h>
void main(void){

        wiringPiSetup();
        pinMode(1, OUTPUT);
        for(int i=0; i<5; i++){
                digitalWrite(1,HIGH);
                delay(1000);
                digitalWrite(1, LOW);
                delay(1000);
        }
}

LED를 한번 켰다가. -> 1초대기 -> LED를 한번 껏다가. -> 1초대기

 

 

랜덤으로 LED를 키는 코드

rand_blink.c

#include <wiringPi.h>
#include <stdlib.h>

void main(void){

        wiringPiSetup();
        pinMode(1, OUTPUT);

        while(1){
                int randTemp = (rand() % 3) + 1;
                digitalWrite(1,HIGH);
                switch(randTemp){
                case 1 :
                        delay(1000);
                        break;
                case 2:
                        delay(2000);
                        break;
                case 3:
                        delay(3000);
                        break;
                }
                digitalWrite(1, LOW);
                switch(randTemp){
                case 1:
                        delay(1000);
                        break;
                case 2:
                        delay(2000);
                        break;
                case 3:
                        delay(3000);
                        break;
                }
        }
}
반응형