Курсач Мпасик Сени (Несколько готовых курсовых работ), страница 3
Описание файла
Файл "Курсач Мпасик Сени" внутри архива находится в папке "Несколько готовых курсовых работ". Документ из архива "Несколько готовых курсовых работ", который расположен в категории "". Всё это находится в предмете "медицинские приборы аппараты системы и комплексы (мпасик)" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "медицинские приборы аппараты системы и комплексы (мпасик)" в общих файлах.
Онлайн просмотр документа "Курсач Мпасик Сени"
Текст 3 страницы из документа "Курсач Мпасик Сени"
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
function Inp32(PortAdr: word): byte; stdcall; external 'inpout32.dll';
function Out32(PortAdr: word; Data: byte): byte; stdcall; external 'inpout32.dll';
Ok. Теперь создадим обработчики на нажатие кнопок. Для этого дважды щелкаем на кнопке в редакторе формы. Нас автоматом переносит к коду функции-обработчика. Рассмотрим сначала функцию для записи данных в порт. Тут особенно сложно ничего нет. В переменные Port и Data помещаем данные из соответствующих окошек ввода предварительно преобразовав их из текста в целое число. Затем вызываем функцию Out32() с этими параметрами.
procedure TForm1.Button1Click(Sender: TObject);
var
Port: word;
Data: Byte;
begin
Data:= StrToInt(Edit1.Text);
Port:= StrToInt(Edit2.Text);
Out32(Port, Data);
end;
Аналогично делаем для кнопки для чтения данных. Из нужного edit-окошка считываем введенное там значение адреса порта откуда будет проводится чтение, преобразуем его в число. Вызываем функцию Inp32() с этим параметром. Затем выводим окно сообщения с результатом чтения.
procedure TForm1.Button2Click(Sender: TObject);
var
Port: word;
Data: Byte;
begin
Port:= StrToInt(Edit3.Text);
Data:= Inp32(Port);
MessageDlg('Value: '+ IntToStr(Data), mtInformation, [mbOK], 0);
end;
Компилируем, запускаем (можно одной кнопкой в виде зеленой стрелки на верхней панели). Протестируем приложение. Попробуем записать в регистр DATA LPT потра число 0. Для этого в качестве адреса указываем 888 (или $378, что одно и тоже), в качестве данных - 0. Нажимаем на соответствующую кнопку (наблюдаем это на LPT-тестере). Аналогично проводим чтение.
Текст программы
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
function Inp32(PortAdr: word): byte; stdcall; external 'inpout32.dll';
function Out32(PortAdr: word; Data: byte): byte; stdcall; external 'inpout32.dll';
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Port: word;
Data: Byte;
begin
Data:= StrToInt(Edit1.Text);
Port:= StrToInt(Edit2.Text);
Out32(Port, Data);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
Port: word;
Data: Byte;
begin
Port:= StrToInt(Edit3.Text);
Data:= Inp32(Port);
MessageDlg('Value: '+ IntToStr(Data), mtInformation, [mbOK], 0);
end;
end.
Unit
object Form1: TForm1
Left = 227
Top = 171
Width = 323
Height = 159
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 8
Top = 16
Width = 60
Height = 13
Caption = 'Data to Port:'
end
object Label2: TLabel
Left = 8
Top = 48
Width = 52
Height = 13
Caption = 'Port Adres:'
end
object Label3: TLabel
Left = 168
Top = 16
Width = 52
Height = 13
Caption = 'Port Adres:'
end
object Edit1: TEdit
Left = 80
Top = 8
Width = 65
Height = 21
TabOrder = 0
Text = '0'
end
object Button1: TButton
Left = 8
Top = 80
Width = 137
Height = 41
Caption = 'Write Data'
TabOrder = 1
OnClick = Button1Click
end
object Button2: TButton
Left = 168
Top = 80
Width = 137
Height = 41
Caption = 'Read Data'
TabOrder = 2
OnClick = Button2Click
end
object Edit2: TEdit
Left = 80
Top = 40
Width = 65
Height = 21
TabOrder = 3
Text = '888'
end
object Edit3: TEdit
Left = 232
Top = 8
Width = 73
Height = 21
TabOrder = 4
Text = '888'
end
end
-
Список использованной литературы
-
Библиогр.: Руководство по клинической физиологии дыхания, под ред. Л.Л. Шика и Н.Н. Канаева, с. 65, Л., 1980; Современные проблемы клинической физиологии дыхания, под. ред. Р.Ф. Клемента и В.К. Кузнецовой, с. 5, 117, Л., 1987.
2. Спиридонов И. Н. Биотелеметрия: Учеб. пособие. Ч. 1. ‑ М.: Изд-во МГТУ, 1994. – 24 с., ил. ‑ ISBN 5-7038-1163-5.
3. Культин Н. Б. Программирование в Turbo Pascal 7.0 и Delphi. – 2-е изд., перераб. и доп. – СПб.: БХВ-Петербург, 2002. – 416 с.: ил.
4. Культин Н. Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2005. – 608 с.: ил.
5. Воробьева З. В. Основы патофизиологии и функциональной диагностики системы жыхания: Учебное издание – М.: Изд-во ФГП «Вторая типография» ФУ «Медбиоэкстрем» при Минздраве РФ, 2002. – 228 с.: ил.
-
Агуров П. В. Интерфейсы USB. Практика использования и программирования. – СПб.: БХВ-Петербург, 2004. – 576 с.: ил.
7.Сопряжение датчиков и устройств ввода данных с компьютерами IBM PC: Пер. с англ./Под ред. У. Томпкинса, Дж. Уэбстера. – М.: Мир, 1992. – 592 с., ил.
8.Иванцов В.И., Щукин С.И. Аппаратные средства параллельного интерфейса измерительных медицинских приборов: Метод. указания к лабораторной работе по курсу «Системы обработки и отображения медико-биологической информации» - М.: Изд-во МГТУ, 1993. – 12 с., ил.