Микропроцессорная система управления на базе интерфейсов персонального компьютера
Микропроцессорная система управления на базе интерфейсов персонального компьютера
Министерство транспорта РФ федеральное агентство железнодорожного транспорта ГОУ ВПО "ДВГУПС" Кафедра "Автоматика и телемеханика" Курсовая работа "Микропроцессорная система управления на базе интерфейсов персонального компьютера" Выполнил: Цевелёв Г.А. 220 группа Проверил: Меркулов А.В. Хабаровск 2008 г. Содержание - Введение
- Исходные данные
- Функциональная схема устройства управления
- Подбор элементной базы
- Разработка принципиальной схемы
- Разработка программного обеспечения
- Построение селектора адреса для Системного интерфейса ISA
- Список литературы
ВведениеИнтерфейс - это аппаратное и программное обеспечение (элементы соединения и вспомогательные схемы управления, их физические, электрические и логические параметры), предназначенное для сопряжения систем или частей системы (программ или устройств). Под сопряжением подразумеваются следующие функции: · выдача и прием информации; · управление передачей данных; · согласование источника и приемника информации. По способу передачи информации интерфейсы подразделяются на параллельные и последовательные. В параллельном интерфейсе все биты передаваемого слова (обычно байта) выставляются и передаются по соответствующим параллельно идущим проводам одновременно. В PC традиционно используется параллельный интерфейс Centronics, реализуемый LPT-портами, шины ATA, SCSI и все шины расширения. В последовательном интерфейсе биты передаются друг за другом, обычно по одной (возможно, и двухпроводной) линии. Эта линия может быть как однонаправленной (например, в RS-232C, реализуемой СОМ-портом, шине Fire Wire, SPI, JTAG), так и двунаправленной (USB). Важное значение имеют также следующие технические характеристики интерфейсов: · вместимость (максимально возможное количество абонентов, одновременно подключаемых к контроллеру интерфейса без расширителей); · пропускная способность или скорость передачи (длительность выполнения операций установления и разъединения связи и степень совмещения процессов передачи данных); · максимальная длина линии связи; · разрядность; · топология соединения. Трудно найти область человеческой деятельности, где бы не использовались, в той или иной форме, микропроцессоры и разнообразные устройства на их основе: начиная от сложнейших систем автоматического управления вплоть до простейших датчиков. Системы на их основе представляют собой автоматизированные микропроцессорные комплексы управления и контроля. Они разрабатываются и применяются в программных комплексах диагностики, контроля и управления в различных отраслях. Программно-технический комплекс диагностики и контроля позволяет получать исчерпывающую информацию о состоянии устройств, подключенных к микропроцессорной системе и выдавать управляющие сигналы. В последние годы промышленностью налажен выпуск программного обеспечения и специальных сменных плат, позволяющих превращать компьютер в высококачественную измерительную и испытательную систему. Компьютеры, оснащенные подобным образом, могут использоваться в качестве запоминающих цифровых осциллографов, устройств сбора данных, многоцелевых измерительных приборов. Применение компьютеров в качестве контрольно-измерительных приборов более эффективно, чем выпуск в ограниченных количествах специализированных приборов с вычислительными блоками. Исходные данные№ п/п - номер варианта - 44;|
№ | | | | | | | | | | Порт | Примеч | | 44 | 16 | 128 | 500mA | 24V | | | | | | LPT | | | |
- количество дискретных или аналоговых объектов управления; - количество двухпозиционных объектов контроля (кнопок или пар контактов) или объектов измерения (аналоговых); - максимальный ток, потребляемый дискретным объектом управления; - напряжение включения объекта управления (напряжение срабатывания реле, питания ламп или других источников нагрузки); - максимальный потребляемый ток аналогового источника нагрузки,; - диапазон напряжений для аналоговых объектов управления; - допустимая абсолютная погрешность по управлению; - диапазон измеряемых напряжений для аналоговых объектов контроля; - допустимая абсолютная погрешность по контролю; Порт - необходимость применения интерфейса с указанным в этом поле портом; Примеч. - дополнительные условия по использованию определенной элементной базы при создании УСО; Базовый адрес порта ввода - вывода для варианта №44 определяется следующим образом: 44*8+300Н = 352(160Н)+768(300Н)=460Н В двоичной системе исчисления: 010001100000 Функциональная схема устройства управленияФункционально УС состоит из следующих основных компонентов:· Шина данных (ШД): 8-ми разрядная, однонаправленная (от ПК к УСО) · Шина управления (ШУ): 5-ти разрядная, однонаправленная (от ПК к УСО) · Канал входной информации (КВИ): 5-ти разрядный, однонаправленный (от УСО к ПК) · Блока питания 5V для питания интерфейсных схем; · Источник питания 24V для обеспечения индикации. Функциональная схема работы устройства сопряжения компьютера через стандартный периферийный параллельный порт обеспечивает передачу данных на устройство сопряжения по трем шинам: шина данных (ШД)-8 разрядная однонаправленная (от ПК к УСО); шина управления (ШУ)- 4 разрядная однонаправленная (от ПК к УСО); канал входной информации (КВИ)- 5 разрядный однонаправленный (от УСО к ПК). сигналы по шинам данных поступают на интерфейсную плату, которая обеспечивает взаимодействие с платами управления индикацией. Подбор элементной базыДля построения принципиальной схемы необходимо подобрать элементную базу и сформировать основные узлы устройства 1. К555АП6 Микросхема представляет собой восьмиразрядный двунаправленный приемопередатчик с тремя состояниями на выходе и без инверсии входной информации, применяется в качестве интерфейсной схемы в системах с магистральной организацией обмена информации, в системах цифровой автоматики и микропроцессорных устройствах Режим работы определяется комбинацией сигналов на двух входах управления - Е и SED0. При низком уровне напряжения на входе управления третьим состоянием Е, направление передачи определяется логическим уровнем на входе SED, а при высоком уровне напряжения на входе Е выходы микросхемы переводятся в высокоимпедансное состояние. |
Е | SED0 | Операция | | 1 | X | 3-е состояние | | 0 | 1 | Q->D | | 0 | 0 | D->Q | | |
В разрабатываемой схеме микросхема будет использоваться в качестве шинного формирователя, задача которого - обеспечение необходимого уровня мощности сигналов, а также для защиты интерфейса LPT от высокого потенциала в случае пробоя одного из транзисторов схемы управления индикацией. 2. К155ИР13 Микросхема представляет собой универсальный восьмиразрядный сдвиговый регистр с выходом на три состояния и может применяться в качестве буферного запоминающего устройства для временного хранения данных, для преобразования данных из параллельной формы в последовательную и наоборот или для задержки информационных сигналов Возможны 4 режима работы: параллельная загрузка, сдвиги вправо (от D1 к D8) и влево (от D8 к D1),блокировка. |
Входы | Входы | | Сброс | Режим | Такт | Последовательный ввод | Параллельный ввод | Q0 | Q1 | … | Q6 | Q7 | | R | S1 | S2 | С | DL | DR | D0-D7 | | | | | | | 0 | x | x | x | x | x | X | 0 | 0 | … | 0 | 0 | | 1 | X | x | 0 | x | x | x | Q0п | Q1п | … | Q6п | Q7п | | 1 | 1 | 1 | ^ | x | x | D0-D7 | D0 | D1 | … | D6 | D7 | | 1 | 0 | 1 | ^ | x | 1 | x | 1 | Q0п | … | Q5п | Q6п | | 1 | 0 | 1 | ^ | x | 0 | x | 0 | Q0п | … | Q5п | Q6п | | 1 | 1 | 0 | ^ | 1 | X | X | Q1п | Q2п | … | Q7п | 1 | | 1 | 1 | 0 | ^ | 0 | x | X | Q1п | Q2п | … | Q7п | 0 | | 1 | 0 | 0 | ^ | x | x | X | Q0п | Q1п | … | Q6п | Q7п | | |
Примечание: 0 - низкий уровень, 1 - Высокий уровень, х - любое состояние, ^ - положительный перепад. Qnп - предыдущее значение n выхода. 3. К155ИД3 Микросхема представляет собой дешифратор четырехзначного двоичного кода. По входам Е0 и Е1 подаются сигналы разрешения выходов, чтобы устранять текущие выбросы, которыми сопровождается дешифрация кодов, появляющихся не строго синхронно (например, поступающих от счетчика пульсации). Чтобы разрешить прохождение данных на выходы, на входы Е0 и Е1 следует дать напряжение низкого уровня. Когда на входах Е0 и Е1 присутствуют напряжения высокого уровня, то на выходах 0-15 появляются также высокие уровни. Дешифратор К155ИДЗ потребляет ток 56 мА. Время задержки распространения сигнала для цепи "вход А - выход" составляет 36 нс. Внешний вид и обозначения контактов приведены на рис. 4.5. |
1 | Номинальное напряжение питания | 5 В 5 % | | 2 | Выходное напряжение низкого уровня | не более 0,4 В | | 3 | Выходное напряжение высокого уровня | не менее 2,4 В | | 4 | Входной ток низкого уровня | не более -1,6 мА | | 5 | Входной ток высокого уровня | не более 0,04 мА | | 6 | Ток потребления | не более 56 мА | | 7 | Время задержки распространения при включении по входам 20 - 23 по входам 18, 19 | не более 33 нс не более 27 нс | | 8 | Время задержки распространения при выключении по входам 20 - 23 по входам 18, 19 | не более 36 нс не более 30 нс | | 9 | Время дешифрации | не более 35 нс | | 10 | Потребляемая мощность | не более 294 мВт | | | Разработка принципиальной схемыС компьютера необходимые данные, сформированные программным путем, посылаются в порт на 8- разрядную шину данных D0-D7. Через интерфейсный кабель они попадают на микросхему DD1 - шинный формирователь, выполняющий 2 функции усиление сигнала, защиту LPT порта от высокого потенциала в случае пробоя одного из транзисторов.С выхода DD1 усиленный по уровню сигнал подается на микросхему DD4 - регистр данных, куда они записываются по управляющему сигналу (С1) из порта и хранятся до подачи нового управляющего сигнала. С выхода DD4 данные поступают прямиком на регистры DD5-DD6 данных выбранной группы устройств.Программа формирует следующий пакет данных, отвечающих за выбор микросхемы на платах управления, в которую будут записаны переданные ранее данные. Снова происходит посылка в порт, и данные через DD1 попадают одновременно на входы регистра данных DD4, по управляющему сигналу (С0) данные записываются в регистр. Регистр DD4 разрешает запись в один из двух регистров данных (DD5-DD6), которые идут с регистра DD4.Информация с регистров DD5 - DD6 подается на транзисторы VT1-VT16. При подаче на эти транзисторы напряжения высокого уровня они открываются.При контроле состояния объектов данные, сформированные компьютером, поступают через порт на DD1 - шинный формирователь, а с него на дешифраторы DD7-DD8, которые подключены к горизонтальным линейкам матрицы объектов. Вертикали подключены к шинному формирователю DD3 (через который осуществляется контроль) с одной стороны, а с другой стороны на них подается +5В (логическая 1).Разработка программного обеспеченияДля разработки программного обеспечения для обеспечения функций управления и контроля воспользуемся средой Delphi. В среде разработки создадим форму и добавим на неё 3 объекта типа TEdit и 2 объекта типа TButton:Для управления регистрами LPT порта будем использовать библиотеку inpout32.dll. Необходимо в заголовке программы, в секции uses поместить прототипы функций Out32 и Inp32 со специальной директивой компилятора external, говорящей откуда нужно эти функции брать:function Inp32(PortAdr: word): byte; stdcall; external 'inpout32.dll'; function Out32(PortAdr: word; Data: byte): byte; stdcall; external 'inpout32.dll'; Создадим обработчик кнопки "Считать", код которого будет реализовывать считывание данных по адресу, указанному в поле Edit1 и вывод считанных данных в поле Edit2: procedure TForm1.Button1Click(Sender: TObject); var Data: Byte; i: integer; begin Out32($37A, 12); //разрешаем дешифрацию DD7 for i:=0 to 3 do begin out32($378,i); //записываем в регистр данных Data:= Inp32($379); //считываем с регистра управления Edit2.Text:=IntToStr(Data); end; Out32($37A, 4); //запрещяем выполнение каких-либой действий end; Создадим обработчик кнопки "Записать", код которого будет реализовывать запись указанных данных (0-255) по указанному адресу (0-15): procedure TForm1.Button2Click(Sender: TObject); var data:string; adress:string; begin adress:=edit3.Text; data:=edit4.Text; Out32($378, StrtoInt(data)); //Записываем в регистр DD5 Out32($37A ,6); //разрешаем запись в DD5 Out32($37A, 4); //запрещяем выполнение каких-либой действий Out32($378, StrtoInt(adress)); //Записываем в регистр DD4 Out32($37A, 5); //разрешаем запись DD4 Out32($37A, 4); //запрещяем выполнение каких-либой действий Out32($37A, 0); //разрешаем дешифрацию DD6 Out32($37A, 4); //запрещяем выполнение каких-либой действий end; Построение селектора адреса для Системного интерфейса ISAРасчет базового адреса порта 44*8+300Н = 352(160Н)+768(300Н)= 460Н В двоичной системе исчисления: 0000 0100 0110 0000 A0 - 0 A1 - 0 A2 - 0 A3 - 0 A4 - 0 A5 - 1 A6 - 1 A7 - 0 A8 - 0 A9 - 0 A10 - 1 A11 - 0 А12 - 0 А13 - 0 А14 - 0 А15 - 0 Список литературы1.Меркулов, А. В., Микропроцессорная система управления на базе интерфейсов персонального компьютера[Текст]:: Учеб. пособие. - Хабаровск: Изд-во ДВГУПС, 2004. - 70 с.: ил.2. Программирование LPT портов на Delphi Электронный ресурс].- Электрон.дан. .- Режим доступа: http://radiolomaster.net3. Якубовсий, С.В. Цифровые и аналоговые интегральные микросхемы[Текст]: Справочник / С.В. Якубовский, Л.И. Ниссельсон, В.И. Кулешова и др. - М.: Радио и связь, 1089. - 496 с.4. "Интегральные микросхемы: Справочник" / Б. В. Тарабин, Л.Ф. Лунин, Ю. Н. Смирнов и др.; под ред. Б. В. Тарабрина. - М.: Радио и связь, 1984 - 528с., ил.5. Работа с LPT под Win 2000, XP: библиотека inpout32.dll[Электронный ресурс].- Электрон.дан. .- Режим доступа: http://www.pcports.ru/articles/2.php
|