Subversion Repositories svnkaklik

Rev

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

Rev 193 Rev 194
Line 1... Line 1...
1
//******** Robot Camerus pro IstRobot 2007 ************
1
//******** Robot Camerus pro IstRobot 2007 ************
2
//"$Id: camerus.c 193 2007-03-17 12:24:49Z kakl $"
2
//"$Id: camerus.c 194 2007-03-17 14:39:11Z kaklik $"
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 96... Line 96...
96
}
96
}
97
 
97
 
98
#int_EXT
98
#int_EXT
99
EXT_isr()   // Preruseni od prekazky
99
EXT_isr()   // Preruseni od prekazky
100
{
100
{
-
 
101
   int8 i;
-
 
102
   
101
   set_pwm1_duty(0);    // reverz (zabrzdi)
103
   set_pwm1_duty(0);    // reverz (zabrzdi)
102
   set_pwm2_duty(0);
104
   set_pwm2_duty(0);
103
   output_high(MOT_L);  // vzad
105
   output_high(MOT_L);  // vzad
104
   output_high(MOT_R);
106
   output_high(MOT_R);
105
   // Ujistime se, ze prijaty signal je z naseho IR vysilace
107
   // Ujistime se, ze prijaty signal je z naseho IR vysilace
Line 119... Line 121...
119
      output_low(MOT_R);
121
      output_low(MOT_R);
120
      return;
122
      return;
121
   };
123
   };
122
 
124
 
123
   SetServo((CASAVR-CASMIN));   // rovne
125
   SetServo((CASAVR-CASMIN));   // rovne
124
   delay_ms(200);    // Doba reverzace
-
 
125
 
126
 
-
 
127
   set_pwm1_duty(140);  // vpred
-
 
128
   set_pwm2_duty(140);
-
 
129
   output_low(MOT_L);
-
 
130
   output_low(MOT_R);
-
 
131
   i=0;
-
 
132
   while(true)
-
 
133
   {
-
 
134
     while(input(ODO)) if(read_adc()<128) goto brzdi; // Je cihla blizko?
-
 
135
     while(!input(ODO));
-
 
136
     i++;
-
 
137
     if(i==8) return; // nedojeli jsme k cihle, jed dal
-
 
138
   }
-
 
139
brzdi:   
-
 
140
   set_pwm1_duty(0);    // reverz (zabrzdi)
-
 
141
   set_pwm2_duty(0);
-
 
142
   output_high(MOT_L);
-
 
143
   output_high(MOT_R);
-
 
144
   delay_ms(100);
126
   brzda();
145
   brzda();
127
 
146
 
128
   if (stav==cihla) while(true); // Zastav na furt, konec drahy
147
   if (stav==cihla) while(true); // Zastav na furt, konec drahy
129
 
148
 
130
   if(stav==jizda)   // Objed cihlu
149
   if(stav==jizda)   // Objed cihlu