Інше життя lpt порту (частина 1)

У тексті ви зустрінетеся з загальноприйнятою абревіатурою записування чисел. Наприклад, 10102 - двійка в нижньому індексі вказує, що число 5 представлено в двійковому численні, 12410 - десятка в нижньому індексі, говорить про те, що число 124 десяткове. Це так ... про всяк випадок

До речі, взяти будь-яку з цих бібліотек ви можете тут. Мені захотілося спробувати dlportio.dll і в даний момент я працюю з цією бібліотекою. Ну і останнє, перед написанням програм необхідно правильно оголосити бібліотеку, яку ви використовуєте.

Private Declare Function Inp Lib "inpout32.dll" Alias ​​"Inp32" (ByVal PortAddress As Integer) As Integer

Private Declare Sub Out Lib "inpout32.dll" Alias ​​"Out32" (ByVal PortAddress As Integer, ByVal Value As Integer)

Private Declare Function DlPortReadPortUchar Lib "dlportio.dll" (ByVal Port As Long) As Byte

Private Declare Sub DlPortWritePortUchar Lib "dlportio.dll" (ByVal Port As Long, ByVal Value As Byte)

Чим відрізняється Private від Public я писати не буду.

Контакти 18-25 - «земля» (загальний, GND, GROUND і т.д.)

· Записуємо в порт число 69

Код наступний. Для тих, хто використовує

Dim A as Integer
A = Inp (H379)

Dim A as Integer
DlPortReadPortUchar (H379)

DEFINT A-Z
A = INP (H379)

· Записуємо сигнал -STROBE (біт управління 0)

Код наступний. Для тих, хто використовує

DlPortWritePortUchar H37A, 10

Чому 10? Давайте подивимося в табличку.

Сигнали STROBE, AUTO, SELECT IN - інверсні, значить, щоб на виході контактів роз'єму 1, 14, 17 отримати логічну «1» треба подати на ці біти логічний «0», тобто подали одне - отримали протилежне. Сигнал INIT прямий (НЕ інверсний), тому логічна «1» на контакті 16 з'явиться тоді, коли ми подамо на цей біт логічну «1», тобто що подали, то і отримали.

Спробуємо отримати на контактах 1,17 - низький рівень сигналу «0», а на контактах 14 і 16 високий рівень сигналу «1», тобто на виході контактів 1,14,16,17 буде присутній 0 1 1 0 (610).

Для зручності привожу таблицю з усіма можливими комбінаціями чисел від 0 до 15

Кінець першої частини.

У другій частині статті ми будемо підключати до порту різні електронні штучки.

Винагородити Я зібрав 0 0

оцінити статтю

Середній бал статті: 0 Проголосувало: 0 чол.

Для додавання Вашої збірки необхідна реєстрація

Добрий день.
Підкажіть будь ласка: чи можна LPT порт підключити до акумулятора A1185? Хочу через програму be2works розблокувати акумулятор для ноутбука.

Юзал inpout32.dll з Delphi під WinXP - працювало
За допомогою цього бібліотеки шарілся по регістрах і якось примудрився отримати швидкість вентилятора на старому ноутбуці ASUS

Інше життя lpt порту (частина 1)

МініПК MK809V - 4 ядра, Android 4.4.2

Схожі статті