Revision 1991
Updated some random number generators to have more entropy.
main-new.c | ||
---|---|---|
9 | 9 |
|
10 | 10 |
#include "traffic_navigation.h" |
11 | 11 |
#include "../linefollowing/lineDrive.h" |
12 |
#define ORB_INTERSECTION |
|
13 |
#define DEBUG_INTERSECTION |
|
12 | 14 |
#ifdef MAIN_NEW |
13 | 15 |
|
14 | 16 |
#ifdef ORB_INTERSECTION |
... | ... | |
50 | 52 |
id = get_robotid(); |
51 | 53 |
sign = 0; |
52 | 54 |
ORB1_DBG_CLR(GREEN); |
53 |
delay_ms(1000);
|
|
55 |
delay_ms(500);
|
|
54 | 56 |
ORB1_DBG_CLR(ORB_OFF); |
55 | 57 |
|
56 | 58 |
//Test code |
... | ... | |
89 | 91 |
default: |
90 | 92 |
//we have a barcode! |
91 | 93 |
state = SINTERSECTION_ENTER; |
94 |
usb_puts("Read Barcode #:"); |
|
95 |
usb_puti(sign); |
|
96 |
usb_putc('\n'); |
|
92 | 97 |
done = true; |
93 | 98 |
break; |
94 | 99 |
|
... | ... | |
117 | 122 |
intersectionNum = getIntersectNum(sign); |
118 | 123 |
if(intersectionNum == (char) -1){ //invalid |
119 | 124 |
state = SROAD; |
125 |
usb_puts("Barcode has invalid intersectionNum\n"); |
|
120 | 126 |
break; |
121 | 127 |
} |
122 | 128 |
turnDir = validateTurn(sign, getTurnType(sign)); |
123 | 129 |
if(turnDir == (char) -1){ //invalid |
124 | 130 |
state = SROAD; |
131 |
usb_puts("Barcode has invalid turn\n"); |
|
125 | 132 |
break; |
126 | 133 |
} |
127 | 134 |
|
... | ... | |
487 | 494 |
} |
488 | 495 |
|
489 | 496 |
unsigned char resolvRandomNumberGen(){ |
490 |
if ((resolvSeed *= (rtc_get())%9) == 0){ |
|
497 |
if ((resolvSeed *= (rtc_get() + encoder_read(LEFT))%9) == 0){
|
|
491 | 498 |
return resolvSeed + 1; //0 is a reseved priority value for the last |
492 | 499 |
//bot that is already in the queue. |
493 | 500 |
} |
Also available in: Unified diff