라즈베리파이4 램 8GB가 출시되었습니다!! 대박이네요. ㅎㅎ
기존에도 1GB, 2GB, 4GB로 출시하여 가격차이를 두었었는데
이번에는 8GB 입니다. (앞으로 레트로파이에서 어떤 게임들까지 포팅이 될지 궁금)
8GB 라즈베리파이의 가격은 무려 $75 달러 입니다. 공식홈에는 JUST 라는 단어를 앞에 붙여 놨지만 라즈베리파이가 시작된 배경을 보면 just라는 단어가 어울리지는 않는 것 같네요. ㅎㅎ
8GB 라즈베리파이를 사용하기 위해서는 단점이 하나 있는데요. OS를 64bit 로 사용해야 램을 최대로 활용할 수 있다는 점이네요. 현재 라즈베리파이에서 안정화된 64bit OS는 출시되지 않았습니다.
( 베타버젼은 여기를 참조하세여~ RasberryPie OS 64bit Beta )
이와 함께 또 한가지 소식으로 그 동안 라즈비안이라고 불렸던 OS가 RasberryPie OS라는 이름으로 변경되었다는 점 입니다. 아마도 32bit 64bit 분리하면서 이름도 함께 변경한 것 같네요.
하드코어 유져가 아닌이상 8GB를 사용할 일은 없을 것 같지만 하드웨어 리소스가 부족했던 분들에게는 희소식이 아닌가 싶네요~!
(이렇게 되면 라즈베리파이에 SATA3 가 없는건 정말 최악의 선택이 아닌지 ㅠ)
그럼 :)
2 댓글
지금 이코딩이 리모컨 버튼을 누르면 켜지고 한번더누르면 꺼지는 방식인데
답글삭제이걸 한번 누르면 깜빡깜빡 하게 하고 싶은데
그렇게 할려면 어떻게 해야할까요
#include
#define first_key 26775
#define second_key 39015
#define third_key 45135
#define fourth_key 12495
int receiver_pin = 8;
int first_led_pin = 7;
int second_led_pin = 6;
int third_led_pin = 5;
int fourth_led_pin = 4;
int led[] = {0,0,0,0,0};
IRrecv receiver(receiver_pin);
decode_results output;
void setup()
{
Serial.begin(9600);
receiver.enableIRIn();
pinMode(first_led_pin, OUTPUT);
pinMode(second_led_pin, OUTPUT);
pinMode(third_led_pin, OUTPUT);
pinMode(fourth_led_pin, OUTPUT);
}
void loop() {
if (receiver.decode(&output)) {
unsigned int value = output.value;
switch(value) {
case first_key:
if(led[1] == 1) {
digitalWrite(first_led_pin, LOW);
led[1] = 0;
} else {
digitalWrite(first_led_pin, HIGH);
led[1] = 1;
}
break;
case second_key:
if(led[2] == 1) {
digitalWrite(second_led_pin, LOW);
led[2] = 0;
} else {
digitalWrite(second_led_pin, HIGH);
led[2] = 1;
}
break;
case third_key:
if(led[3] == 1) {
digitalWrite(third_led_pin, LOW);
led[3] = 0;
} else {
digitalWrite(third_led_pin, HIGH);
led[3] = 1;
}
break;
case fourth_key:
if(led[4] == 1) {
digitalWrite(fourth_led_pin, LOW);
led[4] = 0;
} else {
digitalWrite(fourth_led_pin, HIGH);
led[4] = 1;
}
break;
}
Serial.println(value);
receiver.resume();
}
}
코드를 분리하시면 될 것 같네요.
삭제원래 코드는 led 상태만 변경할 수 있도록 하고
if(led[1] == 1) {
//digitalWrite(first_led_pin, LOW);
led[1] = 0;
} else {
//digitalWrite(first_led_pin, HIGH);
led[1] = 1;
}
case문 끝나고 나서 조건을 하나더 추가하면 됩니다.
전역으로 선언 해주고 int led_1_state = 0;
if(led[1] == 1) {
state = ~state;
digitalWrite(first_led_pin, state);
}
else if(led[2] == 1)
.
.
if문 빠지고 나서 마지막에는 led on/off 딜레이를 주세여
delay_ms(500);
이런식이면 될 것 같네여~~ :)