아두이노 나노에 연결된 6개의 LED를 D13부터 D8까지 사용하여 랜덤으로 점멸하는 프로그램을 작성하려면 다음과 같이 코드를 작성할 수 있습니다. 이 코드는 아두이노 IDE에서 작성하고 업로드할 수 있습니다.
// LED 핀 설정
const int ledPins[] = {13, 12, 11, 10, 9, 8};
const int numLEDs = 6;
void setup() {
// 모든 LED 핀을 출력 모드로 설정
for (int i = 0; i < numLEDs; i++) {
pinMode(ledPins[i], OUTPUT);
}
randomSeed(analogRead(0)); // 랜덤 시드 초기화
}
void loop() {
// 랜덤 LED 선택
int randomLED = random(numLEDs);
// 선택된 LED를 랜덤으로 켜고 끄기
digitalWrite(ledPins[randomLED], HIGH);
delay(500); // 0.5초 동안 켜기
digitalWrite(ledPins[randomLED], LOW);
delay(500); // 0.5초 동안 끄기
}
위 코드를 아두이노 IDE에 복사하고 아두이노 나노에 업로드하면 6개의 LED 중 하나가 랜덤으로 선택되어 0.5초 동안 켜지고 0.5초 동안 꺼집니다. 코드에서 `random()` 함수를 사용하여 랜덤한 LED를 선택하고 `digitalWrite()` 함수를 사용하여 LED를 켜고 끕니다. `randomSeed(analogRead(0))`는 랜덤 시드를 초기화하는데 사용되며, 시드를 초기화하지 않으면 항상 같은 순서로 LED가 선택될 수 있습니다.
소스상세 설명
ledPins[] 배열: LED가 연결된 핀 번호를 저장하는 배열입니다.
여기서는 총 6개의 핀(13, 12, 11, 10, 9, 8)을 사용합니다.
numLEDs: 사용되는 LED의 개수를 나타냅니다. 여기서는 6으로 설정되어 있습니다.
이렇게 하면 다음과 같은 새로운 기능이 추가됩니다.
랜덤한 개수의 LED 켜기: 각 루프마다 1개에서 최대 6개의 LED가 랜덤하게 켜집니다.랜덤한 시간 동안 켜기/끄기: LED가 켜지고 꺼지는 시간이 0.1초에서 1초 사이로 랜덤하게 변경됩니다.
이 코드로 LED가 더 다양한 패턴으로 깜빡거리는 모습을 볼 수 있을 것입니다. 즐겁게 코딩하세요!
// LED 핀 설정
const int ledPins[] = {13, 12, 11, 10, 9, 8};
const int numLEDs = 6;
void setup() {
// 모든 LED 핀을 출력 모드로 설정
for (int i = 0; i < numLEDs; i++) {
pinMode(ledPins[i], OUTPUT);
}
randomSeed(analogRead(0)); // 랜덤 시드 초기화
}
void loop() {
// 랜덤으로 켜질 LED 개수 결정 (1~numLEDs)
int numLEDsToLight = random(1, numLEDs + 1);
// 선택된 LED를 랜덤으로 켜기
for (int i = 0; i < numLEDsToLight; i++) {
int randomLED = random(numLEDs);
digitalWrite(ledPins[randomLED], HIGH);
}
// 랜덤한 시간 동안 켜기 (0.1초 ~ 1초)
int onTime = random(100, 1001);
delay(onTime);
// 모든 LED 끄기
for (int i = 0; i < numLEDs; i++) {
digitalWrite(ledPins[i], LOW);
}
// 랜덤한 시간 동안 끄기 (0.1초 ~ 1초)
int offTime = random(100, 1001);
delay(offTime);
}
위 사이트는 구글에서 개발한 인공지능 머신러닝을 손쉽게 구성해보는 사이트 입니다. 이미지 학습, 소리 학습, 모션 학습등을 학습시키고 어떻게 적용되는지 확인할 수 있습니다. 또한 구글에서 개발한 인공지능 개발툴인 TensorFlow에 바로 적용 가능한 소스도 변환이 가능합니다.
위 사이트는 생성형 인공지능 분야의 대표적인 사이트 ChatGPT 입니다. Open AI 사에서 개발 했으며 현재 4.0 버전(유료버전)까지 나와 있습니다. 다양한 내용을 질문하고 답변 받을 수 있습니다.(무료버전도 있습니다.) 위 내용은 따로 상세히 다루도록 하겠습니다.
위 사이트는 앞서 4번에서 설명한 ChatGPT 사이트의 한국버전이라고 보시면 됩니다. 한국사람들의 입맛에 맞게 다양한 서비스가 추가되어 있습니다. 또 하나의 특징은 ChatGPT에서 사용하는 유로버전의 서비스를 여기서는 무료로 사용할 수 있다는 점입니다. (언제 유료로 바뀔지는........)
위 사이트는 아두이노를 조금 더 전문적으로 사용하기 위해 필요한 정보를 받을 수 있는 아두이노 공식 홈페이지 입니다. 아두이노 하드웨어의 소개 / 아두이노 소프트웨어(스케치) 프로그램 다운로드 및 설치 / 아두이노 명령어 상세내용 등의 자료를 열람 및 다운로드 할 수 있습니다.