X-Git-Url: http://git.tdb.fi/?p=model-railway-devices.git;a=blobdiff_plain;f=s88w%2Fs88w-r.c;h=15365b43500d117d7a714b6f4cc383b8948575e6;hp=019897483cc63b2b36dc1f6cc79cf151e4064f72;hb=5fdf476c101b0a3a414519798eb72fcc13825167;hpb=4150740d3a5c2384289865923cef08c5852cb520 diff --git a/s88w/s88w-r.c b/s88w/s88w-r.c index 0198974..15365b4 100644 --- a/s88w/s88w-r.c +++ b/s88w/s88w-r.c @@ -33,7 +33,7 @@ D5 - S88 RESET #define BIT(n) (1<<(n)) -void receive(uint8_t); +void check_input(); uint8_t hexdigit(uint8_t); uint8_t decode_hex(uint8_t); @@ -67,6 +67,8 @@ int main() { uint8_t b_pins, d_pins; + check_input(); + b_pins = PINB; d_pins = PIND; @@ -133,8 +135,13 @@ int main() } } -void receive(uint8_t c) +void check_input() { + uint8_t c; + if(!serial_read_available()) + return; + + c = serial_read(); if(rx_fill==0xFF) { if(c==':') @@ -197,8 +204,6 @@ void receive(uint8_t c) } } -SERIAL_SET_CALLBACK(receive) - uint8_t hexdigit(uint8_t n) { n &= 0xF;