질문게시판 > 답변 : 아두이노를 이용한 오디오 스펙트럼 질문드립니다.

인기검색어 > 아두이노 센서 ATMEGA128

최신글 질문게시판 동영상강좌 가입하기

▼ BASIC4MCU 후원업체 신제품 정보 ▼

▲ BASIC4MCU 후원업체 신제품 정보 ▲

BASIC4MCU > 질문게시판

답변 : 아두이노를 이용한 오디오 스펙트럼 질문드립니다.

페이지 정보

작성자 master 작성일18-10-20 17:32 조회1,298회 댓글0건

본문

 

// DateTime : 2018-10-20 오후 5:36:50
// by Ok-Hyun Park
//
#include <MSGEQ7.h>
#include <Keypad.h>
#include <Adafruit_NeoPixel.h>
#define MIN_K_value 100
#define MAX_K_value 200
int K_value=100;
MSGEQ7 eq;
Adafruit_NeoPixel pixels=Adafruit_NeoPixel(40,6,NEO_GRB+NEO_KHZ800);
const byte ROWS=4//four rows
const byte COLS=4//four columns
char keys[ROWS][COLS]={ // 키패드의 4행 4열을 정의
  { 'A','B','C','D'},
  { 'E','F','G','H'},
  { 'I','J','K','L'},
  { 'M','N','O','P'}
};
byte rowPins[ROWS]={ 10,11,12,13}; //connect to the row pinouts of the keypad
byte colPins[COLS]={ 9,8,7,3}; //connect to the column pinouts of the keypad
Keypad keypad=Keypad(makeKeymap(keys),rowPins,colPins,ROWS,COLS);
uint32_t*color_map;
uint32_t color_a[40]={
  0x00E1FFE1,0x00E1FFE1,0x00E1FFE1,0x00E1FFE1,0x00E1FFE1,0x00E1FFE1,0x00E1FFE1,0x00E1FFE1,
  0x00008000,0x00008000,0x00008000,0x00008000,0x00008000,0x00008000,0x00008000,0x00008000,
  0x00FFFF00,0x00FFFF00,0x00FFFF00,0x00FFFF00,0x00FFFF00,0x00FFFF00,0x00FFFF00,0x00FFFF00,
  0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,
  0x00ff0000,0x00ff0000,0x00ff0000,0x00ff0000,0x00ff0000,0x00ff0000,0x00ff0000,0x00ff0000
}
//
;
uint32_t color_b[40]={
  0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x005050af,
  0x009400D3,0x009400D3,0x009400D3,0x009400D3,0x009400D3,0x009400D3,0x009400D3,0x009400D3,
  0x009400D3,0x009400D3,0x009400D3,0x009400D3,0x009400D3,0x009400D3,0x009400D3,0x009400D3,
  0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,
  0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00
}
//
;
uint32_t color_c[40]={
  0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,
  0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,
  0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,0x0032BEBE,
  0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x005050af,
  0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x00efef00,0x005050af
}
//
;
uint32_t color_d[40]={
  0x00FFFFFB,0x00FFFFFB,0x00C63C26,0x0000FFFF,0x00C63C26,0x00444693,0x00444693,0x00C77EB5,
  0x00FFFFFB,0x00FFFFFB,0x00C63C26,0x0000FFFF,0x00C63C26,0x00444693,0x00444693,0x00C77EB5,
  0x00FFFFFB,0x00FFFFFB,0x00C63C26,0x0000FFFF,0x00C63C26,0x00444693,0x00444693,0x00C77EB5,
  0x00FFFFFB,0x00FFFFFB,0x00C63C26,0x0000FFFF,0x00C63C26,0x00444693,0x00444693,0x00C77EB5,
  0x00FFFFFB,0x00FFFFFB,0x00C63C26,0x0000FFFF,0x00C63C26,0x00444693,0x00444693,0x00C77EB5
}
//
;
uint32_t color_p[40]={
  0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
  0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
  0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
  0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
  0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
}
//
void setup(){
  eq.init();
  pixels.begin();
  pixels.clear();
  Serial.begin(9600);
}
//
int cnt=0,on_off=0;
//
void loop(){
  char key=keypad.getKey();
  if(key=='A'){ color_map=color_aSerial.println(color_map[0]); }
  if(key=='B'){ color_map=color_bSerial.println(color_map[0]); }
  if(key=='C'){ color_map=color_cSerial.println(color_map[0]); }
  if(key=='D'){ color_map=color_dSerial.println(color_map[0]); }
  if(key=='E'){                    Serial.println(color_map[0]); }
  if(key=='P'){ color_map=color_pSerial.println(color_map[0]); }
  if(key=='N'){ K_value=100cnt=0,on_off=1pixels.clear(); }
  if(key=='O'){ on_off^=1Serial.print("on_off="); Serial.println(on_off); }
  if(on_off){
  eq.poll();
  int max_v=0;
  pixels.clear();
  for(int i=0i<7i++){
    int l=eq.getLValue(i);
    int r=eq.getRValue(i);
    int v=(l<r?r:l);
    max_v=(v>max_v?v:max_v);
    for(int j=0;j<5;j++){ if(v>K_value*(5-j))on_pixel(i+(8*j)); }
  }
  for(int j=0;j<5;j++){ if(max_v>K_value*(5-j))on_pixel(7+(8*j)); }
  K_value=constrain(max_v/5,MIN_K_value,MAX_K_value);
  pixels.show();
}
  delay(100);
}
//
void on_pixel(int index){
  pixels.setPixelColor(index,color_map[index]);
}

 

  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기
  • 카카오톡으로 보내기

