Project

General

Profile

Statistics
| Revision:

root / trunk / code / projects / linefollowing / main.c @ 1924

History | View | Annotate | Download (3.17 KB)

1
#include <dragonfly_lib.h>
2
#include <lineFollow.h>
3

    
4
/* 
5
*  read_line 0 = Sensor 1
6
*  read_line 1 = Sensor 8
7
*  read_line 2 = Sensor 4
8
*  read_line 3 = Sensor 6
9
*  read_line 4 = Sensor 2
10
*  read_line 5 = Sensor 7
11
*  read_line 6 = Sensor 3
12
*  read_line 7 = Sensor 5
13
*/
14

    
15
int main(void)
16
{
17

    
18
        /* initialize components, set wireless channel */
19
        dragonfly_init(ALL_ON);
20
        lineFollow_init();
21
        int barCode;
22
        while(1)
23
        {
24
                /*usb_puti(read_line(0));
25
        delay_ms(10);
26
                usb_putc('\t');
27
                usb_puti(read_line(0));
28
        delay_ms(10);
29
                usb_putc('\t');
30
                usb_puti(read_line(6));
31
        delay_ms(10);
32
                usb_putc('\t');
33
                usb_puti(read_line(6));
34
        delay_ms(10);
35
                usb_putc('\t');
36
                usb_puti(read_line(7));
37
        delay_ms(10);
38
                usb_putc('\t');
39
                usb_puti(read_line(7));
40
        delay_ms(10);
41
                usb_putc('\t');
42
                usb_puti(read_line(5));
43
        delay_ms(10);
44
                usb_putc('\t');
45
                usb_puti(read_line(5));
46
        delay_ms(10);
47
                usb_putc('\t');
48
                usb_putc(13);
49
        delay_ms(10);*/
50
/*
51
                usb_puti(read_line(0));
52
                usb_putc('\t');
53
                usb_puti(read_line(4));
54
                usb_putc('\t');
55
                usb_puti(read_line(2));
56
                usb_putc('\t');
57
                usb_puti(read_line(6));
58
                usb_putc('\t');
59
                usb_puti(read_line(1));
60
                usb_putc('\t');
61
                usb_puti(read_line(5));
62
                usb_putc('\t');
63
                usb_puti(read_line(3));
64
                usb_putc('\t');
65
                usb_puti(read_line(7));
66
                usb_putc('\t');
67
                usb_putc(13);
68
*/
69
                usb_puti(read_line(0));
70
                usb_putc('\t');
71
                usb_puti(read_line(1));
72
                usb_putc('\t');
73
                usb_puti(read_line(2));
74
                usb_putc('\t');
75
                usb_puti(read_line(3));
76
                usb_putc('\t');
77
                usb_puti(read_line(4));
78
                usb_putc('\t');
79
                usb_puti(read_line(5));
80
                usb_putc('\t');
81
                usb_puti(read_line(6));
82
                usb_putc('\t');
83
                usb_puti(read_line(7));
84
                usb_putc('\t');
85
                usb_putc(13);
86

    
87
        /*        
88

89
                for(int q=0; q<500; q++)
90
                        barCode = lineFollow(200);
91
                while(mergeLeft());
92
                for(int q=0; q<1000; q++)lineFollow(200);
93
                
94
                continue;
95
                if(barCode==-25)while(turnRight());
96
                continue;
97
                if(barCode != -2 && barCode != LINELOST)
98
                {
99
                        usb_puti(barCode);
100
                        usb_putc('\n');
101
                }
102
*/
103

    
104

    
105

    
106
/*                
107

108
                switch (barCode)
109
                {        
110

111
                
112
                        case 0: orb_set_color(RED); break;
113
                        case 1: orb_set_color(ORANGE); break;
114
                        case 2: orb_set_color(YELLOW); break;
115
                        case 3: orb_set_color(LIME); break;
116
                        case 4: orb_set_color(GREEN); break;
117
                        case 5: orb_set_color(CYAN); break;
118
                        case 6: orb_set_color(BLUE); break;
119
                        case 7: orb_set_color(PINK); break;
120
                        case 8: orb_set_color(PURPLE); break;
121
                        case 9: orb_set_color(MAGENTA); break;
122
                        default: orb_set_color(WHITE); break;
123
        
124
                        case 0:
125
                                straight();
126
                                turnRight();
127
                                break;
128
                        case 2:
129
                                straight();
130
                                break;
131
                        case 3:
132
                                straight();
133
                                turnLeft();
134
                                break;
135
                
136
                }
137
*/        
138
        }
139
        return 0;
140
}
141
void right()
142
{
143
motor_r_set(BACKWARD, 200);
144
motor_l_set(FORWARD, 200);
145
delay_ms(400);
146
}
147

    
148
void straight()
149
{
150
motor_r_set(FORWARD, 210);
151
motor_l_set(FORWARD, 210);
152
delay_ms(200);
153
move(0,0);
154
delay_ms(2000);
155
}
156

    
157
void left()
158
{
159
motor_l_set(BACKWARD, 200);
160
motor_r_set(FORWARD, 200);
161
delay_ms(400);
162
}