Микропроцессорная система управления на базе интерфейсов персонального компьютера
Министерство транспорта РФ
федеральное агентство железнодорожного транспорта
ГОУ ВПО "ДВГУПС"
Кафедра "Автоматика и телемеханика"
Курсовая работа
"Микропроцессорная система управления на базе интерфейсов персонального компьютера"
Выполнил: Цевелёв Г.А.
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