Объявление

Свернуть
Пока нет объявлений.

USB Модуль Ke-USB24A

Свернуть
X
Свернуть
  •  

  • USB Модуль Ke-USB24A

    Уважаемые читатели! В этой и последующих статьях я хотел бы познакомить Вас с USB модулем Ke-USB24A от KERNELCHIP (www.kernelchip.ru). Что это такое и для чего он нужен?
    Наверняка, те кто занимаются разработкой и эксплуатацией устройств сопряжения с компьютером хорошо знакомы и LPT и COM портами - еще бы, ведь именно они являлись до недавнего времени основными способами коммуникации между внешней схемой и компьютером. Однако, в настоящий момент времени эти порты постпенно исхезают из состава материнских плат современных компьютеров. Встает вопрос о переходе на шину USB. Помимо кучи преимуществ использование этой шины требует гораздо больше уксилий чем например, обычный COM порт. Теперь необходимо программировать USB микроконтроллер, заниматься разработкой USB драйвера, существенно усложнять программное обеспечение. Даже использование HID устройства не всегда является удобным - требуется довольно громоздкая процедура работы с устройством на стороне PC. Примеры для работы с ней широко распространены для языка С++. А что делать, если мы хотим использовать, например, Java?
    Если перед нами стоит задача управления внешними устройствами, например, ключами, реле и т.д. через шину USB интересным ходом будет использование модуля Ke-USB24A. Он предназначен для сопряжения внешних цифровых и аналоговых устройств, датчиков и исполнительных механизмов с компьютером через шину USB. Модуль имеет 24 линии ввода/вывода с возможностью независимой настройки направления передачи данных.
    Нажмите на изображение для увеличения.

Название:	01.jpg
Просмотров:	311
Размер:	60.9 Кб
ID:	1840 alt="" />
    Одной из интереснейших особенностей этого модуля является то, что при подключении его к компьютеру он определяется операционной системой как дополнительный COM порт! Т.е. если установить для модуля драйвера (уже готовые, и доступные для скачивания на сайте разработчика) то в диспетчере устройств в разделе последовательных портов появится новый COM порт. Именно через него мы будем общаться с модулем.
    Нажмите на изображение для увеличения.

Название:	02.gif
Просмотров:	245
Размер:	2.9 Кб
ID:	1841 alt="" />
    Это означает что с программной точки зрения обмен информацией между модулем и компьютером осуществляется через интерфейс обычного последовательного порта. Последнее обстоятельство существенно облегчает программирование, т.к. нет необходимости в применении дополнительных динамических библиотек, сложных интерфейсов и непосредственного общения с драйвером. Для написания собственных программ управления модулем возможно применение любого языка/среды программирования, поддерживающих возможность работы с COM портами. Можно использовать C++, Delphi, VisualBasic, Java и даже встроенный в Excel язык VBA!
    Также внутри модуля уже интегрирован 10-ти разрядный аналого-цифровой преобразователь (АЦП) с частотой дискретизации до 400 Гц. Также модуль имеет возможность сохранения настроек направлений линий ввода/вывода, позволяет сохранять в своей памяти данные пользователя. Такж модуль позволяет изменять свой строковый дескриптор USB устройства. Именно этот текст появляется в Windows при подключении нового USB устройства. У Вас есть возможность установить и сохранить свой собственный текст, который будет появлятся при подключении модуля к компьютеру.

    Как осуществляется управление модулем? Решение тоже весьма интересно - используются текстовые команды, наподобие тех, которые применяются в управлении модемами. Например, чтобы установить высокий уровень напряжения (+5 В) на линии ввода/вывода под номером 14 необходимо в COM порт, ассоциированный с модулемм записать команду вида $KE,WR,14,1 , чтобы подать логический ноль - $KE,WR,14,0 и т.д. Для далбнейшего ознакомления с модулем рекомендую скачать описание команд управления Ke-USB24A (скачать).
    Познакомимся поближе с выводами модуля. Назначение и схема их расположения показаны на рисунке и в таблице ниже.
    Нажмите на изображение для увеличения.

