Проблема с подключением датчиков на входы ArduinoMega2560 и программированием этих датчиков
- Войдите на сайт для отправки комментариев
Вс, 09/03/2014 - 23:16
Привет всем!
На "Мегу" подключил датчик расстояния:
Питание на 40 цифровой
земля к земле
Vss на аналоговый А1.
Датчик включился, напряжение есть. Когда подносишь и относишь от препятствия - изменения напряжение на А1 есть. Но вводя скетч, он отказывается принимать значение с этих датчиков. На А0 например работает через раз.
Вот скетч:
int a; void setup() { pinMode(A1,INPUT); pinMode(6,OUTPUT); pinMode(7,OUTPUT); pinMode(40,OUTPUT); } void loop() { analogReference (DEFAULT); digitalWrite(40,HIGH); analogWrite(6,100); analogWrite(7,100); delay (1000); int a=analogRead (A1); if (a>=500) { digitalWrite(6,LOW); digitalWrite(7,LOW); delay(10000); } }
И объясните смысл analogReference.
Спасибо!
Какой Вы датчик используете?
Что и как работает на А0 через раз?
http://arduino.ru/Reference/AnalogReference
GP2Y0A021 компании Sharp.
При подключении этого датчика на А0 он дает показания через раз, а на А1 не дает совсем
а зачем питать датчик через цифровой выход? имхо, изврат какой-то....
Разделите задачу на две.
1. Проверьте сам датчик. Запитайте от нормальных 5 вольт, USB например, и проверьте вольтметров что выдает.
2. Разберитесь со своим скетчем, добейтесь его работы при изменении напряжения на пине.
И согласен с Com насчет питания. Если даже есть сокральный смсл это делать, разберитесь сначала с нормальным питанием.
На двигатели, мы выдаем напряжение с выхода 5В используя L293D что бы мегу не сжечь. А поскольку этот выход используется движками, то испоьзуем цифровые выходы( на них при HIGH такое же напряжение).
На двигатели, мы выдаем напряжение с выхода 5В используя L293D что бы мегу не сжечь. А поскольку этот выход используется движками, то испоьзуем цифровые выходы( на них при HIGH такое же напряжение).
мухи от котлет отделите - есть силовая часть, и есть слаботочная управляющая