강아지 공놀이 로봇 '놀아주개' 02. ISD1820 음성 녹음 재생 모듈 코드와 Data sheet - ISD1820 Voice Recorder Module User Guide
이전 포스팅에서 제작 배경에 대해 알아보았습니다. 구성품 테스트로 ISD1820 음성 녹음 및 재생 모듈을 실습합니다. ISD1820 모듈은 사용하기가 아주 쉽습니다. 마이크로 컨트롤러를 사용하지 않아도 사용해도 될 만큼 유용합니다.
라즈베리파이 연결과 코드는 이 링크를 따라가세요.
ISD1820 음성 녹음 & 재생 모듈은 ISD1820 IC가 탑재된 약 10초간의 음성을 녹음하고 재생할 수 있는 아두이노와 호환 가능한 모듈입니다. 마이크로폰이 장착되어 있어 스위치를 눌러서 음성을 녹음할 수 있으며 전원이 제거되어도 플래시 메모리에 음성이 저장되어 보존이 가능합니다. 3V와 5V로 동작이 가능하며 0.5W 8 Ohm 스피커와 스피커 연결 케이블이 포함되어 있습니다. 헤더 핀 인터페이스 구성으로 아두이노 등의 마이크로 컨트롤 보드와 연결하여 디지털 핀으로 간단하게 음성 플레이를 제어할 수 있습니다.
우선 모듈 데이터 시트를 참고하세요. ISD1820 Voice Recorder Module User Guide
아래에 상세 스펙을 나타냅니다.

사용 방법은 아주 쉽게 그림 한 장으로 그렸습니다. 참고하세요. 마이크로 컨트롤러를 연결하여 사용하는 예제 코드를 포함합니다.

아래 예제 코드는 10초간 음성 녹음 모드를 실행 후 녹음된 음성을 10초간 재생하는 예제코드입니다.
아두이노에서 재생하는 코드는 아래를 참고하시고, 소개하는 동영상은 아두이노 코드로 시험하지 않고, 버튼을 눌러 녹음하고 재생하는 영상입니다.
버튼을 눌러 "입을 다물지 않아 여기까지 왔다."라고 녹음하고, 반복하여 재생하는 테스트 영상입니다. 쉽고 재미있습니다.
/*
Code for ISD1820 Voice Recording Module
by eLab Peers (C) 2014.
Visit us at:
http://www.elabpeers.com
All rights reserved.
Wiring:
1. VCC to 5V on Arduino board
2. GND to GND on Arduino board
3. REC to Pin 5 on Arduino board
4. P-E to Pin 7 on Arduino board
*/
int Rec = 5;
int Play = 7;
void setup()
{
pinMode(Rec, OUTPUT);
pinMode(Play, OUTPUT);
}
void loop()
{
digitalWrite(Rec, HIGH);
delay(10000);
digitalWrite(Rec, LOW);
delay(5000);
digitalWrite(Play, HIGH);
delay(100);
digitalWrite(Play, LOW);
delay(10000);
}
아래 코드는 아두이노 12번 핀으로 인체 감지 센서 출력이나 조도 센서의 출력이 감지되면 녹음된 소리를 출력하는 코드입니다.
/*********************************************************************
** Device: ISD1820 **
** File: EF_Alert.c **
** **
** Created by ElecFreaks Robi.W /14 Nov 2011 **
** **
** Description: **
** This file is alert demo code base on PIR sensor and ISD1820 **
** Voice record module, just a sample code for your reference. **
** **
** Copyright (C) 2011 ElecFreaks Corp. **
** http://www.elecfreaks.com **
*********************************************************************/
#define SOUT 12
#define REC 8
#define PLAYE 9
#define PLAYL 10
void setup(){
pinMode(SOUT, INPUT);
Serial.begin(9600);
}
void loop(){
int ret = digitalRead(SOUT);
if(ret == 1)
{
Serial.println("--------------> PIR");
digitalWrite(PLAYE, 1);
delay(5000);
digitalWrite(PLAYE, 0);
}
}
'메이커 Maker' 카테고리의 다른 글
| AVR 퓨즈 비트의 올바른 구성 정보 (0) | 2025.10.17 |
|---|---|
| IoT를 위한 장거리 무선 규격 Wi-Fi Halow 와이파이 할로우 (0) | 2025.10.16 |
| 와이파이 할로우(Wi-Fi HaLow) 기존 와이파이와 다른 점 (0) | 2025.10.16 |
| 7살 생일 선물로 라즈베리파이 (0) | 2025.10.08 |
| 마라톤 기록 측정 시스템 개발 4 - PN532 NFC 통신 모듈 (0) | 2025.09.18 |
| IoT, WiFi, 불루투스 ESP32 스타터 키트 Starter Kit로 시작하세요 (0) | 2025.09.17 |
| GC9A01 원형 LCD 모듈 아두이노 (0) | 2025.09.13 |
| 손상된 마이크로 SD 카드 데이터 복구하기 (0) | 2025.09.08 |
취업, 창업의 막막함, 외주 관리, 제품 부재!
당신의 고민은 무엇입니까? 현실과 동떨어진 교육, 실패만 반복하는 외주 계약,
아이디어는 있지만 구현할 기술이 없는 막막함.
우리는 알고 있습니다. 문제의 원인은 '명확한 학습, 실전 경험과 신뢰할 수 있는 기술력의 부재'에서 시작됩니다.
이제 고민을 멈추고, 캐어랩을 만나세요!
코딩(펌웨어), 전자부품과 디지털 회로설계, PCB 설계 제작, 고객(시장/수출) 발굴과 마케팅 전략으로 당신을 지원합니다.
제품 설계의 고수는 성공이 만든 게 아니라 실패가 만듭니다. 아이디어를 양산 가능한 제품으로!
귀사의 제품을 만드세요. 교육과 개발 실적으로 신뢰할 수 있는 파트너를 확보하세요.
캐어랩