PRACTICE/Basic
[Arduino] 간단한 프린트문, 8개의 LED를 비트단위로 ON/OFF 하기
1005
2020. 8. 18. 18:00
< 아두이노의 구조를 알 수 있는 간단한 프린트문 >
1
2
3
4
5
6
7
8
9
10
11
12
|
void setup() {
// put your setup code here, to run once: 한번만 호출
Serial.begin(115200); //시리얼통신(통신속도) 셋업
Serial.println("setup");
}
// 펌웨어 프로그램: 멈추면 안되기 때문에 무한반복 시켜줘야함.
// 운영체제 역시 마찬가지로 무한루프가 돌고있음.
void loop() {
// put your main code here, to run repeatedly: 반복 호출
Serial.println("loop");
}
|

< 8개의 LED를 비트단위로 ON/OFF >
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
int LED[8] = {13,12,11,10,9,8,7,6}; //led 8개 포트넘버
//int bit_data[8] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80}; <- 비트체크 조건문으로 변경함.
void setup() {
for(int i=0; i<8; i++)
pinMode(LED[i], OUTPUT); //led 초기화
}
int cnt = 0;
void loop() {
for(int i = 0; i < 8; i++){
if(cnt & (0x01<<i)) //비트 당 값이 false(0)인지 true(1)인지 체크
digitalWrite(LED[i],HIGH); //true면 led on
else
digitalWrite(LED[i],LOW); //false면 led off
}
delay(1000); //1초
cnt++;
}
|