Calliope Sound-Recorder    

           
Elektronik-Labor   Projekte   Microbit 




Video: https://youtu.be/CHs2OTMw69Y

Dieser Sound-Recorder mit einer Aufnahmezeit von einer Sekunde wurde mit Mbed entwickelt. Die Sound-Daten werden in einem Array mit 2500 Bytes gespeichert. Die Abtastrate wurde auf unter 2 kHz eingestellt, damit die Aufnahmedauer ausreicht. Und beim Abspielen kann man auch etwas länger warten und so einen tieferen Ton abspielen.




#include "mbed.h"

DigitalOut col0(P0_4, 0);
DigitalOut myled(p13);
//DigitalOut sl(p28, 0);
DigitalOut inl(p29, 0);
DigitalOut in2(p30, 1);
DigitalIn tasteA (p17);
DigitalIn tasteB (p16);

AnalogIn u2(p3); //P3 = MIC
PwmOut pwm1(p28);


int main() {
// float d[1000];
uint8_t d[2500];
uint16_t n=0;
pwm1.period_us(50);
while(1){
if (tasteA.read()==0){
myled = 1;
for (n=0; n<2500;n++){
d[n]= int(u2.read()*255);
wait_us(500);
}
myled = 0;
}
if (tasteB.read()==0){
for (n=0; n<2500;n++){
//printf("%d\r\n",n);
pwm1.write(float(d[n])/255);
wait_us(500);
// printf("%f\r\n",255*d[n]);
}
}
}
}


Hier gibt es drei fertig übersetzte Hex-Dateien für unterschiedliche Abspielklänge, hoch, normal und tief. Man kann das jeweils gewünschte Programm direkt in den Calliope kopieren.  Download: Recorder.zip






Elektronik-Labor   Projekte   Microbit