Материал: Микропроцессорное устройство управления

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Микропроцессорное устройство управления

Введение

Сегодня в мире ежедневно успешно проектируется и используется огромное количество различных электронных устройств и систем. Современная жизнь немыслима без компьютеров, а сам факт, что сейчас на экранах мониторов вы читаете эту статью, стал возможен только благодаря сети Интернет и возможностям современной науки и электронной техники. Однако многие устройства человек использует чаще компьютеров. Без этих устройств уже нельзя вообразить нашу повседневную жизнь, такой, как мы привыкли ее видеть. Это встроенные приборы, управляемые различными микроконтроллерами. К примеру, банкомат построен на базе несложного терминала, который имеет сетевое подключение, и интерфейсные модули для дисплея, клавиатуры, устройству выдачи купюр и так далее. Всем знакомые электронные часы, управляются микросхемой, отсчитывающей отрезки времени в микросекундах и отображающей на экране текущее время. А сотовый телефон и вовсе имеет собственную операционную систему, со своими файлами, директориями и подпрограммами.

Первой компьютерной системой на кристалле специально созданной для управления - микроконтроллером, была микросхема Intel 8048 <#"802249.files/image001.gif">

Рис. 1.1. Функциональная схема устройства

Микропроцессорная система.

·        Микроконтроллер PIC18F8680 со встроенными модулями EUSART, SPI.

·        3-канальный 12-разрядный АЦП MAX1247 с SPI-интерфейсом.

·        1-канальный 10-разрядный ЦАП AD561.

·        Клавиатура 20 клавиш (матрица 5*4)

·        LCD-индикатор ACM-1602

·        Схема сопряжения в фотоимпульсным датчиком углового положения ФИ2.

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

·        Аналоговые сигналы (3 канала) - через АЦП.

·        Числовые данные и управление функциями - через клавиатуру.

·        Цифровая информация с внешних цифровых источников через интерфейс RS-485.

·        Фотоимпульсный датчик.

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

·        Аналоговый сигнал управления (1 канал) - через ЦАП.

·        Цифровая и буквенная информация - через дисплей.

·        Данные о текущем состоянии устройства и цифровые данные для внешних цифровых устройств - через интерфейс RS-485.

. Описание принципиальной схемы

Описание основных блоков устройства и обоснование выбора элементной базы, а также общее описание функционирования.

.1 Микроконтроллер PIC18F8680

18F8680 - 8-разрядный микроконтроллер с RISC-архитектурой фирмы Microchip. Он служит основой системы. Наличие в задании требования реализации интерфейса SPI и RS-485 привело к решению применить микроконтроллер со встроенными модулями этих интерфейсов. Выбор архитектуры PIC вызван предыдущим опытом работы с процессорами данного типа, богатым функциональным оснащением и высоким быстродействием кристалла при умеренной цене. На рисунке 2.1.1 приведена функциональная схема.

Основные особенности микроконтроллера:

1)      8-разрядная RISC архитектура: 35 команд (большинство выполняется за 1 м.ц.), производительность до 10 миллионов операций в секунду при тактовой частоте 40 МГц;

2)      64 кБайт FLASH-памяти программ, программируемой внутрисхемно;

)        4 кБайт энергонезависимой памяти данных;

)        1 кБайт встроенной статической оперативной памяти;

)        2 16-разрядных и 2 8-разрядных таймера-счетчика

)        Модули EUSART и SPI;

7)      16-канальный 10-разрядный АЦП;

)        программируемый сторожевой таймер;

)        встроенный генератор сигнала сброса при включении питания и по снижению уровня напряжения питания;

.

Рис. 2.1.1. Функциональная схема.

Микроконтроллеры семейства PIC имеют эффективную систему команд, состоящую всего из 35 инструкций. Все инструкции выполняются за один цикл, за исключением условных переходов и команд, изменяющих программный счетчик, которые выполняются за 2 цикла. Один цикл выполнения инструкции состоит из 4 периодов тактовой частоты. Таким образом, учитывая то, что рабочая частота контроллера составляет 0 Гц ... 20 МГц, минимальное время выполнения инструкции равняется 200 нс. Каждая инструкция состоит из 14 бит, делящихся на код операции и операнд (возможна манипуляция с регистрами, ячейками памяти и непосредственными данными).

Высокая скорость выполнения команд в PIC достигается за счет использования двухшинной Гарвардской архитектуры вместо традиционной одношинной Фон-Hеймановской. Гарвардская архитектура основывается на наборе регистров с разделенными шинами и адресным пространством для команд и для данных. Набор регистров означает, что все программные объекты, такие как порты ввода/вывода, ячейки памяти и таймер, представляют собой физически реализованные аппаратные регистры.

На рис.2.1.2 представлена карта памяти данного микроконтроллера.

Рис.2.1.2. Карта памяти

