ИК датчик

A2109
Offline
Зарегистрирован: 07.07.2013

Здравствуйте.

Пожалуйста помогите разобраться в коде. своих знаний пока не хватает. пытаюсь научится на чужих примерах.

Но не могу разобраться в коде работы ИК светодиода и ИК приемника. код приведен на ссылке Инструктэйбл

Работа сервы и фоторезисторов пока не интересует.

Зачем нужен ШИМ и почему изменение ширины импульса задано от 0 до 384, а не 255? и как происходит принятие решения ардуиной о том, что сигнал отраженный, а не ложный.

#define IRsensorPin 11
 #define IRledPin 10

 const int RightSensor = 2;
 const int LeftSensor = 0;

 int IR;
 int SensorLeft;
 int SensorRight;
 int SensorDifference;

 void IR38Write() {
   for(int i = 0; i <= 384; i++) {
     digitalWrite(IRledPin, HIGH);
     delayMicroseconds(13);
     digitalWrite(IRledPin, LOW);
     delayMicroseconds(13);
   }
 }
 void setup() {
 myservo.attach(5);
 pinMode(IRledPin, OUTPUT);
 digitalWrite(IRledPin, LOW);
 pinMode(8, OUTPUT);
 pinMode(9, OUTPUT);





 

vdk
Offline
Зарегистрирован: 14.04.2013

Это не ШИМ, а 384 импульса (blink)

A2109
Offline
Зарегистрирован: 07.07.2013

тогда еще меньше понятно. для работы TSOP надо в пачке порядка двадцати импульсов. и столько же по времени пауза.

vdk
Offline
Зарегистрирован: 14.04.2013

А это не обязательно TSOP

A2109
Offline
Зарегистрирован: 07.07.2013

Что то у меня уже пропало желание вопросы задавать

vdk
Offline
Зарегистрирован: 14.04.2013

Вот аналогичный скетч: http://compcar.ru/forum/showthread.php?t=5211

(все расписано на русском)

A2109
Offline
Зарегистрирован: 07.07.2013

Спасибо, vdk.