Раздел: Документация
0 ... 26 27 28 29 30 31 32 ... 105 Программа содержит четыре процедуры. Draw panel используется для рисования виртуальной панели управления экспериментальной платой; Output input -процедура ввода/вывода данных через последовательный порт. Процедуры и функции Write modem status(), write transmit buffer(), read modem port() и Read receiver buffer() записывают и считывают значения из регистров порта; они содержатся в библиотеке TPLIB1.PAS. Процедура scan keyboard опрашивает клавиатуру, фиксируя нажатие шести функциональных клавиш: «-, ->, клавиши пробела, t, с и q. 3.2.2. Описание программы RS232EXP Программа выполняет следующие функции: О сообщает о количестве установленных на компьютере последовательных портов; О позволяет выбрать последовательный порт; О настраивает формат последовательных данных; О вводит байт и передает последовательные данные; О изменяет состояние линий управления модемом (DTR и RTS); О считывает последовательные данные; О считывает состояние линий DSR, DCD и CTS. Для запуска программы в среде Windows необходимо нажать на кнопку Пуск, выбрать в меню пункт Выполнить и ввести ее полное имя: путь + RS232EXP, после чего щелкнуть по кнопке ОК. На экране появится сообщение о количестве установленных СОМ-портов и их базовых адресах (рис. 3.6). Нажмите ОК. Вы увидите окно, изображенное на рис. 3.7. Здесь требуется ввести номер порта (1-4), к которому подсоединена экспериментальная плата. Сделав это, щелкните по кнопке ОК. Появится окно управления экспериментальной платой последовательного порта (рис. 3.8). Кнопки 0-1 позволяют изменять состояние линий DTR и RTS, причем высокий уровень индицируется красным светодиодом. Вы можете ввести данные, которые необходимо передать в поле данных панели. При нажатии на кнопку 0-1 эти данные будут постоянно передаваться, пока кнопка не будет нажата еще раз. С помощью кнопки Get it вы обновляете состояние линий DSR, DCD и CTS. Принятые данные также отображаются на экране. Кнопка Change port дает возможность выбрать другой порт, переопределить скорость, режим проверки, длину блока данных и количество стоповых битов. Внизу окна имеется информационная панель. Соединив приемную и передающую линии, допустимо провести тестирование порта. В этом случае значения передаваемых и принимаемых данных должны совпадать. Когда программа передает данные, вид сигнала в линии можно наблюдать с помощью осциллографа. Разрешается передавать различные данные, изменять скорость, режим проверки и длину блока данных - это позволяет глубже понять процессы, происходящие при передаче последовательных данных. RS232 polls (COM) on уош PC RS232 ports (COMsJ are installed on your PC. Their base addresses are: 1016 760 1000 744Decimal аапаск aAdobePbotosri[ RS232 port. (COM) о }§2E3g) ggHMB Рис. 3.6. Сообщение, выдаваемое программой RS232EXP Текст программы RS232EXP Объявление функции библиотеки динамической компоновки WLIB1 DLL Объявляемые функции RS2320 Bit weight() Write interrupt enable() Read interrupt identification() write data format() write transmit buffer() write modem status() write receive buffer() и read modem status() Declare Function RS232 Lib С \I0EXP\WLIB1 dll (ByVal X As Integer) As Integer Declare Function Bit weight Lib С \I0EXP\WLIB1 dll (ByVal X As Integer) As Integer Declare Function Write interrupt enable Lib С \I0EXP\WLIB1 dll (ByVal address As Integer ByVal datax As Integer) As Integer Declare Function Read interrupt identification Lib С \I0EXP\WLIB1 dll (ByVal address As Integer) As Integer Declare Function wnte data format Lib С \I0EXP\WLIB1 dll (ByVal address As Integer ByVal Baud As Integer ByVal parity As Integer ByVal Data byt As Integer ByVal Stop bit As Integer) As Integer Declare Function Wnte transmit buffer Lib С \I0EXP\WLIB1 dll (ByVal address As Integer ByVal datax As Integer) As Integer Declare Function Wnte modem status Lib С \I0EXP\WLIB1 dll (ByVal address As Integer ByVal RTS As Integer ByVal DTR As Integer) As Integer Select COM pails Input 1. 2. 3 01 4 to select a RS232 pott (COM) for the 232 Experimental board ZfjUycr. Hadobe photoshop Select COM ports Рис. 3.7. Окна выбора используемого СОМ-порта Declare Function Read receive buffer Lib "C:\I0EXP\WLIB1 dll" (ByVal address As Integer) As Integer Declare Function Read modem status Lib"C.\I0EXP\WLIB1.dll" (ByVal address As Integer, ByVal X As Integer) As Integer Sub Command1 click() status(4)=Read modem status(RS232 address,2) status(5)=Read modem status(RS232 add ress, 1) status(6)=Read modem status(RS232 address,3) For iq=4 to 6 If status(iq)=1 Then Shapel(iq).BackColor=&HFF& Else Shape1(iq).BackColor=black Next lq Label3.Caption=Format$(Read receive buffer(RS232 address)) End Sub Sub command1 Mouse move(Button As Integer, Shift As Integer, X As Single, Y As Single) Label7 Caption="Get the status and read the serial data End Sub Sub Command2 Click(Index As Integer) Изменение состояния выходных линий. status(index)=1-status(index) If status(index)=1 Then Shapel(index) BackColor=&HFF& Else Shapel(index) BackColor=black 0 ... 26 27 28 29 30 31 32 ... 105
|