Программирование контроллера осуществляется любым программатором, совместимым с процессорами PIC, через стандартизованный разъем.

Тактирование МК будет осуществляться от внутреннего RC-генератора с частотой 4 МГц При этом на выводе RA6 получим тактовый сигнал с частотой в 4 раза меньшей, чем частота RC-генератора. Этот вывод будет задействован для синхронизации внешней логики.

.2. Интерфейс RS-485

Интерфейс RS-485 (другое название - EIA/TIA-485) - один из наиболее распространенных стандартов физического уровня связи. Физический уровень - это канал связи и способ передачи сигнала (1 уровень модели взаимосвязи открытых систем OSI).

Сеть, построенная на интерфейсе RS-485, представляет собой приемопередатчики, соединенные при помощи витой пары - двух скрученных проводов. В основе интерфейса RS-485 лежит принцип дифференциальной (балансной) передачи данных. Суть его заключается в передаче одного сигнала по двум проводам. Причем по одному проводу (условно A) идет оригинальный сигнал, а по другому (условно B) - его инверсная копия. Другими словами, если на одном проводе "1", то на другом "0" и наоборот. Таким образом, между двумя проводами витой пары всегда есть разность потенциалов: при "1" она положительна, при "0" - отрицательна (рис.2.2.1).

Рис.2.2.1. Принцип передачи сигнала.

Именно этой разностью потенциалов и передается сигнал. Такой способ передачи обеспечивает высокую устойчивость к синфазной помехе. Синфазной называют помеху, действующую на оба провода линии одинаково. К примеру, электромагнитная волна, проходя через участок линии связи, наводит в обоих проводах потенциал. Если сигнал передается потенциалом в одном проводе относительно общего, как в RS-232, то наводка на этот провод может исказить сигнал относительно хорошо поглощающего наводки общего ("земли"). Кроме того, на сопротивлении длинного общего провода будет падать разность потенциалов земель - дополнительный источник искажений. А при дифференциальной передаче искажения не происходит. В самом деле, если два провода пролегают близко друг к другу, да еще перевиты, то наводка на оба провода одинакова. Потенциал в обоих одинаково нагруженных проводах изменяется одинаково, при этом информативная разность потенциалов остается без изменений. Аппаратная реализация интерфейса - микросхемы приемопередатчиков с дифференциальными входами/выходами (к линии) и цифровыми портами.- полудуплексный интерфейс. Прием и передача идут по одной паре проводов с разделением по времени. В сети может быть много передатчиков, так как они могут отключаются в режиме приема.

Цифровой выход приемника (RO) подключается к порту приемника (RX). Цифровой вход передатчика (DI) к порту передатчика (TX). Поскольку на дифференциальной стороне приемник и передатчик соединены, то во время приема нужно отключать передатчик, а во время передачи - приемник. Для этого служат управляющие входы - разрешение приемника (RE) и разрешения передатчика (DE). Так как вход RE инверсный, то его можно соединить с DE и переключать приемник и передатчик одним сигналом с любого порта контроллера. При уровне "0" - работа на прием, при "1" - на передачу. Драйвер подключается согласно рис.2.2.2

 <#"802249.files/image006.gif"> <#"802249.files/image007.jpg">

Рис. 2.3.1. Униполярный режим 0-10В

Отличительные особенности:

·              Встроенный высокостабильный источник опорного напряжение на стабилитроне

·              Лазерная подгонка параметров при производстве (максимальная погрешность 1/4 LSB для AD561K, T)

·              Быстрое время установления выхода - 250 нс с погрешностью в 1/2 LSB

·              Гарантируется монотонность передаточной характеристики во все температурном диапазоне.

·              Совместимость цифровых входов с уровнями ТТЛ, ДТЛ и КМОП

·              Монолитная конструкция в виде микросхемы

·              Доступность в малогабаритных корпусах

·              Доступность военно-промышленного исполнения MIL-STD-883

Назначение выводов АЦП описывается в табл.1.

Табл.1

BIPOLAR OFFSET

Выход напряжения смещения для двуполярного режима. Не используется.

SPN

Вывод резистора цепи обратной связи.

Iout

Аналоговый выход ЦАП

D1-D10

-15

Питание -15В

+5

Питание + 5В

GROUND

Общий


.4 Аналого-цифровой преобразователь MAX1247

MAX1247-это 4-канальные 12-разрядные системы сбора данных, которые содержат 4-канальный мультиплексор, широкополосное устройство выборки и хранения, последовательный интерфейс с высокой скоростью преобразования и обладает низким энергопотреблением. Аналоговые входы являются программно конфигурируемыми для работы в униполярном, биполярном и симметричном и дифференциальном режимах.

-проводной последовательный интерфейс напрямую сопрягается с устройствами SPI без использования дополнительных логических согласующих ИС (рис.2.4.1). Данные преобразователи построены по методу последовательного приближения.

