РАЗРАБОТКА ЦИФРО-АНАЛОГОВОГО ПРЕОБРАЗОВАТЕЛЯ – ЗВУКОВОГО АДАПТЕРА, РАБОТАЮЩЕГО ЧЕРЕЗ ПОСЛЕДОВАТЕЛЬНЫЙ ПОРТ RS-232 НА БАЗЕ МИКРОКОНТРОЛЛЕРА ATMEGA16

Варзар Р. Л., Харитонов А. Ю.
Донецкий национальный технический университет


Источник: Информационные технологии и информационная безопасность в науке, технике и образовании - 2007 / Материалы международной научно-практической конференции. - Севастополь, СевНТУ - 2007, часть 2, с. 99.


На сегодняшний день существует большое количество устройств аналогово-цифрового и цифро-аналогового преобразования, а также основанных на них систем обработки звука, видеосигналов и т. д.

Автором было разработано устройство, которое преобразует данные, поступающие по последовательному порту RS-232 в параллельный 8-битный код с последующим преобразованием в аналоговый аудиосигнал, т. е., так называемый «внешний звуковой адаптер», далее именуемый устройством, работающим через последовательный интерфейс персонального компьютера.

Это устройство представляет собой модифицированный цифро-аналоговый преобразователь (ЦАП) с последовательной загрузкой кода.

Выходные характеристики устройства:

  1. максимальная частота дискретизации: 11,5 кГц;
  2. качество выходного сигнала: 8 бит, моно;
  3. дополнительный усилитель на выходе отсутствует, уровня выходного сигнала достаточно для работы динамиков с предварительным усилителем.

Входные параметры порта RS-232:

  1. скорость передачи данных: 115,2 кбит/с;
  2. другие параметры порта: 8 бит данных, 1 стоп-бит в конце кадра, проверки четности нет, т.е. размер кадра равен 10 бит.
  3. используемые сигналы: TXD (3 вывод для разъема DB-9) из компьютера и общая земля GND (5 вывод для разъема DB-9).

Устройство собрано на AVR-микроконтроллере фирмы Atmel ATmega16, работающем на тактовой частоте 14,7456 МГц. Микроконтроллер основан на RISC архитектуре. В состав МК ATmega16 входит последовательный синхронно-асинхронный приемо-передатчик USART, 4 8-битных порта ввода/вывода, 10-битный АЦП, SPI-интерфейс и другие устройства. В данном устройстве используется только USART в режиме UART, порты PORTA и PORTB в режиме передачи данных и SPI для программирования микроконтроллера.

Микроконтроллер, по сути, выполняет только «последовательно-параллельное преобразование» и обеспечивает прием данных по последовательному порту.

Преобразования параллельного 8-битного кода на выходе порта PORTA в аналоговый сигнал выполняет делитель напряжения на резисторах.

Уровни сигнала на портах микроконтроллера соответствуют TTL-уровням, а на последовательном порте компьютера – RS-232-уровням.

Для преобразования уровней сигналов TTL↔RS-232 в схеме используется специальная микросхема фирмы Maxim – MAX232 или ее аналог фирмы STMicroelectronics – ST232BN.

Для программирования микроконтроллера используется тот же последовательный порт компьютера, а сам микроконтроллер программируется через интерфейс SPI.

На схеме предусмотрен переключатель, переводящий устройство из режима нормальной работы (в качестве «звуковой карты») в режим программирования: TXD – режим «звуковой карты», PRG – программирование.

К порту PORTB подключены 5 светодиодов, обеспечивающих индикацию уровня сигнала.

Рисунок 1 – Блок-схема устройства

Рисунок 1 – Блок-схема устройства

Рисунок 2 – Электрическая принципиальная схема устройства

Рисунок 2 – Электрическая принципиальная схема устройства

Для передачи звукового файла на устройство была разработана специальная программа “Rostik RS-232 media player”. По умолчанию она сконфигурирована на работу с последовательным портом COM1 на скорости 115,2 кбит/с и другими параметрами, указанными в начале статьи.

Звуковые файлы, передаваемые устройству должны быть моно, 8-битными с частотой дискретизации от 8 до 11,5 кГц в формате несжатый WAV.

Программа “Rostik RS-232 media player” написана на языке программирования Borland Delphi 7.0 с использованием дополнительной библиотеки работы с последовательным портом BComPort v.2.10.

Программное обеспечение микроконтроллера написано на языке C с использованием компилятора WinAVR v.20070122. Программирование микроконтроллера производилось программой PonyProg v.207a.

Так как сегодня существует большое разнообразие таких устройств с лучшими характеристиками и разнообразными схемотехническими решениями, то данное устройство можно применять в следующих целях:

К основным преимуществам относятся простота изготовления и относительно низкая стоимость устройства (60 гривен).