David's line following code from the LVBots competition, 2015.
Dependencies: GeneralDebouncer Pacer PololuEncoder mbed
Fork of DeadReckoning by
logger.cpp@55:05c8f439497d, 2015-04-16 (annotated)
- Committer:
- DavidEGrayson
- Date:
- Thu Apr 16 20:59:35 2015 +0000
- Revision:
- 55:05c8f439497d
- Parent:
- 49:eaa6fd514f4f
This commit works!! I recorded its logs in reckon_course_12.ods
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
DavidEGrayson | 37:23000a47ed2b | 1 | #pragma once |
DavidEGrayson | 37:23000a47ed2b | 2 | |
DavidEGrayson | 37:23000a47ed2b | 3 | #include "logger.h" |
DavidEGrayson | 37:23000a47ed2b | 4 | #include "pc_serial.h" |
DavidEGrayson | 37:23000a47ed2b | 5 | |
DavidEGrayson | 37:23000a47ed2b | 6 | Logger::Logger() |
DavidEGrayson | 37:23000a47ed2b | 7 | { |
DavidEGrayson | 37:23000a47ed2b | 8 | entryIndex = 0; |
DavidEGrayson | 37:23000a47ed2b | 9 | } |
DavidEGrayson | 37:23000a47ed2b | 10 | |
DavidEGrayson | 37:23000a47ed2b | 11 | bool Logger::isFull() |
DavidEGrayson | 37:23000a47ed2b | 12 | { |
DavidEGrayson | 37:23000a47ed2b | 13 | return entryIndex >= LOGGER_SIZE; |
DavidEGrayson | 37:23000a47ed2b | 14 | } |
DavidEGrayson | 37:23000a47ed2b | 15 | |
DavidEGrayson | 48:c84b7b3ab0e8 | 16 | void Logger::log(struct LogEntry * newEntry) |
DavidEGrayson | 37:23000a47ed2b | 17 | { |
DavidEGrayson | 37:23000a47ed2b | 18 | if (isFull()) |
DavidEGrayson | 37:23000a47ed2b | 19 | { |
DavidEGrayson | 37:23000a47ed2b | 20 | return; |
DavidEGrayson | 37:23000a47ed2b | 21 | } |
DavidEGrayson | 37:23000a47ed2b | 22 | |
DavidEGrayson | 37:23000a47ed2b | 23 | LogEntry * entry = &entries[entryIndex]; |
DavidEGrayson | 37:23000a47ed2b | 24 | entryIndex++; |
DavidEGrayson | 48:c84b7b3ab0e8 | 25 | *entry = *newEntry; |
DavidEGrayson | 37:23000a47ed2b | 26 | } |
DavidEGrayson | 37:23000a47ed2b | 27 | |
DavidEGrayson | 37:23000a47ed2b | 28 | void Logger::dump() |
DavidEGrayson | 37:23000a47ed2b | 29 | { |
DavidEGrayson | 37:23000a47ed2b | 30 | pc.printf("Log dump start\r\n"); |
DavidEGrayson | 37:23000a47ed2b | 31 | for(int32_t i = 0; i < entryIndex; i++) |
DavidEGrayson | 37:23000a47ed2b | 32 | { |
DavidEGrayson | 37:23000a47ed2b | 33 | LogEntry * entry = &entries[i]; |
DavidEGrayson | 47:cb5c1504c24d | 34 | pc.printf("%d,%d,%d\r\n", entry->turnAngle, entry->x, entry->y); |
DavidEGrayson | 37:23000a47ed2b | 35 | } |
DavidEGrayson | 37:23000a47ed2b | 36 | pc.printf("Log dump end\r\n"); |
DavidEGrayson | 37:23000a47ed2b | 37 | } |