Займемся обратным преобразованием. В сущности, никакого преобразования цифра— аналог в цифроаналоговых преобразователях (ЦАП), которые мы будем здесь рассматривать, на самом деле не происходит: просто мы выражаем двоичное число в виде пропорциональной величины напряжения, т. е. занимаемся, с точки зрения теории, всего лишь преобразованием масштабов и физическим моделированием абстрактной величины — числа. Вся аналоговая шкала поделена на кванты — градации, соответствующие разрешающей способности нашей двоичной «линейки». Если максимальное значение сигнала равно, к примеру, 2,56 В, то при восьмиразрядном коде мы получим квант в 10 мВ, и что происходит с сигналом между этими значениями, и в промежутки времени между отсчетами, мы не знаем и узнать не можем.
Если взять ряд последовательных отсчетов некоего сигнала, (например, как на рис. 10.1,
Рис. 10.2.
Если вы сравните графики на рис. 10.1,
Все изложенное касается дискретизации аналоговых сигналов во времени. Но здесь нас будет больше занимать не временной ряд оцифрованных сигналов, а получение каждого отдельного значения этого ряда — как же реализовать на практике упомянутую ранее двоичную линейку?
Начнем мы с конца, т. е. с цифроаналоговых преобразователей. Будем считать, что на входе мы имеем числа в двоичной форме — неважно, результат оцифровки сигнала или синтезированный код. Нам его нужно преобразовать в аналоговый уровень напряжения в соответствии с выбранным масштабом.
Самый простой ЦАП — десятичный или шестнадцатеричный дешифратор-распределитель, подобный 561ИД1 (см. рис. 8.7). В самом деле, если на него подать четырехразрядный код, то на выходе мы получим значения в десятичной или шестнадцатеричной форме — для каждого значения кода на отдельном выводе. Присоединив к выходам этого дешифратора линейку светодиодов, получаем полосковый (шкальный) индикатор, который с разрешением в 10 или 16 ступеней на весь диапазон будет показывать уровень некоей величины. Иногда этого достаточно.
На самом деле это, конечно, еще не настоящий ЦАП, а только его часть — он не делает операции, показанной на рис. 10.2,
Но для большего числа разрядов такой ЦАП с непосредственным преобразованием превращается в совершенно чудовищную конструкцию. Для восьмиразрядного кода потребовалось бы 256 резисторов (строго одинаковых!), столько же ключей и дешифратор с таким же числом выходов, а ведь восьмиразрядный код — довольно грубая «линейка», разрешающая способность ее не превышает четверти процента. Поэтому на практике такой метод употребляют для построения АЦП, а не ЦАП (потому что, несмотря на сложность, он обладает одним уникальным свойством, о котором поговорим далее), а здесь мы даже не будем рисовать такую схему.
Рассмотрим один из самых распространенных методов, который позволяет осуществлять преобразование «код — напряжение» не прибегая к подобным «монструозным» конструкциям.