25 lines
550 B
C
Raw Normal View History

2015-08-16 17:52:03 -04:00
#include <stdint.h>
#include <stdbool.h>
#include <avr/io.h>
#include <util/delay.h>
2016-04-16 21:31:40 -04:00
#include "musical_notes.h"
2015-08-16 17:52:03 -04:00
2016-04-15 23:38:21 -04: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 11:54:38 -04:00
void play_note(double freq, int vol);
void stop_note(double freq);
2015-08-31 12:39:53 -04:00
void stop_all_notes();
2016-01-11 16:53:33 -05:00
void init_notes();
2016-04-16 21:31:40 -04:00
void play_notes(float (*np)[][2], uint8_t n_length, bool n_repeat, float n_rest);