Тема: основы работы с последовательным портом средствами функций Win32 API.
Цель работы: на практике закрепить теоретический материал по работе с последовательным портом средствами функций Win32 API.
Задание:
1 . С помощью Virtual Serial Port Driver создайте пару виртуальных com-портов, которые будут использоваться нашим приложением. Для этого запустите Configure Virtual Serial Port Driver, yа вкладке «Manage ports» укажите порты для создания и нажмите кнопку «Add pair».
2. В данной лабораторной работе предлагается разработать приложение, которое будет эмулировать работу терминалов, соединённых между собой по последовательным портам, и будет осуществлять прием и передачу сообщений.
3. В среде разработки Borland C++ Builder создайте приложение, состоящее из одной формы, на форме разместите следующие компоненты. Компоненту Memo необходимо будет установить свойство ReadOnly в true. Кнопке btnDisconnected свойство Enabled необходимо будут установить в false.
4. Для начала в списке ComPortsList необходимо отобразить список доступных портов. Список доступных com-портов в ОС Windows можно получить из реестра, в разделе HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM Запустите редактор реестра и просмотрите содержимое данного раздела реестра. Для построения списка всех доступных com-портов воспользуемся программным кодом, который необходимо разместить в событии создания формы OnCreate.
Примечание: необходимо подключить два заголовочных файла Registry.hpp и Windows.hpp. В заголовочном файле Registry.hpp содержится определение класса TRegistry. В заголовочном файле Windows.hpp содержится описание API-функций Windows.
5. Следующее, что необходимо сделать, — это открыть указанный пользователем порт и настроить его параметры.
Примечание: переменная hPort имеет тип HANDLE, объявлена глобально и по умолчанию должна быть проинициализирована значением INVALID_HANDLE_VALUE.
6. Следующее, что мы реализуем, — это возможность отсоединения от порта.
Примечание: функцию CloseHandle также необходимо будет вызвать в событии уничтожения формы OnDestroy.
7. Далее необходимо реализовать отправку сообщения.
8. Прием сообщения организуем простым синхронным чтением байта из порта по таймеру.
9. Выполним компиляцию нашего приложения и запустим его в двух экземплярах. В первом укажем для соединения порт COM3, во втором COM4. Соединим оба приложения с указанными портами и выполним отсылку тестовых сообщений.
СПИСОК ЛИТЕРАТУРЫ
1. Юров В.И. Ассемблер: Учебник для вузов. 2-е изд. – СПб.: Питер, 2011. –
640с.
2. Кутузов М.А., Преображенский А. Выбор и модернизация компьютера. 4-е
изд. – СПб.: Питер, 2005. – 320с.
3. Мюллер С., Зекер К. Модернизация и ремонт ПК. 10-е изд.: Пер. с англ. – К.;
М.; СПб.: Вильямс, 1999 . – 992с.
4. Томпсон Р.Б., Томпсон Б.Ф. Железо ПК: Энциклопедия. 3-е изд. – СПб.: Питер, 2004. – 956с.
5. Хамахер К., Вранешич З., Заки С. Организация ЭВМ. 5-е изд. – СПб.: Питер,
2003. – 848с.
6. Цилькер Б.Я., Орлов С.А. Организация ЭВМ и систем: Учебник для вузов. –
СПб.: Питер, 2007. – 672с.
7. Таненбаум Э. Архитектура компьютера. 5-е изд. – СПб.: Питер, 2007. – 844с.