qmk_sweep_skeletyl/quantum/audio.h

25 lines
550 B
C
Raw Normal View History

2015-08-16 23:52:03 +02:00
#include <stdint.h>
#include <stdbool.h>
#include <avr/io.h>
#include <util/delay.h>
2016-04-17 03:31:40 +02:00
#include "musical_notes.h"
2015-08-16 23:52:03 +02:00
2016-04-16 05:38:21 +02:00
typedef union {
uint8_t raw;
struct {
bool enable :1;
uint8_t level :7;
};
} audio_config_t;
void audio_toggle(void);
void audio_on(void);
void audio_off(void);
void play_sample(uint8_t * s, uint16_t l, bool r);
2015-08-29 17:54:38 +02:00
void play_note(double freq, int vol);
void stop_note(double freq);
2015-08-31 18:39:53 +02:00
void stop_all_notes();
2016-01-11 22:53:33 +01:00
void init_notes();
2016-04-17 03:31:40 +02:00
void play_notes(float (*np)[][2], uint8_t n_length, bool n_repeat, float n_rest);