
Bluetooth Enabled Keyboard/Synthesizer for mbed
Dependencies: mbed 4DGL-uLCD-SE SDFileSystem mbed-rtos
synthesizer.h
- Committer:
- jmpin
- Date:
- 2016-04-28
- Revision:
- 8:f6699fd30737
- Parent:
- 3:3aba1d783730
- Child:
- 24:3bd4e691ae59
File content as of revision 8:f6699fd30737:
#include "mbed.h" #define NUM_OCTAVE (7) // Number of octaves #define NUM_NOTE (7) // Number of notes in each octave //Types of waveforms enum WaveType{ sine, square, sawtooth}; #define PI 3.14159265 //Note Frequencies #define C1 (33) #define D1 (37) #define E1 (41) #define F1 (44) #define G1 (49) #define A1 (55) #define B1 (62) #define C2 (65) #define D2 (73) #define E2 (82) #define F2 (87) #define G2 (98) #define A2 (110) #define B2 (125) #define C3 (131) #define D3 (147) #define E3 (165) #define F3 (175) #define G3 (196) #define A3 (220) #define B3 (247) #define C4 (262) #define D4 (294) #define E4 (330) #define F4 (349) #define G4 (392) #define A4 (440) #define B4 (494) #define C5 (523) #define D5 (587) #define E5 (659) #define F5 (698) #define G5 (784) #define A5 (880) #define B5 (988) #define C6 (1047) #define D6 (1175) #define E6 (1319) #define F6 (1397) #define G6 (1568) #define A6 (1760) #define B6 (1976) #define C7 (2093) #define D7 (2349) #define E7 (2637) #define F7 (2794) #define G7 (3136) #define A7 (3520) #define B7 (3951) // Key Bindings #define C_NOTE_KEY 'Z' #define D_NOTE_KEY 'X' #define E_NOTE_KEY 'C' #define F_NOTE_KEY 'V' #define G_NOTE_KEY 'B' #define A_NOTE_KEY 'N' #define B_NOTE_KEY 'M' #define RAISE_OCTAVE_KEY 'O' #define LOWER_OCTAVE_KEY 'L' #define RAISE_ATTACK_KEY 'Q' #define LOWER_ATTACK_KEY 'A' #define RAISE_DELAY_KEY 'W' #define LOWER_DELAY_KEY 'S' #define RAISE_SUSTAIN_KEY 'E' #define LOWER_SUSTAIN_KEY 'D' #define RAISE_RELEASE_KEY 'R' #define LOWER_RELEASE_KEY 'F' #define CHANGE_WAVESHAPE_UP 'T' #define CHANGE_WAVESHAPE_DOWN 'G'