댓글 : 0

조회수 : 1,298

등록된 댓글이 없습니다.

게시물 검색

BASIC4MCU > 질문게시판 목록

제목 날짜
공지 MCU, AVR, 아두이노 등 전자공학에 관련된 질문은… 스태프  19-01-15
공지 사이트 이용 안내 댓글[10] master  17-10-29
공지 [무료 공개] 소스코드 하이라이트 v2.0 beta [… 댓글[1] 첨부파일master  18-01-23
질문 스텝모터 정지 댓글[1] 아두이노배우기 새글 02:47
질문 정말 감사합니다. 박취  20-02-19
질문 ov9655카메라와 stm32f4 보드를 이용한 영상처… 댓글[7] flap  20-02-19
질문 GLCD 텍스트 출력 댓글[2] 전자학습자  20-02-17
질문 아두이노 HC-11 통신관련입니다. 아두이노배우기  20-02-15
답변 답변 : 아두이노 HC-11 통신관련입니다. master  20-02-16
답변 답변 : 답변 : 아두이노 HC-11 통신관련입니다. 아두이노배우기  20-02-16
질문 led 불켜기 마스터 슬레이브 댓글[1] 공용  20-02-12
답변 답변 : led 불켜기 마스터 슬레이브 master  20-02-12
질문 아두이노 코딩 관련 질문입니다. bbeuniii  20-02-12
답변 답변 : 아두이노 코딩 관련 질문입니다. master  20-02-12
질문 uart 관련 질문 (wiegand통신) 댓글[9] 첨부파일jhyun8624  20-02-11
질문 회로, 코딩 문제 첨부파일공기구함  20-02-10
답변 답변 : 회로, 코딩 문제 댓글[2] master  20-02-10
질문 회로, 코딩문제 댓글[2] 첨부파일공기구함  20-02-10
질문 코딩어레이 질문 master  20-02-07
질문 컴파일 오류가나는데, 이유를 모르겠습니다. 댓글[5] 창고지기  20-02-06
질문 IR센서 2개로 LED, DC모터 제어 (입문자입니다 … 창고지기  20-02-05
답변 답변 : IR센서 2개로 LED, DC모터 제어 (입문… 댓글[1] master  20-02-05
질문 [초보]언어부분 접근 방법 문의 댓글[5] 에루후  20-02-04
답변 답변 : [초보]언어부분 접근 방법 문의 댓글[3] 에루후  20-02-05
질문 아두이노 PS/2 바코드 리더기 코드 해석 질문 master  20-02-02
질문 NodeMCU ESP-32S 외부 전원 모듈 질문드립니… y1234y  20-02-01
답변 답변 : NodeMCU ESP-32S 외부 전원 모듈 … master  20-02-01
답변 답변 : 답변 : NodeMCU ESP-32S 외부 전… 댓글[8] y1234y  20-02-01
질문 아두이노 쿨링팬 제어하기 위해 bjt를 쓰는 이유 질문 master  20-02-01
질문 감사합니다 댓글[1] 박취  20-01-30
게시물 검색


Privacy Policy
MCU BASIC ⓒ 2017
PC버전