Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145

VB6+FTDI_DLL. Организовать обработку события

16.05.2021, 14:20. Показов 767. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый суток.

Сопрягаю VB6+FT232RL (USB-->COM), со стороны COM стоит генератор, шлёт посылки 1, 2, ... 255,
и так по кругу. Скорость 9600, но каждый байт засылается 1 раз в секунду (чтоб на осциллопе успеть
посмотреть).

Делаю следующее:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub Form_Load()
    'Получаю имя USB-устройства
Rez = FT_ListDevices(0, mName, &H40000002)
    'Открываю USB-устройство
Rez = FT_OpenEx(mName, FT_OPEN_BY_DESCRIPTION, Hnd)
    'Настраиваю 8 бит данных, 1 стоповый бит, без бита чётности
Rez = FT_SetDataCharacteristics(Hnd, 8, 1, 0)
    'Скорость 9600
Rez = FT_SetBaudRate(Hnd, 9600)
End Sub
 
Private Sub Timer1_Timer()
    'Если в приёмном буфере чо-нибудь есть...
Rez = FT_GetStatus(Hnd, LenRXBuf, LenTXBuf, mLong)
If  LenRXBuf >0 Then
        '... то считаем эти байты
    Rez = FT_Read(Hnd, B(1), LenRXBuf, mEvent)
End If
End Sub
Это всё прекрасно работает.
В FTD2XX.DLL вижу фуню:
Visual Basic
1
2
3
4
5
Declare Function FT_SetEventNotification Lib "FTD2XX.DLL" ( _
    ByVal lngHandle As Long, _
    ByVal dwEventMask As Long, _
    ByVal pVoid As Long _
) As Long
Чо-то ума не хватает "зарядить" её.

Как бы "это всё довести" до логического конца, т.е:
По приходу одного байта на RX-буфер (а другого количества как я понял не предусмотрено),
срабатывал обработчик внутри VB6, например:
Visual Basic
1
2
3
Public Sub MoyEvent ( )
    Rez = FT_Read(Hnd, B(1), 1, mEvent)
End Sub
???
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.05.2021, 14:20
Ответы с готовыми решениями:

Как организовать обработку события в таблице значений?
Ситуация такая: Для подбора значения из документа открывается обработка, содержащая таблицу значений. Эта таблица значений заполняется...

Использовать обработку события по изменению данных DataGridView в обработке события сторонней кнопки
Имеется некий DataGridView, при изменении данных в определенной ячейке которого создается определенное действие, описанное в обработчике...

Обработка события на VB6
Подскажите, можно ли на VB6 создать свое событие, а в формах проекта его обрабатывать. Т.е. При изменении данных в таблице базы данных я...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.05.2021, 14:20
Помогаю со студенческими работами здесь

Вызов события на обработку
Может кто подсказать как правильно вызвать событие. На форме имеется: ComboBox, DBGrid. В DBGrid вызвал событие: DBGrid1MouseUp (в...

Не выходим на обработку события OnKeuDown
Перед запуском основного окна программы я создаю вспомогательное окно, которое висит некоторое время (в это время проходит подготовка к...

Организовать многопоточную обработку массива
Здравствуйте! Уже не знаю где искать информацию. Решил изучить многопоточноть. До этого опыта ни на одном языке - не было. Основная...

Временно отключить обработку события у элемента
Какие есть приёмы для отключения обработчика у элемента формы. Вот например есть у меня кнопка с свойством check on click. Есть у неё...

Какой класс отвечает за обработку события?
Доброго времени суток))) По кнопке вызывается метод: private void Alarm_it() { sharedPreferences = getPreferences(MODE_PRIVATE); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru