Subversion Repositories svnkaklik

Rev

Rev 192 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 192 Rev 193
Line 1... Line 1...
1
//******** Robot Camerus pro IstRobot 2007 ************
1
//******** Robot Camerus pro IstRobot 2007 ************
2
//"$Id: camerus.c 192 2007-03-16 22:56:25Z kakl $"
2
//"$Id: camerus.c 193 2007-03-17 12:24:49Z kakl $"
3
//*****************************************************
3
//*****************************************************
4
 
4
 
5
#include ".\camerus.h"
5
#include ".\camerus.h"
6
 
6
 
7
#USE FAST_IO (C)     // Brana C je ve FAST_IO modu, aby slo rychle cist z kamery
7
#USE FAST_IO (C)     // Brana C je ve FAST_IO modu, aby slo rychle cist z kamery
Line 127... Line 127...
127
 
127
 
128
   if (stav==cihla) while(true); // Zastav na furt, konec drahy
128
   if (stav==cihla) while(true); // Zastav na furt, konec drahy
129
 
129
 
130
   if(stav==jizda)   // Objed cihlu
130
   if(stav==jizda)   // Objed cihlu
131
   {
131
   {
132
      int n;
-
 
133
 
-
 
134
      SetServo(CASMIN);   // prudce doleva
-
 
135
      set_pwm1_duty(0);  // vpred
-
 
136
      set_pwm2_duty(200);
-
 
137
      output_low(MOT_L);
-
 
138
      output_low(MOT_R);
-
 
139
      n=0;
-
 
140
      while(true)
-
 
141
      {
-
 
142
         while(input(ODO));
-
 
143
         while(!input(ODO));
-
 
144
         n++;
-
 
145
         if(n==7) break;
-
 
146
      }
-
 
147
      set_pwm1_duty(0);    // reverz (zabrzdi)
-
 
148
      set_pwm2_duty(0);
-
 
149
      output_low(MOT_L);
-
 
150
      output_high(MOT_R);
-
 
151
      delay_ms(200);
-
 
152
      brzda();
-
 
153
 
-
 
154
      SetServo((CASAVR-CASMIN));   // rovne
-
 
155
      set_pwm1_duty(140);  // vpred
-
 
156
      set_pwm2_duty(140);
-
 
157
      output_low(MOT_L);
-
 
158
      output_low(MOT_R);
-
 
159
      n=0;
-
 
160
      while(true)
-
 
161
      {
-
 
162
         while(input(ODO));
-
 
163
         while(!input(ODO));
-
 
164
         n++;
-
 
165
         if(n==10) break;
-
 
166
      }
-
 
167
 
-
 
168
      set_pwm1_duty(0);    // reverz (zabrzdi)
-
 
169
      set_pwm2_duty(0);
-
 
170
      output_high(MOT_L);
-
 
171
      output_high(MOT_R);
-
 
172
      delay_ms(200);
-
 
173
      brzda();
-
 
174
 
-
 
175
      SetServo(CASMIN);   // max. doleva
-
 
176
      set_pwm1_duty(0);   // vzad
-
 
177
      set_pwm2_duty(20);
-
 
178
      output_low(MOT_L);
-
 
179
      output_high(MOT_R);
-
 
180
      n=0;
-
 
181
      while(true)
-
 
182
      {
-
 
183
         while(input(ODO));
-
 
184
         while(!input(ODO));
-
 
185
         n++;
-
 
186
         if(n==9) break;
-
 
187
      }
-
 
188
      set_pwm1_duty(0);    // reverz (zabrzdi)
-
 
189
      set_pwm2_duty(255);
-
 
190
      output_low(MOT_L);
-
 
191
      output_low(MOT_R);
-
 
192
      delay_ms(200);
-
 
193
 
-
 
194
      brzda();
-
 
195
 
-
 
196
      SetServo((CASAVR-CASMIN));   // rovne
-
 
197
      set_pwm1_duty(140);  // vpred
-
 
198
      set_pwm2_duty(140);
-
 
199
      output_low(MOT_L);
-
 
200
      output_low(MOT_R);
-
 
201
      n=0;
-
 
202
      while(true)
-
 
203
      {
-
 
204
         while(input(ODO));
-
 
205
         while(!input(ODO));
-
 
206
         n++;
-
 
207
         if(n==13) break;
-
 
208
      }
-
 
209
 
-
 
210
      set_pwm1_duty(0);    // reverz (zabrzdi)
-
 
211
      set_pwm2_duty(0);
-
 
212
      output_high(MOT_L);
-
 
213
      output_high(MOT_R);
-
 
214
      delay_ms(200);
-
 
215
      brzda();
-
 
216
 
-
 
217
      SetServo(CASMIN);   // max. doleva
-
 
218
      set_pwm1_duty(0);   // vzad
-
 
219
      set_pwm2_duty(20);
-
 
220
      output_low(MOT_L);
-
 
221
      output_high(MOT_R);
-
 
222
      n=0;
-
 
223
      while(true)
-
 
224
      {
-
 
225
         while(input(ODO));
-
 
226
         while(!input(ODO));
-
 
227
         n++;
-
 
228
         if(n==6) break;
-
 
229
      }
-
 
230
      set_pwm1_duty(0);    // reverz (zabrzdi)
-
 
231
      set_pwm2_duty(255);
-
 
232
      output_low(MOT_L);
-
 
233
      output_low(MOT_R);
-
 
234
      delay_ms(200);
-
 
235
 
-
 
236
      brzda();
-
 
237
 
-
 
238
      SetServo((CASAVR-CASMIN));   // rovne
-
 
239
      set_pwm1_duty(190);  // vpred
-
 
240
      set_pwm2_duty(190);
-
 
241
      output_low(MOT_L);
-
 
242
      output_low(MOT_R);
132
      #include ".\objizdka_R.c"
243
      n=0;
-
 
244
      while(true)
-
 
245
      {
-
 
246
         while(input(ODO));
-
 
247
         while(!input(ODO));
-
 
248
         n++;
-
 
249
         if(n==9) break;
-
 
250
      }
-
 
251
/*
-
 
252
      set_pwm1_duty(0);    // reverz (zabrzdi)
-
 
253
      set_pwm2_duty(0);
-
 
254
      output_high(MOT_L);
-
 
255
      output_high(MOT_R);
-
 
256
      delay_ms(100);
-
 
257
*/
-
 
258
      brzda();
-
 
259
 
-
 
260
      cas=CASMIN;  // Cara je vlevo
-
 
261
 
-
 
262
      stav=cihla;
-
 
263
   }
133
   }
264
}
134
}
265
 
135
 
266
// Zobrazeni jednoho byte na modulu LEDbar
136
// Zobrazeni jednoho byte na modulu LEDbar
267
void disp(int8 x)
137
void disp(int8 x)