Программное обеспечение частного применения.
Схемы | Программы | Библиотека | Все для сотового | Компьютеры | Поиск |
Чат | Форум | Ссылки | Рефераты | Гостевая |
Этот раздел можно назвать главным во всей книге: именно в нем рассказывается, как решать практически любые задачи, связанные со сбором данных при низких частотах дискретизации. Модульная
структура нижеприведенных программ на языке BASIC или языке TurboPASCAL
позволяет адаптировать их к новым: задачам, изменяя лишь несколько строк. На рис. 5.10 представлена
структура, по которой будут строиться готовые к работе приложения. В начале программы находится
драйвер, соответствующий выбранному АЦП - либо готовому, либо собранному
самостоятельно по описанию, которое приведено в этой книге. Каждый драйвер был написан в
соответствии со спецификациями, представленными изготовителями
используемых компонентов, причем особое внимание уделялось временным
диаграммам протоколов связи. Драйверы можно рассматривать как ПО,
поставляемое «под ключ», но допустимо также модифицировать их в самых
разных целях.
Первый блок каждого драйвера (строки 10-90) проводит инициализацию
последовательного или параллельного порта, используемого для связи, и
обеспечивает подачу напряжения питания на подключенный к нему АЦП.
Блок заканчивается командой GOTO 200, передающей управление собственно
прикладной программе (строки 200-290). Эта программа универсальна, она
зависит только от выполняемой задачи, но ни в коей мере - от применяемого
АЦП. Поэтому заменить драйвер при смене АЦП (например, при переходе от
8-разрядного к 12-разрядному) очень просто: Прикладная программа может
сама обращаться ко второму блоку драйвера (строки 100-190) настолько
часто, насколько требуется. Эта часть драйвера отвечает за выполнение
одного - и только одного - аналого-цифрового преобразования и за
размещение результата (величины напряжения в диапазоне от 0 до 5 В) в
переменной D. Только прикладная программа определяет, с какой скоростью
будут проводиться преобразования, надо ли комбинировать полученные
значения перед выводом результата и каков будет способ обработки
результата (цифровое табло, построение кривой, запись на диск, включение
сигнала и т.п.). Если не хватит места между
строками 200 и 290 программы, можно поместить оператор GOTO в строке 290,
что позволит продолжать работу, например, со строки 2000. Еще одна
зарезервированная область, начиная со строки 300, предназначена для
операторов вывода графики. Блок между строками 300 и 490 отведен для
операторов инициализации экрана (выбор графического режима, построение
координатной сетки, определение цветов и т.п.). Процедура вывода
результатов на экран начинается со строки 500. Именно прикладная программа
(строки 200-290) будет в нужный момент вызывать графическую подпрограмму
командой GOSUB 500. Очевидно, что понадобится
использовать графические процедуры, предназначенные для каждого из
экранных режимов (CGA, VGA и т.п.), хотя режим CGA, например, без проблем
(и даже с некоторыми преимуществами) поддерживается всеми современными
графическими платами.
|
--------------------------------------------------------------------------------------------------------------------------------------------