X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=keyboard%2Finfinity%2Fmain.cpp;h=847668a1dea11854b96cafaffcd02ee5ceeb6dad;hb=47775af20671e347e7e5545f63b42a51f0a4df04;hp=7db59cdfb9e39b68d32af9f3662d0d0a670acbf7;hpb=e259a722e7e8abcb97606b6cfbcce99667a66277;p=max%2Ftmk_keyboard.git diff --git a/keyboard/infinity/main.cpp b/keyboard/infinity/main.cpp index 7db59cdf..847668a1 100644 --- a/keyboard/infinity/main.cpp +++ b/keyboard/infinity/main.cpp @@ -1,29 +1,44 @@ -//#include "mbed.h" #include "MK20D5.h" #include "wait.h" #include "gpio_api.h" #include "PinNames.h" +#include "matrix.h" +#include "timer.h" +#include "action.h" +#include "keycode.h" +#include "host.h" +#include "host_driver.h" +#include "mbed_driver.h" -//DigitalOut led(PTA19); int main() { gpio_t led; gpio_init_out(&led, PTA19); + + uint16_t t = 0; + + host_set_driver(&mbed_driver); + keyboard_init(); + while(1) { - gpio_write(&led, 1); - wait_ms(500); - gpio_write(&led, 0); - wait_ms(500); - } -/* - SIM->SCGC6 |= SIM_SCGC5_PORTA_MASK; - PORTA->PCR[19] = PORT_PCR_SRE_MASK | PORT_PCR_DSE_MASK | PORT_PCR_MUX(1); - PTA->PDDR |= (1<<19); - PTA->PSOR |= (1<<19); - while(1) { - PTA->PTOR |= (1<<19); - wait_ms(500); + keyboard_task(); + + bool matrix_on = false; + matrix_scan(); + for (int i = 0; i < MATRIX_ROWS; i++) { + if (matrix_get_row(i)) { + matrix_on = true; + break; + } + } + if (matrix_on) + gpio_write(&led, 1); + else { + if (timer_elapsed(t) > 500) { + gpio_write(&led, !gpio_read(&led)); + t = timer_read(); + } + } } -*/ }