summaryrefslogtreecommitdiff
path: root/digital/avr/modules/trace/test
diff options
context:
space:
mode:
authorNélio Laranjeiro2009-01-28 23:43:25 +0100
committerNélio Laranjeiro2009-01-28 23:43:25 +0100
commitab2b97c9981345fadbcd2a6e82c84643bc471543 (patch)
tree62f03c19b0bd398e862ab1ddd28e52d619fc3333 /digital/avr/modules/trace/test
parent9e34b0ebedae1c82c24d6e99f068e8bd37eb9e4d (diff)
tal/avr/modules/trace: Implement the correct version of the trace (See #59).
Diffstat (limited to 'digital/avr/modules/trace/test')
-rw-r--r--digital/avr/modules/trace/test/test_host/Makefile10
-rw-r--r--digital/avr/modules/trace/test/test_host/events.h (renamed from digital/avr/modules/trace/test/test_host/flash_stub.c)44
-rw-r--r--digital/avr/modules/trace/test/test_host/test-trace.c71
3 files changed, 71 insertions, 54 deletions
diff --git a/digital/avr/modules/trace/test/test_host/Makefile b/digital/avr/modules/trace/test/test_host/Makefile
index cc22a863..71ec0899 100644
--- a/digital/avr/modules/trace/test/test_host/Makefile
+++ b/digital/avr/modules/trace/test/test_host/Makefile
@@ -2,9 +2,13 @@ BASE = ../../../..
HOST_PROGS = test-trace
-test-trace_SOURCES = test-trace.c flash_stub.c
+test-trace_SOURCES = test-trace.c
-MODULES = trace
-OPTIMIZE = -O2
+MODULES = trace flash/stub
+#OPTIMIZE = -O2
+OPTIMIZE =
include $(BASE)/make/Makefile.gen
+
+all:
+ touch flash.apb
diff --git a/digital/avr/modules/trace/test/test_host/flash_stub.c b/digital/avr/modules/trace/test/test_host/events.h
index 849e3b34..d5a972a1 100644
--- a/digital/avr/modules/trace/test/test_host/flash_stub.c
+++ b/digital/avr/modules/trace/test/test_host/events.h
@@ -1,7 +1,9 @@
-/* flash_stub.c */
-/* avr.trace - AVR TRACE use. {{{
+#ifndef events_h
+#define events_h
+/* events_h */
+/* {{{
*
- * Copyright (C) 2008 Nélio Laranjeiro
+ * Copyright (C) 2008 APBTeam
*
* APBTeam:
* Web: http://apbteam.org/
@@ -22,35 +24,13 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* }}} */
-#include "modules/flash/flash.h"
-#include <stdio.h>
-uint8_t
-flash_init (void)
+enum events_t
{
- return 0x1;
-}
+ TRACE_ASSERV__RIGHT_MOTOR,
+ TRACE_ASSERV__LEFT_MOTOR,
+ TRACE_IA__IA_CMD,
+ TRACE_NB
+};
-uint32_t
-flash_sector_next(uint32_t addr)
-{
- return 0;
-}
-
-void
-flash_write (uint32_t addr, uint8_t arg)
-{
- printf ("%s -- %x\n", __FUNCTION__, arg);
- printf ("addr : %x\n", addr);
-}
-
-uint8_t
-flash_read (uint32_t addr)
-{
- return 0;
-}
-
-void
-flash_erase (uint8_t cmd, uint32_t addr)
-{
-}
+#endif /* events_h */
diff --git a/digital/avr/modules/trace/test/test_host/test-trace.c b/digital/avr/modules/trace/test/test_host/test-trace.c
index e56be24f..aabd8e16 100644
--- a/digital/avr/modules/trace/test/test_host/test-trace.c
+++ b/digital/avr/modules/trace/test/test_host/test-trace.c
@@ -24,39 +24,72 @@
* }}} */
#include "common.h"
#include "../../trace.h"
+#include "modules/flash/flash.h"
#include <stdio.h>
+#include "events.h"
-int
-main (void)
+void
+flood (void)
{
- uint8_t val1 = 0xEF;
- uint16_t val2 = 0x1234;
- uint32_t val3 = 0x456789AB;
+ uint8_t cmd;
+ uint32_t addr;
+ uint32_t count;
+
+ uint32_t speed;
+ uint32_t position;
+ uint16_t acc;
+
+ uint16_t arg1;
+ uint8_t arg2;
+ uint32_t arg3;
trace_init ();
- printf ("First trace\n");
- TRACE (val1);
+ /* Flood the flash memory with traces. */
+ /* A little more than 3 memory sectors, a sector is 4 kbytes. */
+ for (count = 0; count < 2000; count ++)
+ {
+ /* Right motor. */
+ speed = 10;
+ position = 11;
+ acc = 12;
+ arg1 = 10;
+ arg2 = 11;
+ arg3 = 12;
- printf ("Second trace\n");
- TRACE (val2);
+ cmd = TRACE_ASSERV__RIGHT_MOTOR;
+ TRACE (cmd, speed, position, acc);
+ cmd = TRACE_ASSERV__LEFT_MOTOR;
+ TRACE (cmd, speed, position, acc);
+ cmd = TRACE_IA__IA_CMD;
+ TRACE (cmd, arg1, arg2, arg3);
+ }
+}
- printf ("Third trace\n");
- TRACE (val3);
+void
+dump (void)
+{
+ uint8_t status;
+ uint32_t addr;
- printf ("Fourth trace\n");
- TRACE (val1, val2);
+ status = flash_init ();
- printf ("Fifth trace\n");
- TRACE (val1, val3);
+ for (addr = 0; addr < FLASH_ADDRESS_HIGH; addr ++)
+ {
+ printf ("%02x", flash_read (addr));
+ }
+}
- printf ("sixth one\n");
- TRACE (val1, val2, val3);
+int
+main (void)
+{
+ uint8_t i;
- printf ("last one\n");
- TRACE (val3, val1, val2);
+ for (i = 0; i < 30; i++)
+ flood ();
+ dump();
return 0;
}