2015-10-26 18:49:46 +00:00
|
|
|
#include "planck.h"
|
|
|
|
|
2015-10-26 20:32:37 +00:00
|
|
|
__attribute__ ((weak))
|
2015-10-26 18:49:46 +00:00
|
|
|
void * matrix_init_user(void) {
|
|
|
|
|
|
|
|
};
|
|
|
|
|
2015-10-26 20:32:37 +00:00
|
|
|
__attribute__ ((weak))
|
2015-10-26 18:49:46 +00:00
|
|
|
void * matrix_scan_user(void) {
|
|
|
|
|
|
|
|
};
|
|
|
|
|
2015-10-26 20:32:37 +00:00
|
|
|
void * matrix_init_kb(void) {
|
2015-10-26 18:49:46 +00:00
|
|
|
#ifdef BACKLIGHT_ENABLE
|
|
|
|
backlight_init_ports();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// Turn status LED on
|
|
|
|
DDRE |= (1<<6);
|
|
|
|
PORTE |= (1<<6);
|
|
|
|
|
2016-01-11 21:53:33 +00:00
|
|
|
init_notes();
|
|
|
|
|
|
|
|
// play_note(((double)261.6*32)*pow(2.0,(36)/12.0), 0xF);
|
|
|
|
// _delay_ms(50);
|
|
|
|
|
|
|
|
// play_note(((double)261.6*32)*pow(2.0,(48)/12.0), 0xF);
|
|
|
|
// _delay_ms(25);
|
|
|
|
// stop_note(((double)261.6*32)*pow(2.0,(48)/12.0));
|
|
|
|
|
|
|
|
// play_note(((double)261.6*32)*pow(2.0,(48)/12.0), 0xF);
|
|
|
|
// _delay_ms(25);
|
|
|
|
// stop_note(((double)261.6*32)*pow(2.0,(48)/12.0));
|
|
|
|
|
|
|
|
|
|
|
|
// stop_note(((double)261.6*32)*pow(2.0,(36)/12.0));
|
|
|
|
|
|
|
|
|
|
|
|
// play_note(((double)261.6*32)*pow(2.0,(62)/12.0), 0xF);
|
|
|
|
// _delay_ms(50);
|
|
|
|
// stop_note(((double)261.6*32)*pow(2.0,(62)/12.0));
|
|
|
|
|
|
|
|
|
|
|
|
// play_note(((double)261.6*32)*pow(2.0,(64)/12.0), 0xF);
|
|
|
|
// _delay_ms(50);
|
|
|
|
// stop_note(((double)261.6*32)*pow(2.0,(64)/12.0));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-10-26 18:49:46 +00:00
|
|
|
if (matrix_init_user) {
|
|
|
|
(*matrix_init_user)();
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
2015-10-26 20:32:37 +00:00
|
|
|
void * matrix_scan_kb(void) {
|
2015-10-26 18:49:46 +00:00
|
|
|
if (matrix_scan_user) {
|
|
|
|
(*matrix_scan_user)();
|
|
|
|
}
|
|
|
|
};
|