Структура аппаратной части стенда
Стенд SDK-1.1sможет работать полностью автономно от ПК. Подготовка программ для микроконтроллера ADuC842 осуществляется на языке программирования Си на ПК в обычном текстовом редакторе. Далее программа компилируется для получения загрузочного HEX-модуля, доставляемого в стенд через интерфейс RS232C и схему преобразования последовательного кода в параллельный UART (рисунок 2). Процесс подготовки программ для стенда состоит из следующих этапов: • Подготовка программы в текстовом редакторе или среде программирования. • Транслирование исходного текста и получение загрузочного HEX-модуля программы. • Подготовка и загрузка HEX-модуля в стенд через интерфейс RS232C с помощью поставляемых инструментальных систем. Под подготовкой понимается добавление в конец модуля строчки со стартовым адресом программы, то есть адреса, по которому передается управление после загрузки в стенд. • Прием и обработка HEX-модуля резидентным загрузчиком HEX202, передача управления загруженной программе. Программы для стенда располагаются в ЗУ (включает ОЗУ и ПЗУ). Flash-память объемом 8кБ занята системным программным обеспечением, и может быть перепрограммирована через интерфейс RS232C с персонального компьютера ПК. В стенде предусмотрена возможность эмулировать некоторые внешние сигналы без использования дополнительного оборудования: сигналы внешних прерываний, счетные импульсы таймеров, аналоговые сигналы на входах АЦП.
Рисунок 2 – Последовательность программирования стенда
Процессор ADuC842 является клоном Intel 8051 со встроенной периферией (рисунок 3). Основные характеристики: •Рабочая частота 11.0592 МГц. •8-канальный 12-битный АЦП со скоростью выборок 2×105с-1. •Два 12-битных ЦАП (код-напряжение). •256 байт внутренней памяти данных. •Адресное пространство 16 МБ. •Асинхронный последовательный ввод-вывод. •Интерфейс I2С.
Рисунок 3 – Структура аппаратной части стенда
Микроконтроллер обслуживает 8 источников и 2 уровня прерываний. В стенде используется дополнительная перепрограммируемая электрически память программ в 128 Б, связанная с микроконтроллером через интерфейс I2С. Шина I2С — это двунаправленная шина, соединяющая между собой различные интегральные схемы или модули. Она содержит две линии: линию передачи данных (SDA) и линию синхронизации (SCL). За время каждого импульса синхронизации передается один бит данных. Для увеличения числа подключаемых к микроконтроллеру устройств в SDK-1.1s используется программируемая логическая интегральная схема (ПЛИС) семейства МАХ3000А фирмы Altera. Микросхема МАХ3064А подключена к внешней шине ADuC842. К ПЛИС подключены: клавиатура, ЖКД, линейка светодиодов, звуковой излучатель и 16 дискретных портов ввода-вывода. Для программиста расширитель портов представлен в виде нескольких однобайтовых регистров, находящихся в начале восьмой страницы памяти данных. Дискретные входы-выходы предназначены для ввода и вывода информации, представленной в двоичном виде. Сигнал на входе или выходе дискретного порта может принимать значение логического нуля или единицы. В SDK-1.1s дискретные порты выведены на разъем J3. Эти порты можно использовать для подключения внешних устройств. Кроме этого, к дискретным входам-выходам подключены DIP переключатели, позволяющие задавать фиксированные значения сигналов на входах. По умолчанию все входы притянуты к логической единице (через резисторы на +5 В). При замыкании переключателя SW3 на выбранном входе появляется логический ноль. Дискретные входы-выходы не имеют гальванических развязок. Логическому нулю соответствует 0 В, а логической единице +5 В (уровни TTL). Нагрузочная способность дискретных портов ввода-вывода, подключенных к разъему J3, невелика (в пределах 20 мА), так как на разъем выведены порты ADuC842 без каких-либо дополнительных усилителей. Для коррекции зависимости параметров ЦАП и АЦП от температуры в ADuC842 встроен термодатчик. Все входы ЦАП и выходы АЦП выведены на разъем J1. Кроме того, выходы DAC0 и DAC1 можно замкнуть на входы ADC0 и ADC1 с помощью переключателя SW1. Светодиодные индикаторы подключены к ПЛИС. Так как все катоды светодиодов подключены к корпусу, для зажигания светодиодов необходимо подать напряжение 5В (логическую «1») на соответствующий анод. От силы тока зависит яркость горения светодиода.
|