Название:	04.jpg
Просмотров:	256
Размер:	68.3 Кб
ID:	1842 alt="" />
    Номер вывода Обозначение Описание вывода
    1, 32 + 5 В Если джампер JM1 установлен – на выводе установлено напряжение +5 В от шины USB (питание модуля осуществляется от шины USB). Если джампер не установлен, на данный вывод необходимо подать напряжение + 5 В от внешнего источника для питания модуля Ke-USB24A (модуль физически отключен от шины питания USB).
    2 Vadc Аналоговый вход АЦП
    3 I/O1 Линия ввода/вывода 1
    4 I/O2 Линия ввода/вывода 2
    5 I/O3 Линия ввода/вывода 3
    6 I/O4 Линия ввода/вывода 4
    7 I/O5 Линия ввода/вывода 5
    8 I/O6 Линия ввода/вывода 6
    9 I/O7 Линия ввода/вывода 7
    10 I/O8 Линия ввода/вывода 8
    11 I/O9 Линия ввода/вывода 9
    12 I/O10 Линия ввода/вывода 10
    13,14,15 NC Вывод не используется (Not Connected)
    16, 17 GND Земля
    18 I/O11 Линия ввода/вывода 11
    19 I/O12 Линия ввода/вывода 12
    20 I/O13 Линия ввода/вывода 13
    21 I/O14 Линия ввода/вывода 14
    22 I/O15 Линия ввода/вывода 15
    23 I/O16 Линия ввода/вывода 16
    24 I/O17 Линия ввода/вывода 17
    25 I/O18 Линия ввода/вывода 18
    26 I/O19 Линия ввода/вывода 19
    27 I/O20 Линия ввода/вывода 20
    28 I/O21 Линия ввода/вывода 21
    29 I/O22 Линия ввода/вывода 22
    30 I/O23 Линия ввода/вывода 23
    31 I/O24 Линия ввода/вывода 24
    Теперь давайте перейдем сразу к практическому использованию модуля. Соберем схему на основе модуля для управления внешними нагрузками через шину USB, например, давайте будем управлять светодиодами, подключенными к линиям ввода/вывода. Рекомендованная схема от производителя представлена ниже. Схема предельно проста - к линиям ввода/вывода просто подключены светодиоды. Все светодиоды "сажаются" на общий провод схемы - напрмер, вывод 16 модуля. Обратите внимание, что если Вы хотите управлять болле мощными нагрузками, например, лампочками, реле или моторами Вам необходимо позаботится о буферной схеме, т.к. Ke-USB24A не выдержит такой нагрузки и перегорит. Светодиоды можно подключать вполне спокойно.
    Нажмите на изображение для увеличения.

Название:	03.gif
Просмотров:	275
Размер:	20.5 Кб
ID:	1843 alt="" />
    Со схемотехникой разобрались - пора переходить к софту. Нам необходима программа, которая могла бы передавать данные через COM порт. Тут есть несколько вариантов - можно использовать уже готовую программу, например, HyperTerminal, входящую в состав любой ОС Windows. Можно использовать специальную терминальную программу KeTerm, рекомендуемую разработчиком (для нее доступны исходные коды на языке С++, среда разработки Microsoft Visual C++ 6.0). Скачать ее можно на сайте Kernelchip. И наконец, наиболее интересный вариант - написать свою программу. Это весьма просто, т.к. нам потребуются знания только по программированию COM порта - о программировании USB нам даже вспоминать не ненужно.
    Начнем с HyperTerminal т.к. она есть в любой версии Windows и всегда под рукой. Для ее запуска выберите Пуск ->Программы -> Стандартные -> Связь -> HyperTerminal. Тотчас же запуститься мастер создания нового соединения с предложением указать имя соединения. Укажите любое название, нажмите "OK". Следующим шагом необходимо выбрать COM порт через который необходимо установить соединение. В списке выбираем такой номер порта который был выделен Windows для модуля (можно посмотреть в диспетчере устройств). Нажмите "OK". Далее мастер предложит изменить настройки порта. Здесь необходимо сделать важное замечание – такие параметры как скорость, количество битов данных, битов четности и остальные настройки не имеют ни какого значения для модуля, т.к. фактически данные передаются по шине USB. Можно смело оставить все настройки по умолчанию. Нажмите "OK".Итак, соединение установлено. Далее настоятельно рекомендуется изменить некоторые настройки в программе для удобства работы. В главной панели программы нажмите на кнопку "Свойства". В открывшемся окне перейдите на вкладку "Параметры" и нажмите на кнопку "Параметры ASCII...". Установите флажки как на рисунке ниже. Обратите внимание на первый флажок. Синтаксис команд модуля требует чтобы все команды заканчивались символом возврата каретки и перевода на новую строку. Нажмите "OK".
    Нажмите на изображение для увеличения.

