Микроконтроллеры | Могу ли я начать изучение микроконтроллеров используя PIC16F74? |
|
---|---|---|
kkol: очень хорошая зарядка для мозгов |
|
|
Привет Всем. Ну вот и первый затык. Преобразование аналогового напряжения на входе RA0 в бинарный код работает неплохо и даже количество ступеней могу выбрать произвольно. Но....... при некотором пороговом значении между битами, результат конвертации начинает скакать (плюс минус 1 бит), а этого как раз и не должно быть в устройстве. В принципе это было ожидаемо, но думал что не так ярко выражено будет. Установка фильтра и стаба по измеряемому входу, ситуацию улучшают, но не до конца, просто реже мыргает (вместо светодиодов будут стоять реле). То же самое с применением задержки при выводе на индикацию. Хотя примеров не нашел чтобы посмотреть как это можно делать, мысль такая: 1. объявляю две переменные для текущего и нового значений преобразования. 2. сравниваю значения. 3. большее или меньшее значение (не играет роли) пишу в переменную для текущего значения. 4. текущее значение вывожу на порт вывода. 5. и так по кругу........ Просветите пожалуйста. |
|
|
Отбросить младший разряд, этим устранив джиттер. |
|
|
Vladikas: Отбросить младший разряд А это програмно ? Прошу прощения за глупый вопрос. |
|
|
Прочитать значение на резисторе, ацп то есть. Получилось число, провести с младшим разрядом операцию логическое или с числом 1, получится то же число, что в ацп, но младший разряд всегда будет 1. |
|
|
Vladikas: Получилось число, провести с младшим разрядом операцию логическое или с числом 1, получится то же число, что в ацп, но младший разряд всегда будет 1. Спасибо, буду думать как это програмно выразить. Интересен алгоритм. Vladikas: Или сделать сдвиг числа вправо, результат почти тот же, А вот это где то видел, это как де жа вю, что то подобное недавно читал................. |
|
|
А может я глупости пишу |
|
|
вы убираете младший бит, уменьшая точность замера в 2 раза и больше ничего. |
|
|
AnSi: полагаю лучше организовать статистическую обработку замеров, например - усреднить результаты замеров за некоторый интервал времени. То есть пишем массив, например за 10 тактов, и наибольшее число ( можно и меньшее ) пишем на выход? AnSi: вы убираете младший бит, уменьшая точность замера в 2 раза и больше ничего. В принципе точность не нужна. Надо просто рабочий ход потенциометра разбить на 24 сектора или на 32. А вот переход от сектора к сектору не должен дрожать если потенциометр остановится в таком положении. Vladikas: Типа так сдвиг. Надыть попробовать. Пасибо. |
|
|
Vladikas: Типа так сдвиг. kkol: Надо рабочий ход потенциометра разбить на 24 сектора или на 32 |
|
|
Форум про радио — сайт, посвященный обсуждению электроники, компьютеров и смежных тем. pro-radio.online | Обратная связь |
© 2003—2024 |