ktodky
|
||||||
Проблемма с АЦП02.04.2010, 16:48. Показов 11106. Ответов 17
Метки нет Все метки)
(
Возникла проблема при работе с АЦП
Использую АЦП в режиме одиночного преобразования. Вход АЦП установлен на PC5(ADC5), PC5 настроен на вход, включены резисторы подтяжки. для индикации использую семисегментный индикатор с динамической индикацией. Выравниваю результат АЦП по левому краю. В качестве опорного напряжения использую AREF. Проблема заключается в следующем: Результат преобразования постоянно равен 255, и не реагирует на напряжение подключаемое к PC5. Если вместо PC5 вход установить на зкмлю то показывает верное значение 0, если установить вход на 1.22 В (mux3..mux0 = 1110) то также показывает верное значение, я в замешательстве. Прошу помощи. Заранее спасибо. Код программы
|
02.04.2010, 16:48 | |
Ответы с готовыми решениями:
17
Не возникает прерывание АЦП.... в чём проблемма? Расширение АЦП микроконтроллера и подключение к АЦП датчиков Как связать таймер с АЦП и АЦП с DMA? |
ktodky
|
|
04.04.2010, 09:17 | |
Устройство на это никак не отреагировало, также показывает максимально возможное значение 255
|
ktodky
|
|
04.04.2010, 13:36 | |
Спасибо за подсказку с векторами, но проблема не решена..
По неизвестной причине ацп не реагирует на напряжение подаваемое на на ногу, но при посадке на 0 или 1.22 с помощью MUX3..MUX0 выводит верное напряжени |
0 / 0 / 0
Регистрация: 22.01.2010
Сообщений: 3,496
|
||
04.04.2010, 14:00 | ||
Могу только порекомендовать - оставить от исходника только те части, которые меряют и инициализируют мерялку, и с ними добиваться результата. Потому как многие вещи сделаны... эээ, нетривиально, например
cbr tmp,0b00111100; temp = 0b11110011 out DDRC,tmp; С2, С3,C4,C5 - входы АЦП,остальные - выходы вместо ldi tmp, 0b11000011 out ddrC,tmp Надо оставить только необходимые куски кода, и с ними работать, выискивая ошибку. Кроме того, есть вариант, что там на самом деле такое напряжение, как измеряется - надо померить напряжение непосредственно на ножке контроллера - может быть трещина_в_плате, непропай_ножки, и прочие мелкие радости жизни. PS: пока я писал, подобные мысли стали приходить в голову и остальным болельщикам...
0
|
ktodky
|
|
04.04.2010, 15:43 | |
Совсем ничего не могу понять..
Вольтметр показывает ноль от опорного Ацп заработало, но когда к входу АЦП не подается напряжение, значение 255, если замкнуть на землю, то 0 а если подключить ко внутреннему напряжению 1.22 то значение 64 должно считаться по формуле АЦП = 256*входное/опорное |
ktodky
|
|
04.04.2010, 16:45 | |
да, при значении 64 это верно
но когда я не подаю никакого напряжения на ногу у меня показывает 255, а должно быть 0... |
ktodky
|
||||||
05.04.2010, 19:04 | ||||||
значения R_IMG(вход PC2), I_IMG(вход PC3), U_IMG(вход PC4) все равны 255 при подаче напряжения (батарейка 4,5 в, + ) на любой из портов (PC2, PC3, ЗС4) реакция одинаковая: большие колебания значений от 0хх до 15х, 16х так что цифры х не разобрать колебания значений от 24х до 25х так что цифры х не разобрать колебания значений от 24х до 25х так что цифры х не разобрать |
ktodky
|
|
07.04.2010, 19:02 | |
Спасибо за ответ, но проблема не в том, что слишком быстро отображаются цифры.
А в том что при отсутствии напряжения на входе ацп значение равно 255 (максимально возможное) ... |
12vot12
|
|
08.04.2010, 15:43 | |
при отсутствии напряжения на входе или при висящем в воздухе входе ?
при висящем входе ацп меряет то что было подключено до этого на цепи (выборка-хранение остается предыдущее напряжение ) например если по кругу мерять adc0 -5в adc1- в воздухе adc2- 1.25в adc3- в воздухе adc4=0v adc5 в воздухе то будут возвращаться значения 5 ~4.98 1.25 ~1.24 0 ~0 |
ktodky
|
||
08.04.2010, 18:05 | ||
показывает значение 255(старший байт ADCH при выравнивании результата влево воспринимается в программе как без знаковое число). Код приведен несколькими сообщениями выше.. Не понимаю откуда берется это значение, ведь вход "висит".. |
12vot12
|
|
08.04.2010, 19:59 | |
ок пойдем от обратного ..возьмите резистор 39к (+- 3k) и подтяните вход
1 к 0 2 к ~1.5 вольт что покажет ? 3 вариант непосредственно перед измерением adc5(висящем ввоздухе) в цикле программы замерять MUX3..0 (1111) 0V (GND) |
Илекси
|
|
21.01.2011, 02:56 | |
ktodky, у вас несколько железных проблем, для избавления от которых следует
1 - выяснить уровень опорного напряжения на ножке AREF (вольтметром) 2 - подать на вход напряжение с переменного резистора 1k подключенного к +5v и 0v, чтоб отследить диапазон измерения 3 - подключить измеряемое напряжение через RC цепь 100k,100uF чтобы свести возможность измерения помех и пульсаций к минимуму. Только после этого можно приступать к разборкам с софтом |
21.01.2011, 02:56 | |
Помогаю со студенческими работами здесь
18
Mega16 и неиспользуемый АЦП (питание ацп?) Алгоритм работы с ацп АЦП STM32F103 АЦП замена АЦП в AVR WinSock. Проблемма. Проблемма с разветвлением... Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
Мульти-тенантные БД с PostgreSQL Row Security
Codd 23.04.2025
Современные облачные сервисы и бизнес-приложения всё чаще обслуживают множество клиентов в рамках единой программной инфраструктуры. Эта архитектурная модель, известная как мульти-тенантность, стала. . .
|
Реализация конвейеров машинного обучения с Python и Scikit-learn
AI_Generated 23.04.2025
Мир данных вокруг нас растёт с каждым днём, и умение эффективно обрабатывать информацию стало необходимым навыком. Специалисты по машинному обучению ежедневно сталкиваются с задачами предобработки. . .
|
Контроллеры Kubernetes Ingress: Сравнительный анализ
Mr. Docker 23.04.2025
В Kubernetes управление входящим трафиком представляет собой одну из ключевых задач при построении масштабируемых и отказоустойчивых приложений. Ingress — это API-объект, который служит вратами. . .
|
Оптимизация кода Python с Cython и Numba
py-thonny 23.04.2025
Python прочно обосновался в топе языков программирования благодаря своей простоте и гибкости. Разработчики любят его за читабельность кода и богатую экосистему библиотек. Но у этой медали есть и. . .
|
Микросервис на Python с FastAPI и Docker
ArchitectMsa 23.04.2025
В эпоху облачных вычислений и растущей сложности программных продуктов классическая монолитная архитектура всё чаще уступает место новым подходам. Микросервисная архитектура становится фаворитом. . .
|
Создаем веб-приложение на Vue.js и Laravel
Reangularity 23.04.2025
Выбор правильного технологического стека определяет успех веб-проекта. Laravel и Vue. js формируют отличную комбинацию для создания современных приложений. Laravel — это PHP-фреймворк с элегантным. . .
|
Максимальная производительность C#: Span<T> и Memory<T>
stackOverflow 22.04.2025
Мир высоконагруженных приложений безжалостен к неэффективному коду. Каждая миллисекунда на счету, каждый выделенный байт памяти может стать причиной падения производительности. Разработчики на C#. . .
|
JWT аутентификация в Java
Javaican 21.04.2025
JWT (JSON Web Token) представляет собой открытый стандарт (RFC 7519), который определяет компактный и самодостаточный способ передачи информации между сторонами в виде JSON-объекта. Эта информация. . .
|
Спринты Agile: Планирование, выполнение, ревью и ретроспектива
EggHead 21.04.2025
Спринты — сердцевина Agile-методологии, позволяющая командам создавать работающий продукт итерационно, с постоянной проверкой гипотез и адаптацией к изменениям. В основе концепции спринтов лежит. . .
|
Очередные открытия мега простых чисел, сделанные добровольцами с помощью домашних компьютеров
Programma_Boinc 21.04.2025
Очередные открытия мега простых чисел, сделанные добровольцами с помощью домашних компьютеров.
3 марта 2025 года, в результате обобщенного поиска простых чисел Ферма в PrimeGrid был найден. . .
|