не работают аналоговые входы

draco
Offline
Зарегистрирован: 14.12.2017

помогите, пожалуйста, решить мою проблему:

имеется arduino mega2560 (китайская)
после приобретения я работал только с цифровыми входами
 
сегодня решил сделать dc вольтметр, пришлось задействовать аналоговый вход
в процессе отладки выяснил, что на всех входах (проверял в цикле) постоянно значение 1023 (или 5v в зависимости от интерпретации кода) и при подаче напряжения и без
тестовое напряжение никогда не превышало 5в
 
что с платой, или что я делаю не так?
Penni
Penni аватар
Offline
Зарегистрирован: 18.01.2015

Как настроены аналоговые пины (pinMode)?

draco
Offline
Зарегистрирован: 14.12.2017

pinMode(A0, INPUT); и т.д.

b707
Offline
Зарегистрирован: 26.05.2017

draco пишет:

 
что с платой, или что я делаю не так?

выкладывайте код и схему подключения

draco
Offline
Зарегистрирован: 14.12.2017

вариантов много...

вот из самого простого, кажется..

int analogPin = A0;

void setup() {
  Serial.begin(9600);
  pinMode(A0, INPUT);
}
void loop() {
  int rawReading = analogRead(analogPin);
  float volts = rawReading / 204.6;
  Serial.println(volts);
  delay(1000);
}

в экране монитора: 5.0 5.0 ...

подключал с ардуино на A0: 5v, 3.3v, gnd, все равно 5.0 5.0 ...

Penni
Penni аватар
Offline
Зарегистрирован: 18.01.2015

Т.е. кидаете проводок с GND платы на A0 и этот скетч выдает 5 вольт?

draco
Offline
Зарегистрирован: 14.12.2017

да

Penni
Penni аватар
Offline
Зарегистрирован: 18.01.2015

А если после 5й строки добавить digitalWrite(A0, LOW)

draco
Offline
Зарегистрирован: 14.12.2017

и так пробовал, все равно 5.0

Pyotr
Offline
Зарегистрирован: 12.03.2014

Поверьте аналоговая земля на 99 ноге МК есть? Может непропай? Ну и референс заодно...

draco
Offline
Зарегистрирован: 14.12.2017

можно подробнее, как их проверить? )

Pyotr
Offline
Зарегистрирован: 12.03.2014

draco пишет:

можно подробнее, как их проверить? )

Тестером.. замерить напряжение на 99 ноге МК при вкл питании. Если ноль, то норм.
Или в обесточенном состоянии замерить сопротивление земля-99 нога МК. Должно быть ноль Ом.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Также возможен плохой контакт в разьемах аналоговых входов, непропай самих аналоговых входов (сигнал не доходит до ноги дуньки - встречались такие тоже), отсутствие питания на AVCC, фиговые кондеры в системе АЦП и т.п. - тупо прозванивать и проверять каждый контакт и дорогу..

draco
Offline
Зарегистрирован: 14.12.2017

Pyotr пишет:

draco пишет:

можно подробнее, как их проверить? )

Тестером.. замерить напряжение на 99 ноге МК при вкл питании. Если ноль, то норм.
Или в обесточенном состоянии замерить сопротивление земля-99 нога МК. Должно быть ноль Ом.

ок, в ближайшее время проверю

а реф тоже на отсутствие напряжения проверить?

P.S. мультиметр не со мной еще дней 10 ))

draco
Offline
Зарегистрирован: 14.12.2017

Arhat109-2 пишет:

Также возможен плохой контакт в разьемах аналоговых входов, непропай самих аналоговых входов (сигнал не доходит до ноги дуньки - встречались такие тоже), отсутствие питания на AVCC, фиговые кондеры в системе АЦП и т.п. - тупо прозванивать и проверять каждый контакт и дорогу..

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

Pyotr
Offline
Зарегистрирован: 12.03.2014

draco пишет:

ок, в ближайшее время проверю

а реф тоже на отсутствие напряжения проверить?

P.S. мультиметр не со мной еще дней 10 ))

РЕФ проверьте, может на землю сопля - ножки  реф и земля рядом...

b707
Offline
Зарегистрирован: 26.05.2017

draco пишет:

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

купите для начала Нано - она 100 рублей стоит, потренируйтесь...

draco
Offline
Зарегистрирован: 14.12.2017

Pyotr пишет:

draco пишет:

можно подробнее, как их проверить? )

Тестером.. замерить напряжение на 99 ноге МК при вкл питании. Если ноль, то норм.
Или в обесточенном состоянии замерить сопротивление земля-99 нога МК. Должно быть ноль Ом.

измерил между AREF и GND - 0v

Pyotr
Offline
Зарегистрирован: 12.03.2014

draco пишет:

измерил между AREF и GND - 0v

Между ножками иглой процарапайте - может сопля? Ну и дальше проверяйте где коротыш. И коротыш ли или на ногу напруга не подается. Сопротивление измерьте земля-реф. Если 0 Ом, то коротыш.

draco
Offline
Зарегистрирован: 14.12.2017

Pyotr пишет:

draco пишет:

измерил между AREF и GND - 0v

Между ножками иглой процарапайте - может сопля? Ну и дальше проверяйте где коротыш. И коротыш ли или на ногу напруга не подается. Сопротивление измерьте земля-реф. Если 0 Ом, то коротыш.

кажется вы правы.

сопротивление ноль, сверху на чипе atmega, как раз там где по схеме ноги gnd и aref - как будто между ножками метал. без лупы пока не могу сказать точно.

в общем, везет, однако... 

Pyotr
Offline
Зарегистрирован: 12.03.2014

Давно бы уж процарапали острым предметом. Припой мягкий. Подключите тестер земля-АРЕФ в режиме измерения сопротивления и царапайте пока не пропадет КЗ.

Паяльником уж не буду советовать работать на атмега2560. Если б могли, давно сделали.

FAI4
Offline
Зарегистрирован: 23.09.2016

Попробуйте использовать другой аналоговый вход, начиная с А2 (любой другой из А2...А15)

А0 и А1 задействованы (заняты) бывают в протоколе последовательного обмена данными

он у вас включен строкой  Serial.begin(9600);

draco
Offline
Зарегистрирован: 14.12.2017

проблема решена - между ножками atmega (gnd и aref)  с лицевой стороны было замыкание (кусочек припоя), удалил иголкой

всем спасибо! в особенности Pyotr несмотря на определенный сарказм )

Pyotr
Offline
Зарегистрирован: 12.03.2014

draco пишет:

проблема решена - между ножками atmega (gnd и aref)  с лицевой стороны было замыкание (кусочек припоя), удалил иголкой

всем спасибо! в особенности Pyotr несмотря на определенный сарказм )

Ладно, не обижайтесь... Не хотел зацепить... Просто мне непонятно, как можно  одну "соплю" месяц  искать... Когда я работал телемастером, при таком темпе сдох бы уж с голоду)) Приходилось по 5-8 телеков за день ремонтировать. Так это еще и работа грузчиком. Ламповые цветные 700-й модели под 70 кг были.