MAX1247 имеет вход аппаратного управления режимом отключения SHDN (активный-НИЗКИЙ) и программно выбираемый режим отключения, и могут быть запрограммированы на автоматическое отключение по завершению преобразования. Обращение к последовательному интерфейсу автоматически активизирует ИС, а малое время включения позволяет приборам быть отключенными между преобразованиями, что дополнительно снижает потребляемый ток. Данная микросхема поставляется в корпусах DIP и QSOP.

Рис.2.4.1. Подключение к МК

Определим выводы, которые будут задействованы для реализации поставленной задачи:

·        CH0,CH1,CH3 - входы, по которым ведется снятие аналоговых сигналов с внешних датчиков (3 канала)

·        COM - общий вывод для аналоговых входов

·        SCLK, Din,Dout,CS - выходы АЦП, по которым осуществляется передача данных в МК по SPI интерфейсу. Они подключаются к выводам RC3,RC5,RC4,RF7 микроконтроллера соответственно.

·        Vcc,AGND,DGND - силовые выводы для питания микросхемы

·        SSTRB - используется для определения занятости АЦП.

·        Остальные выводы не используются.

В табл.2 представлено подробное описание выводов микросхемы.

Табл.2

AGND,DGND

Аналоговый и цифровой общий вывод микросхемы.

CH0-CH3

Аналоговые входы 0-3.

COM

Общий вывод для аналоговых входов.

CS

Выбор кристалла

Din

Вход последовательных данных.

Dout

Выход последовательных данных.

Refadj

Вход буферного усилителя ИОН. Соединен с Vcc

SCLK

Вход последовательного тактового сигнала.

SHDN

Вход выключения. Низкий уровень отключает прибор.

SSTRB

Выход последовательного строба. Низкий уровень- прибор преобразует, Высокий-преобразование закончено.

Vcc

Положительное напряжение питания

Vref

Вход/выход опорного напряжения. Отключен.


.5 Подключение клавиатуры

Для ввода цифровой и буквенной информации в приложениях на базе микроконтроллеров используются клавиатуры. Клавиатура представляет собой блок из нескольких кнопок, объединенных конструктивно и связанных между собой электрически по матричной схеме.

Порты, подключенные к строкам, настроены на выход и в начальном состоянии на этих выводах напряжение логического нуля. Порты, подключенные к столбцам, настроены на вход, внутренние подтягивающие резисторы отключены и эти линии “придавлены к нулю питания” с помощью внешних резисторов номиналом в 10 КОм.

Процедура сканирования клавиатуры выглядит следующим образом. Выставляем 1 на выводе RA0 и проверяем состояние выводов RB2-RB5. Если на каком-либо из выводов установлена 1, значит, на клавиатуре в данный момент нажата кнопка, подключенная к первой строке. Сохраняем биты RA0-RA5 и RB2-RB5- по этому коды мы будем определять номер нажатой кнопки. Если ни одна из кнопок не нажата, продолжаем процедуру сканирования.

Сбрасываем 1 на выводе RA0 и устанавливаем 1 на выводе PD1. Снова проверяем состояние выводов RB2-RB5, и в случае нажатия кнопки сохраняем биты RA0-RA5 и RB2-RB5 в переменной.

Повторяем описанную последовательность для оставшихся строк.

Переключения кнопок клавиатуры сопровождаются дребезгом контактов, который микроконтроллер может “воспринимать” как многократные нажатия. В приложениях, использующих клавиатуры, это нежелательное явление, поэтому в программе опроса клавиатуры обязательно должна быть какая-нибудь защита. Обычно делают так - факт нажатия кнопки регистрируется, если она удерживается в течение нескольких циклов опроса.

Код, получаемый в процессе сканирования клавиатуры, часто требуется преобразовать в символьное значение номера/буквы кнопки (например, для передачи по USART`у). Для этого можно создать таблицу перекодировки - двумерный массив. В первом столбце таблицы будут храниться коды кнопок, а во втором соответствующие символьные значения. Методом последовательного перебора в таблице можно находить нужное значение.

2.6 Осуществление индикации

Для отображения информации будет использоваться LCD индикатор ACM-1602. Его характеристики приведены ниже в таблицах 3 и 4.

Табл.3

Тип модуля

знакосинтезирующий (текстовый) ЖКИ

Формат модуля

16 x 2

Тип поляризатора

полупрозрачный (transflective)

Подсветка

желто-зеленая светодиодная

Тип стекла

STN серый

Угол обзора

6:00 часов (bottom view)

Температурный диапазон

Расширенный, -20..+70 °С

KS0066U (аналог HD44780)

Кодировка

английская + русская

Габариты модуля

80.0 (W) x 36.0 (H) x 13.5 (D) мм

Размер точки (пикселя)

0.56 (W) x 0.61 (H) мм