Реклама:

Таким образом, мы рассмотрели проектирование довольно типичного УС с буферным ОЗУ с периодическим режимом обмена. Данный модуль логического анализатора может быть использован в системе динамической отладки УС, особенности которой мы рассмотрим позже.

2.1.11. Генератор сигналов произвольной формы

Еще один пример УС с буферным ОЗУ — это цифровой программно-управляемый генератор сигналов произвольной формы, позволяющий формировать аналоговые сигналы с заданными параметрами: формой, периодом, амплитудой. Такой генератор может использоваться в контрольно-измерительной системе на базе персонального компьютера или в составе промышленных установок, в которых требуется формирование различных сигналов (разовых или периодических), например в системах виброиспытаний.

С точки зрения разработчика УС, такой генератор — это УС, имеющее в своем составе буферное ОЗУ с периодическим режимом обмена с внешним устройством. Перед началом работы компьютер записывает в буферное ОЗУ коды выборок генерируемого сигнала, задавая его форму, определяет период сигнала и его амплитуду, а также режим запуска генерации:

разовый или автоматический. Затем дается старт генерации во время которой выходные коды буферного ОЗУ поступают на ЦАП, преобразующий их в уровни выходного аналогового сигнала. Программные средства генератора при этом могут обеспечивать различные методы задания формы сигнала: выбор стандартного сигнала (синусоидальный, прямоугольный, треугольный, пилообразный, шумовой и т.д.), формирование сигнала по математической формуле, задание и коррекция формы на экране компьютера.

Мы будем разрабатывать генератор со следующими характеристиками: частота выходного сигнала — 2 Гц ... 125 кГц, амплитуда выходного сигнала — 50 мВ ... 10 В. Следует учесть, что сигналы сложной формы нужны обычно низкочастотные, поэтому выбранные параметры обеспечат довольно высокую универсальность генератора. В схеме должны быть предусмотрены режим разового запуска (остановка генерации после одного периода сигнала) и режим автоматического запуска (непрерывная генерация до ее программной остановки).

Оценим предварительно требования к интерфейсной части УС. Если ориентироваться на 8-разрядный обмен (скорость обмена здесь, как и в случае с логическим анализатором, некритична), то потребуется один адрес для обмена с буферным ОЗУ (запись и чтение, которое нужно для самотестирования), два адреса (16 разрядов) для записи кода частоты (периода), один адрес для записи кода амплитуды и один адрес для записи управляющего слова и чтения слова состояния. Итого пять адресов. Отметим, что увеличивать количество разрядов выходного ЦАП больше, чем до восьми, особого смысла в данном случае не имеет. В управляющее слово входят два бита: разрешение/запрет генерации и разовый/автоматический запуск. В слово состояния входит всего один бит (генерация идет), который нужен только при разовом запуске. Прямой доступ здесь не нужен, прерывание — тоже, так как даже по окончании разового запуска никаких срочных действий предприниматься не должно. То есть ничего особенного интерфейсная часть собой не представляет.


⇐ Предыдущая страница| |Следующая страница ⇒