From 63a0f3b710ebd6651a159aef16f2195396290aa9 Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Mon, 31 Mar 2008 18:43:51 +0200 Subject: * digital/avr/modules/twi: - added host support. --- digital/avr/modules/twi/test/test_twi_master.c | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'digital/avr/modules/twi/test/test_twi_master.c') diff --git a/digital/avr/modules/twi/test/test_twi_master.c b/digital/avr/modules/twi/test/test_twi_master.c index d65d185d..e032f839 100644 --- a/digital/avr/modules/twi/test/test_twi_master.c +++ b/digital/avr/modules/twi/test/test_twi_master.c @@ -31,6 +31,10 @@ #include "modules/math/random/random.h" #include "io.h" +#ifdef HOST +# include "modules/host/mex.h" +#endif + void proto_callback (uint8_t cmd, uint8_t size, uint8_t *args) { @@ -121,6 +125,10 @@ proto_callback (uint8_t cmd, uint8_t size, uint8_t *args) twi_ms_send (args[0], random_bytes, byte_number); while (!twi_ms_is_finished ()) ; +#ifdef HOST + /* Give time to slave to copy data. */ + mex_node_wait_date (mex_node_date () + 2); +#endif /* Received buffer */ uint8_t received_buffer[max_byte_number]; @@ -182,8 +190,12 @@ proto_callback (uint8_t cmd, uint8_t size, uint8_t *args) } int -main (void) +main (int argc, char **argv) { + avr_init (argc, argv); +#ifdef HOST + mex_node_connect (); +#endif /* Enable interruptions */ sei (); /* Initialize serial port */ @@ -196,8 +208,13 @@ main (void) proto_send0 ('M'); while (42) { - uint8_t c = uart0_getc (); - proto_accept (c); +#ifdef HOST + mex_node_wait_date (mex_node_date () + 1); + while (uart0_poll ()) + proto_accept (uart0_getc ()); +#else + proto_accept (uart0_getc ()); +#endif } return 0; } -- cgit v1.2.3