Название:	05.gif
Просмотров:	257
Размер:	8.2 Кб
ID:	1844 alt="" />
    Все настройки выполнены. Можно приступать к работе. Для начала отправим модулю самую простую команду $KE – команду проверки. Набираем текст $KE и нажимаем Enter. В ответ мы получаем строку #OK – это значит что модуль исправен и готов к работе.
    Нажмите на изображение для увеличения.

Название:	06.gif
Просмотров:	245
Размер:	5.6 Кб
ID:	1845 alt="" />
    Ну а дальше дело техники - используем команду $KE,WR с нужным номером линии и необходимым значением для записи. Посылаем разные команды - мигаем светодиодами.

    На этом я хотел бы закончить эту вводную статью. Далее мы познакомимся с тем как управлять модулем из программ написанных на С++, Delphi и даже из EXcel. Познакомися с другими полезными функциями модуля, например АЦП.

    Дмитрий Иванов 5 апреля 2008
      Возможность размещать комментарии к сообщениям отключена.

    Метки статей

    Свернуть

    Меток пока нет.

    Новые статьи

    Свернуть

    • «NO EXCUSES» — специальная программа компании MOTOROLA
      от admin
      Дмитрий Панфилов
      «NO EXCUSES» — специальная программа компании MOTOROLA

      Ни для кого не секрет, что микропроцессоры и микроконтроллеры находят самое широкое применение в различных областях науки и техники. Сегодня трудно указать область электроники, где не использовались бы микроконтроллеры. Количество...
      10.02.2017, 14:56
    • Частотомер на PIC16F873 с двух строчным ЖКИ способный измерять частоты
      от admin
      alt="" />Частотомер на PIC16F873 с двух строчным ЖКИ способный измерять частоты от 10Гц до 45МГц. Чувствительность по входу около 50мВ, входное сопротивление 250 Ком, входная ёмкость 15пФ. Питание девятивольтная батарея 6F22.В память можно вносить значения, которые будут, прибавлены к входной частоте...
      10.02.2017, 14:56
    • Управление нагрузкой 220В переменного напряжения с использованием симисторов
      от admin
      Для плавного управления нагрузкой, например, лампой освещения, можно использовать симистор. Открывается симистор током при подачи на управляющий электрод импульса. Закрывается, когда ток, проходящий через него, становится равным нулю, когда переменное напряжение меняет знак.
      ...
      10.02.2017, 14:56
    • Управление модулем Ke-USB24A из Excel
      от admin
      Всю прелесть программирования USB модуля Ke-USB24A можно оценить когда встает вопрос о необходимости написания программы на каком-либо не очень широко распространенном языке или для какой-либо среды, которая, казалось бы не предусматривает возможность работы с USB устройствами....
      10.02.2017, 14:55
    • Управление матрицей 8х8 - легко!
      от admin
      Матрица управляется так же как и 7-сегментные индикаторы - динамически. Мега16 портом А управляет одной координатой (выбирает сторку для вывода инфы), порт С - выводит ту самую информацию. Информация берётся из массива.
      />

      />
      Что бы пользоваться редактором, нужно переменную STROKA из примера переименовать в rows_arr.
      Вложения: matrica8x8.fcf_avr (56 Кб) Любители ПИКов, вам не составит труда пореколбасить этот п...
      10.02.2017, 14:55
    • То, что улучшает нашу жизнь (микросхемы для домашних и игровых устройств)
      от admin
      Журнал «Компоненты и технологии» №8 2001 г.
      Ракович Н. Н.

      "В человеке все должно быть прекрасно… и у него в доме тоже"
      (Почти по А. П. Чехову)
      В последнее время при чтении профессиональных электронных журналов и статей, посвященных использованию электронных компонентов, у меня возникло и окрепло унылое ощущение, что вся гигантская...
      10.02.2017, 14:55
    Обработка...
    X