Что такое ЦАП и АЦП?


ЦАП, АЦП

Цифро-аналоговый преобразователь. Аналого-цифровой преобразователь.

Данные устройства в являются «проводниками» между аналоговым и цифровым мирами электричества.

Суть в том, что датчики, двигатели, световые и многие другие устройства для своей работы используют аналоговый сигнал, то есть, например, напряжение с уровнем от 0В до 12В, в то время как цифровые ПЛИСы, микроконтроллеры и микросхемы нуждаются в постоянных уровнях напряжения, например 0В и 5В, представляющих собой логические 0 и 1 соответственно.

 

Пример 1. ЦАП

Представим, что перед нами поставлена задача управления яркостью светодиода:

  • 10 уровней(градаций) яркости свечения светодиода
  • максимальное напряжение через светодиод 9В
  • управляем с помощью микроконтроллера и двух кнопок  «+1 уровень яркости», «-1 уровень яркости»

Итак, светодиод работает на напряжении от 0 до 9В. Нетрудно догадаться, что 10 градаций яркости — это 10 уровней напряжения, которые мы подаем на светодиод — 0В, 1В, … , 9В

Микроконтроллер выдает напряжение либо 0В либо 5В. Но никак не 1В, 3В, 4В или 9В. Зато у микроконтроллера много логических выводов, которые мы можем подключить к ЦАПу и преобразовать логику в аналоговый сигнал.

У цифро-аналогового преобразователя есть, к примеру, 4 входных вывода для подключения логических сигналов и 2 вывода для выходного аналогового напряжения от 0 до 15В — выводы «+» и «-«.

Вот вам и работа ЦАПа: когда мы подаем на все 4 ножки логические 1, то уровень напряжения аналогового выходного сигнала является максимальным(15В в нашем случае), когда подаем 0 — минимальным, то есть 0В

ЦАП. Цифро-аналоговый преобразователь

ЦАП. Цифро-аналоговый преобразователь

Теперь самое интересное. У каждого входного вывода ЦАПа есть свой «вес» для выходного сигнала. Например, верхний вывод «весит» 8В(то есть, если подать логическую 1 только на 1й вывод, то на выходе мы получим 8В), следующий ниже 4В, следующий 2В, и последний нижний 1В. Теперь сложите эти цифры и получите 15В.

Нам необходимо получить уровни 0В, 1В, 2В, 3В, 4В, 5В, 6В, 7В, 8В и 9В.

Это значит, что на входы ЦАП на нужно подавать коды в соответствии со следующей таблицей

Напряжение на аналоговом выходе
Вход 1, вес 8В 0 0 0 0 0 0 0 0 1 1
Вход 1, вес 4В 0 0 0 0 1 1 1 1 0 0
Вход 1, вес 2В 0 0 1 1 0 0 1 1 0 0
Вход 1, вес 1В 0 1 0 1 0 1 0 1 0 1

Кнопочки «+1 уровень яркости», «-1 уровень яркости» будут прибавлять или убавлять по 1 единице от выходного цифрового сигнала микроконтроллера. Этот сигнал будет подаваться на входы ЦАП. Выход ЦАП будет подключен к светодиоду. Задача выполнена!

 

Пример 2. АЦП

Аналого-цифровой преобразователь работает по обратному принципу. На вход подаем изменяющийся уровень напряжения, на выходе получаем логику(биты) +5В и 0В, либо логические 1 и 0

Поставим задачу снимать показания с датчика температуры:

  • датчик показывает температуру от 0С до 30С
  • при 0С датчик выдает 0В, при 30С  выдает 15В
  • сигнал нужно принять на микроконтроллер в цифровом виде (логические 1 и 0, напряжением +5В и 0В)

АЦП имеет два входных вывода для приема аналогового сигнала напряжением, например, от 0 до 15В и, в нашем случае, 4 вывода для выходного цифрового логического сигнала. То есть, четырехразрядного сигнала параллельного кода.

АЦП. Аналого-цифровой преобразователь

АЦП. Аналого-цифровой преобразователь

Подключаем выход с нашего датчика к аналоговому входу АЦП, а цифровой четырех разрядный выход из АЦП подключаем к микроконтроллеру.  И принимаем уже на микрике показания с датчика в цифровом виде. Данные в процесса будут соответствовать таблице ниже:

Напряжение на выходе датчика Температура Код с АЦП
0000
0001
0010
0011
0100
10С 0101
12С 0110
14С 0111
16С 1000
18С 1001
10В 20С 1010
11В 22С 1011
12В 24С 1100
13В 26С 1101
14В 28С 1110
15В 30С 1111
0

Автор публикации

не в сети 2 месяца

wandrys

877
Комментарии: 1Публикации: 31Регистрация: 17-03-2016

Оставьте комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *