Merge pull request #1445 from qmk/dual_audio

Allow for duophony (C6 and B5) and B5 audio
This commit is contained in:
Jack Humbert
2017-06-27 16:57:19 -04:00
committed by GitHub
6 changed files with 303 additions and 22 deletions

View File

@ -1,7 +1,7 @@
## Audio output from a speaker
Your keyboard can make sounds! If you've got a Planck, Preonic, or basically any keyboard that allows access to the C6 port, you can hook up a simple speaker and make it beep. You can use those beeps to indicate layer transitions, modifiers, special keys, or just to play some funky 8bit tunes.
Your keyboard can make sounds! If you've got a Planck, Preonic, or basically any keyboard that allows access to the C6 or B5 port (`#define C6_AUDIO` and `#define B5_AUDIO`), you can hook up a simple speaker and make it beep. You can use those beeps to indicate layer transitions, modifiers, special keys, or just to play some funky 8bit tunes.
The audio code lives in [quantum/audio/audio.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/audio/audio.h) and in the other files in the audio directory. It's enabled by default on the Planck [stock keymap](https://github.com/qmk/qmk_firmware/blob/master/keyboards/planck/keymaps/default/keymap.c). Here are the important bits:

View File

@ -49,6 +49,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PIN B7
#define BACKLIGHT_BREATHING
#define C6_AUDIO
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW

View File

@ -37,6 +37,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define UNUSED_PINS
#define AUDIO_VOICES
#define C6_AUDIO
#define BACKLIGHT_PIN B7

View File

@ -38,6 +38,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define UNUSED_PINS
#define AUDIO_VOICES
#define C6_AUDIO
#define BACKLIGHT_PIN B7

File diff suppressed because it is too large Load Diff

View File

@ -44,7 +44,7 @@ float voice_envelope(float frequency) {
switch (voice) {
case default_voice:
glissando = true;
glissando = false;
note_timbre = TIMBRE_50;
polyphony_rate = 0;
break;