реклама на сайте
подробности

 
 
> Захватить ШИМ, преобразовать в код
ViKo
сообщение Oct 23 2015, 09:20
Сообщение #1


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Допустим, имеем ШИМ с периодом 1 мс. Читаем его 200 раз за период логическим входом микроконтроллера. Как теперь эти нули и единицы превратить в код, соответствующий скважности ШИМ? Например, создать длинный регистр, допустим, из 4096 битов. Задвигаем прочитанный вход в регистр, сдвигаем все биты, последний бит теряется. И вычисляем сумму всех битов. В-общем, скользящее среднее.
Есть ли способ лучше? Можно ли улучшить данный алгоритм?
Попутно вопрос - как на C определить и использовать длинный сдвиговый регистр?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ViKo
сообщение Oct 23 2015, 13:00
Сообщение #2


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Можно и RC фильтром преобразовать в аналоговый сигнал и подать на АЦП.
Go to the top of the page
 
+Quote Post
EvgenyNik
сообщение Oct 28 2015, 07:13
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402



Цитата(ViKo @ Oct 23 2015, 16:00) *
Можно и RC фильтром преобразовать в аналоговый сигнал и подать на АЦП.
Можно. Но сначала надо решить вопрос с требуемой точностью. Результат на выходе фильтра будет зависеть не только от заполнения ШИМ, но и от амплитуды генератора, а та, в свою очередь, может зависеть не только от стабильности источника питания, но и от напряжения на конденсаторе фильтра (если выход слабый).
Опять же, автор не указал - насколько быстро меняется заполнение во времени. Фильтр даст усреднённое значение, фактически, за несколько периодов. А вдруг, у него ШИМ генерирует сложный процесс и ему нужен каждый период.


--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 16:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01368 секунд с 7
ELECTRONIX ©2004-2016