2 / 2 / 0
Регистрация: 05.10.2010
Сообщений: 37
|
|
1 | |
АЦП-ЦАП в микроконтроллерах PIC16Cxx. Выбор МК03.12.2013, 17:41. Показов 3258. Ответов 7
Метки нет (Все метки)
Здравствуйте, господа. Без лишней лирики перейду сразу к делу.
Имеется задание на курсовой проект, где нужно принять два налоговых сигнала с амплитудой 0-5 В, пропустить их через АЦП, выполнить определенные операции и, пропустив через ЦАП, послать на выход получившиеся аналоговые сигналы. Имеется также ряд вопросов: 1. Скольки разрядный АЦП стоит использовать (а соответственно и МК)? Какая точность в данной ситуации не покажется абсурдно низкой? 2. Можете привести пример использования ЦАП в одном из МК вышеуказанной серии? В гугле достаточно много информации по АЦП, а вот по ЦАПу я так и не смог найти ничего. Нужно принимать во внимание то, что среди операций есть взятие корня, возведение в степень и деление, то есть, если отбрасывание дробной части результата не вариант, то нужно преобразование выполнять с числом немалой разрядности (кстати, как организована работа в МК с "дробными" числами). 3. Как организовать параллельный ввод двух сигналов и, соответственно, вывод? Оговорюсь, что знания в плане микроконтроллеров у меня поверхностные, но курсовой-то делать надо. Поэтому в своих вопросах мог нести ересь, не обессудьте. Спасибо.
0
|
03.12.2013, 17:41 | |
Ответы с готовыми решениями:
7
ЦАП И АЦП АЦП ЦАП Stm32 Из ЦАП в АЦП Обозначение АЦП/ЦАП на Э3 Обвязка выводов ЦАП и АЦП |
194 / 154 / 23
Регистрация: 16.08.2013
Сообщений: 738
|
|
03.12.2013, 18:37 | 2 |
Первое и основное - частота дискретизации???
второе - разрядность преобразования??? Вначале определитесь с этим. Но в принципе, исходя из "PIC16Cxx", можно предположить, что точность разрядность преобразования максимум 10 бит. Разрядность обратного преобразования 8 бит. А частота, с учетом "выполнить определенные операции" и "среди операций есть взятие корня, возведение в степень и деление" будет не велика, примерно до 1000 Гц. АЦП встроен в мк (это вы уже знаете), а ЦАП делается с помощью ШИМ и RC-цепочке (фильтре нижних частот). Добавлено через 8 минут http://chipenable.ru/index.php... lerom.html
1
|
03.12.2013, 22:09 | 3 |
Если значения с которыми приходится работать ограничены и их диапазон известен, то для ускорения результаты формируют в таблицу и записывают ее во флеш и уже пользуются готовыми табличными значениями (характерно для синуса, арктангенса). Для мощных МК конечно уже есть спецнабор готовых либ, которые собственно вышеописанным и занимаются. Кстати, о трюках. Скачайте себе книжечку Уоррена-мл. Алгоритмические трюки для программистов. Пригодится и много полезного.
1
|
2 / 2 / 0
Регистрация: 05.10.2010
Сообщений: 37
|
|
04.12.2013, 18:35 [ТС] | 4 |
korsaj, руководитель не уточнял ни частоту дискретизации, ни разрядность преобразования. Судя по всему, он оставил это на мое усмотрение.
Если я правильно понял, то в 8 бит должен будет поместиться результат после выполнения операций? Но а как же быть, если в результате получится число с плавающей точкой? Отбрасывать дробную часть — совсем не вариант. Дело в том, что, скорее всего, мне нужно именно программно продемонстрировать цифро-аналоговое преобразование, хотя я это еще уточню. А насколько мощных? Среди представителей 16-х PIC-ов есть такие?
0
|
04.12.2013, 20:25 | 5 |
0
|
194 / 154 / 23
Регистрация: 16.08.2013
Сообщений: 738
|
|
04.12.2013, 21:02 | 6 |
Вам не нужны никакие плавающие точки. Все реализуется очень просто. У вас есть источник данных (АЦП), есть ЦАП которому нужны только натуральные числа. Дак зачем применять мудрить с точкой. Делаете вычисления, при умножении натуральных чисел получаются только натуральные, при делении и извлечения корня возможно появление дробной части, но ее можно вынести в доп регистр и производить коррекцию целой части (либо округлять сразу, либо после вычислений).
0
|
2 / 2 / 0
Регистрация: 05.10.2010
Сообщений: 37
|
|
05.12.2013, 17:21 [ТС] | 7 |
korsaj, ну смотрите. У меня указан диапазон от 0 до 5 В. Ведь входные сигналы не обязательно будет строго 5, 4, 3 и т.д., а могут быть и 3,754.
И с выводом непонятна ситуация. К примеру, функция sqrt(x1*x2). В одном случае у нас будет, допустим, sqrt(3,4*2,9)=3,14, а во втором sqrt(3,4*2,6)=2,97. После округления получится одно и то же число — 3. А ведь входное напряжение-то разное. А за счет того, что амплитуда 5 В, так у нас вообще результаты операции почти со всеми возможными входными сигналами будут на выходе в одну линию сливаться на графике.
0
|
194 / 154 / 23
Регистрация: 16.08.2013
Сообщений: 738
|
|
05.12.2013, 21:20 | 8 |
Далеко вам еще..
Не по теме: Анекдот в тему: Мужик идет в Таллин, подходит к рельсам, а по ней мчится дрезина, он ее тормозит и спрашивает: Дак вы тоже не о том. АЦП преобразует входной сигнал в относительные единицы, а относительность - это опорное напряжение поделить на 2 в степени разрядность АЦП. И никаких там плавающих запятых. 0 это 0, а 5 это 1023 (при опорном напряжении 5 вольт и разрядности АЦП 10 бит). Так что читайте про АЦП.
0
|
05.12.2013, 21:20 | |
05.12.2013, 21:20 | |
Помогаю со студенческими работами здесь
8
АЦП/ЦАП, преобразование напряжения Правильное соединение АЦП и ЦАП в Multisim 13 Программа для расчета разрядности АЦП и ЦАП АЦП-ЦАП в ATmega или вопросы новичка :) Протокол обмена между ЦАП (AD8300) и АЦП (AD7896) Как формируется напряжение на выходе ЦАП в схеме преобразователя АЦП Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |