Перейти к содержанию

Доработка Пробника Конденсаторов


Рекомендуемые сообщения

Собрал по туториалу схемку, залил скретч. http://arduino.cc/en...apacitanceMeter

CapacitanceMeterSchem.png

Идея заключается в том, что бы изменять сопротивление резистора, через который разряжается конденсатор. Это необходимо для измерения мелких конденсаторов с хорошей точностью, но при сопротивлении 20кОм и выше, конденсаторы больше 1000мкФ замеряются слишком долго.

Я планировал использовать несколько выводов контроллера для 3-х диапазонов (нФ, мкФ < 1000 и мкФ > 1000).

Добавил в схему два резистора, задействовал еще два цифровых вывода, перенес из констант значение сопротивления и номер вывода. Но, похоже, при переключении переменных по нажатию кнопки через attachinterrupt, циклы while не заканчиваются.

while(analogRead(analogPin) > 0){		 // wait until capacitor is completely discharged
}

Я не совсем понимаю, как работают прерывания с циклами и на правильном ли я пути. Подскажите, пожалуйста.

Изменено пользователем ADiel
Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

1. В исходном скетче никаких прерываний нет, а куда вы там их добавили и как используете - неведомо. Предоставьте код и схему включения изменённых цепей, что ли...

2.

while(analogRead(analogPin) > 0){
}

Этот код гласит, что цикл будет крутиться, пока на analogPin присутствует напряжение, т.е. пока не разрядится конденсатор.

3. Про использование операторов и прочего почитайте тут, всё понятно и по-русски...

зы.

4. Используйте какую-никакую, а отладку - навтыкайте в спорные места serial.print и смотрите результаты в мониторе.

Изменено пользователем DrZ
Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...