русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

УСО для ввода информации


Дата добавления: 2015-08-14; просмотров: 933; Нарушение авторских прав


Рассмотрим особенности организации устройств сопряжения с объектом (УСО) при использовании однокристальных микроЭВМ в качестве основы для построения микропроцессорной системы управления (на примере использования микроконтроллера серии MCS-51).

Рассмотрим следующие разновидности УСО: УСО для ввода данных без преобразования, для ввода данных с преобразованием из непрерывной формы в дискретную, из дискретной в дискретную и УСО для ввода данных в последовательном формате.

УСО для ввода данных без преобразования

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

В случае, если разрядность принимаемых данных превышает разрядность параллельного порта (8 бит), необходимо использовать несколько параллельных портов. Для обеспечения корректности вводимых данных, с учетом того, что ввод осуществляется "побайтно", перед началом собственно ввода необходимо "зафиксировать" полное вводимое двоичное число в буферных регистрах с целью обеспечения его неизменности во время всего процесса ввода (рис. 1).

Рис. 1.

На рис. 1 представлен вариант УСО для случая 16-разрядного датчика. Для ввода информации используются порты Р1 и Р0 микроконтроллера. Для фиксации данных с датчика на время цикла ввода используются два буферных регистра. Фиксация данных в буферном регистре производится по заднему фронту сигнала STB. Этот сигнал соединен с одним из выходов порта P2 (Р2.0). Формирование строба на входе буферного регистра осуществляется путем последовательной установки "1" и "0" на выходе 0 порта Р2.



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

  1. Установить нулевой бит порта Р2 в "1" (начало стробирующего импульса).
  2. Установить нулевой бит порта Р2 в "0" (окончание стробирующего импульса, данные фиксируются в буферных регистрах).
  3. Прочитать данные из порта Р1 (ввод младшего байта данных с датчика).
  4. Прочитать данные из порта Р0 (ввод старшего байта данных с датчика).

УСО для ввода данных с преобразованием из непрерывной формы в дискретную

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

Рис. 2.

Для запуска АЦП можно использовать:

  • Сигнал с внешнего генератора — для периодического запуска АЦП независимо от микроконтроллера.
  • Стартовый импульс, формируемый на одном из выходов одного из параллельных портов микроконтроллера (рис. 3).

Рис. 3.

В приведенной на рис. 3 схеме для запуска АЦП необходимо установить бит 0 порта Р0 в "1", формируя, таким образом, передний фронт запускающего импульса.

Для анализа готовности УСО можно использовать асинхронный способ или метод обмена по прерыванию. Обмен с использованием ПДП неприменим, так как он не поддерживается рассматриваемым микроконтроллером.

Для организации асинхронного обмена выполняется подключение выхода готовности АЦП ко входу одного из параллельных портов микроконтроллера (рис. 4).

Рис. 4.

В приведенном на рис. 4 примере для анализа готовности АЦП используется первый вход порта Р0. Таким образом, для того, чтобы проверить готовность АЦП к обмену необходимо проанализировать значение первого бита входного регистра порта Р0.

Для организации обмена по прерываниям, сигнал готовности необходимо соединить с одним из входов запроса на прерывание. В рассматриваемом микроконтроллере таких входов два, они соответствуют входам 2 и 3 порта Р3.

Рис. 5.

На рис. 5 вход Р3.2 использован в качестве входа запроса на прерывание от внешнего источника. Обратите внимание, что в этом случае порт Р3 требует предварительной настройки, показывающей, что его вторая линия будет использоваться в режиме альтернативной функции (сигнал запроса на прерывание), а не как линия порта ввода-вывода.

УСО для ввода данных с преобразованием из дискретной формы в дискретную

УСО этого типа рассмотрены в модуле УСО для ввода данных с преобразованием из дискретной формы в дискретную на примере ввода с импульсных датчиков скорости и положения. В обоих случаях основным элементом УСО является счетчик. Микроконтроллер уже имеет в своем составе внутренний счетчик, поэтому сигнал с импульсного датчика должен быть подключен к счетному входу одного из внутренних счетчиков (Р3.4 или Р3.5). Вся логика работы УСО реализуется программно внутри микроконтроллера.

УСО для ввода данных в последовательном формате

Для ввода данных в последовательном формате используется внутренний последовательный порт микроконтроллера, входом которого является линия Р3.0.



<== предыдущая лекция | следующая лекция ==>
Система команд микроконтроллера PIC16F877 | УСО для вывода информации


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.842 сек.