X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=protocol%2Fps2_busywait.c;h=a64933219ec96e1b48d4f30edf5eb60191306a31;hb=541913029150d57e83396293d35807a16d3755e8;hp=05dd7b27e695762cb50e0befadc60395e6a1ca3f;hpb=bc5b64d83259715667356770965a33aa620a8030;p=max%2Ftmk_keyboard.git diff --git a/protocol/ps2_busywait.c b/protocol/ps2_busywait.c index 05dd7b27..a6493321 100644 --- a/protocol/ps2_busywait.c +++ b/protocol/ps2_busywait.c @@ -40,8 +40,9 @@ POSSIBILITY OF SUCH DAMAGE. */ #include -#include +#include "wait.h" #include "ps2.h" +#include "ps2_io.h" #include "debug.h" @@ -58,8 +59,11 @@ uint8_t ps2_error = PS2_ERR_NONE; void ps2_host_init(void) { + clock_init(); + data_init(); + // POR(150-2000ms) plus BAT(300-500ms) may take 2.5sec([3]p.20) - _delay_ms(2500); + wait_ms(2500); inhibit(); } @@ -71,7 +75,7 @@ uint8_t ps2_host_send(uint8_t data) /* terminate a transmission if we have */ inhibit(); - _delay_us(100); // 100us [4]p.13, [5]p.50 + wait_us(100); // 100us [4]p.13, [5]p.50 /* 'Request to Send' and Start bit */ data_lo(); @@ -80,7 +84,7 @@ uint8_t ps2_host_send(uint8_t data) /* Data bit */ for (uint8_t i = 0; i < 8; i++) { - _delay_us(15); + wait_us(15); if (data&(1<