사용자 정의 함수 변환 하는 방법
페이지 정보
작성자 da0800 작성일22-06-21 00:37 조회335회 댓글2건본문
이 아두이노는 피에조 피아노인데 스위치를 누르면 네오픽셀에 불이 들어오는 형식입니다.
void loop에 있는 거를 사용자 정의 함수로 변환 하고 싶은데 네오픽셀에 스위치를 사용한 사용자 함수 예제가 보이질 않아 질문 드립니다.
두 번째 사진처럼 변환 하면 되나요?
그리고 사용자 정의 함수도 if문을 쓸 수 있나요?
만약 if문을 사용 할 수 없다면 if문을 사용하지 않고 네오픽셀 피에조 피아노를 만들 수 있는 방법이 있을까요?
#include <Adafruit_NeoPixel.h>
#define PIN 8 // input pin Neopixel is attached to
#define NUMLED 3 // number of neopixels in Ring
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMLED, PIN, NEO_GRB + NEO_KHZ800);
void setup() {
pinMode(A0,INPUT_PULLUP);
pinMode(A1,INPUT_PULLUP);
pinMode(A2,INPUT_PULLUP);
pinMode(13,OUTPUT);
pinMode(8,OUTPUT);
}
void loop() {
if(digitalRead(A0)==LOW){
tone(13,262,100);
pixels.setPixelColor(0, 255, 0, 0);
pixels.show();
}
if(digitalRead(A1)==LOW){
tone(13,294,100);
pixels.setPixelColor(1, 0, 255, 0);
pixels.show();
}
if(digitalRead(A2)==LOW){
tone(13,330,100);
pixels.setPixelColor(2, 0, 0, 255);
pixels.show();
}
delay(100);
pixels.clear();
}
댓글 : 2
조회수 : 335
master님의 댓글
master 작성일
#include <Adafruit_NeoPixel.h>
#define PIN 8 // input pin Neopixel is attached to
#define NUMLED 3 // number of neopixels in Ring
Adafruit_NeoPixel pixels=Adafruit_NeoPixel(NUMLED,PIN,NEO_GRB+NEO_KHZ800);
//
void myfuc(int n){
switch(n){
case 0: tone(13,262,100); pixels.setPixelColor(0,255,0,0); break;
case 1: tone(13,294,100); pixels.setPixelColor(1,0,255,0); break;
case 2: tone(13,330,100); pixels.setPixelColor(2,0,0,255); break;
}
pixels.show(); delay(100); pixels.clear();
}
//
void setup(){
pinMode(A0,INPUT_PULLUP);
pinMode(A1,INPUT_PULLUP);
pinMode(A2,INPUT_PULLUP);
pinMode(13,OUTPUT);
pinMode(8,OUTPUT);
}
//
void loop(){
if(digitalRead(A0)==LOW)myfuc(0);
if(digitalRead(A1)==LOW)myfuc(1);
if(digitalRead(A2)==LOW)myfuc(2);
}
da0800님의 댓글
da0800
정말 감사합니다 사용자 함수를 이렇게 보니 이해가 가네요 ^^