![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
For MAX32630FTHR Demo Board: Plays piano notes mapped to keyboard keys interfaced through serial port (puTTY or powershell).
Dependencies: SDFileSystem max32630fthr USBDevice
Diff: main.cpp
- Revision:
- 3:3a4d2d10e298
- Parent:
- 2:93da96b41127
- Child:
- 4:06115dc377f7
--- a/main.cpp Tue Jul 16 09:37:41 2019 +0000 +++ b/main.cpp Fri Jul 19 01:48:43 2019 +0000 @@ -3,10 +3,13 @@ #include "USBSerial.h" #include "stdio.h" #include "SDFileSystem.h" +#include "ctype.h" //still needs BITS PER SAMPLE PARSING. //do this like so: PWM.write(WavValue/2^BPS) +//MAPPING IS WRONG. P = 440 PLZ. Y = MIDDLE D. + #define BUFFER_SIZE 128 #define HALF_BUFFER 64 @@ -79,7 +82,7 @@ float ticker_period = (float) 1/(Track.sampleRate); - printf("\r\nTicker Period: %f\tTicker Freq: %f\r\nTarget Freq: %i\r\n\r\n",ticker_period, 1/ticker_period, PlayingFreq); + printf("\r\nTicker Period: %f\tTicker Freq: %f\r\nTarget Freq: %i \r\n\r\n",ticker_period, 1/ticker_period, PlayingFreq); if(attached) { @@ -96,166 +99,179 @@ switch(c) { case '1': - PlayingFreq = 98; + PlayingFreq = 73; break; case '!': - PlayingFreq = 404; + PlayingFreq = 78; break; case '2': - PlayingFreq = 110; - break; - case '@': - PlayingFreq = 117; + PlayingFreq = 82; break; case '3': - PlayingFreq = 123; + PlayingFreq = 87; + break; + case '#': + PlayingFreq = 92; break; case '4': - PlayingFreq = 131; + PlayingFreq = 98; break; case '$': - PlayingFreq = 139; + PlayingFreq = 104; break; case '5': - PlayingFreq = 147; + PlayingFreq = 110; break; case '%': - PlayingFreq = 156; + PlayingFreq = 117; break; case '6': - PlayingFreq = 165; + PlayingFreq = 123; break; case '7': - PlayingFreq = 175; - break; - case '&': - PlayingFreq = 185; + PlayingFreq = 131; break; case '8': - PlayingFreq = 196; - break; - case '*': - PlayingFreq = 208; + PlayingFreq = 139; break; case '9': - PlayingFreq = 220; + PlayingFreq = 147; break; case '(': - PlayingFreq = 233; + PlayingFreq = 156; break; case '0': - PlayingFreq = 247; + PlayingFreq = 165; break; case 'q': - PlayingFreq = 262; + PlayingFreq = 175; break; case 'Q': - PlayingFreq = 277; + PlayingFreq = 185; break; case 'w': - PlayingFreq = 294; + PlayingFreq = 196; break; case 'W': - PlayingFreq = 311; + PlayingFreq = 208; break; case 'e': + PlayingFreq = 220; + break; + case 'E': + PlayingFreq = 233; + break; + case 'r': + PlayingFreq = 247; + break; + case 't': + PlayingFreq = 262; + break; + case 'T': + PlayingFreq = 277; + break; + case 'y': + PlayingFreq = 294; + break; + case 'Y': + PlayingFreq = 311; + break; + case 'u': PlayingFreq = 330; break; - case 'r': + case 'i': PlayingFreq = 349; break; - case 'R': + case 'I': PlayingFreq = 370; break; - case 't': + case 'o': PlayingFreq = 392; break; - case 'T': + case 'O': PlayingFreq = 415; break; - case 'y': + case 'p': PlayingFreq = 440; break; - case 'Y': + case 'P': PlayingFreq = 466; break; - case 'u': + case 'a': PlayingFreq = 494; break; - case 'i': + case 's': PlayingFreq = 523; break; - case 'I': - PlayingFreq = 554; - break; - case 'o': - PlayingFreq = 587; - break; - case 'O': - PlayingFreq = 622; - break; - case 'p': - PlayingFreq = 659; - break; - case 'a': - PlayingFreq = 698; - break; - case 'A': - PlayingFreq = 740; - break; - case 's': - PlayingFreq = 784; - break; case 'S': - PlayingFreq = 831; + PlayingFreq = 554; break; case 'd': - PlayingFreq = 880; + PlayingFreq = 587; break; case 'D': - PlayingFreq = 932; + PlayingFreq = 622; break; case 'f': - PlayingFreq = 988; + PlayingFreq = 659; break; case 'g': - PlayingFreq = 1047; + PlayingFreq = 698; break; case 'G': - PlayingFreq = 1109; + PlayingFreq = 740; break; case 'h': - PlayingFreq = 1175; + PlayingFreq = 784; break; case 'H': - PlayingFreq = 1245; + PlayingFreq = 831; break; case 'j': - PlayingFreq = 1319; + PlayingFreq = 880; + break; + case 'J': + PlayingFreq = 932; break; case 'k': + PlayingFreq = 988; + break; + case 'l': + PlayingFreq = 1047; + break; + case 'L': + PlayingFreq = 1109; + break; + case 'z': + PlayingFreq = 1175; + break; + case 'Z': + PlayingFreq = 1245; + break; + case 'x': + PlayingFreq = 1319; + break; + case 'c': PlayingFreq = 1397; break; - case 'K': + case 'C': PlayingFreq = 1480; break; - case 'l': + case 'v': PlayingFreq = 1568; break; - case 'L': + case 'V': PlayingFreq = 1661; break; case '\r': attached = !attached; + gLED = !gLED; break; } gLED = LED_OFF; rLED = !rLED; - if(attached) - { - SampleTime.detach(); - } + SampleTime.detach(); printf("\033[A\033[A\033[A\033[A"); }