Подключение мыши\клавиатуры к кпк через COM порт | рааспиновки\драйвера



Реп: (110)
вот написал небольшой фак.. надо еще чуть чуть доработать и будет то что надо...

Подключение PS/2 клавиатуры к КПК через COM порт.

1)Вывод ком порта..

Если вам нужна внешняя клавиатура, для вашего КПК, а покупка бт и ик клавиатур вам не по карману, то можно подключить к КПК обычную PS/2 клавиатуру через COM порт, COM порт есть почти на всех КПК(в отличие от USB host)… Для начала вам нужно вывести обычный разъём ком порта(RS232) от обычного разъёма КПК, для этого вам нужно найти разъём RS232(для этого я просто разобрал старый кабель от модема), и разъём КПК(для этого я использовал обычный свисток от зарядного устройства, идущий в комплекте с моим ipaq) также нужен паяльник и припой и прочие принадлежности для пайки.. Распиновку(это где какой контакт находиться) можно найти на pinouts.ru в частности распиновка ком порта в виде разъёма rs232 находиться по адресу http://pinouts.ru/SerialPorts/Serial9.shtml распиновку разъёма кпк можно найти там же, в частности распиновка разъёма HP iPAQ h19xx, h22xx, h3800, h3900, h4100, h4300, hx4700, h5400, h5500, h6315, h6340, h6365 находиться по адресу http://pinouts.ru/PDA/ipaq_22p.shtml там есть таблицы, смотрим там идентичные названия контактов и просто совмещаем контакты разъёма КПК с rs232 разъёмом…
У меня все это получилось вот в таком виде, но у вас может получиться по другому, вобщем это не важно главное чтобы все работало…
Прикрепленное изображение

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

2)Подготовка к сборке схемы..

Вот схема адаптера..
Прикрепленное изображение

В основе этой схемы лежит программируемый микроконтроллер AT89C2051, но он для него нужно собирать достаточно сложную схему программатора вместо неё я рекомендую использовать микроконтроллер AT89S8252 у него больший объём памяти, и он очень прост в программировании..

Для сборки данной схемы вам понадобиться:
1)Разъём для ps/2 клавиатуры «розетка»
2)2 конденсатора керамических 33pf(пико фарад)
3)Кварцевый резонатор 24мгц
4)резистор 10кОм(кило Ом)
5)конденсатор керамический или электролитический 10mkf(микро фарад) 16V(вольт)
6)программируемый микроконтроллер atmel AT89S8252 в DIP 40 корпусе
7)4 керамических конденсатора 0.1mkf(микро фарад)
8)Интегральная микросхема MAX 232 CPE(желательно брать именно CPE а не ACPE и тп, поскольку CPE дешевле и более подходит для этой схемы) в DIP16 корпусе..
9)Разъём rs232
10)Панели для этих микросхем, они могут называться SLC и TSR панели, их обязательно надо брать, я вот по глупости своей не купили испортил макетную плату и сами микросхемы, поскольку при пайке контакты микросхем сильно нагреваются и от перегрева микросхемы выходят из строя, и если нужно будет снять микросхему с платы, то не повредив её сделать это невозможно..
11)Макетная плата для моделирования микросхем, если вы собираете такую схему первый раз, то лучше взять плату размером побольше я купил плату 10х10см, поскольку я поял схему такой сложности первый раз…
12)около 5-ти метров мгтф, желательно чтобы сечение было поменьше, у меня сечение было 0.05мм.
13)2-х контактные разъёмы для подачи питания.
14)источник питания 5в, в качестве источника питания я использовал 3 батарейки АА типа, не пытайтесь использовать блоки питания от мобильных телефонов, поскольку питание там –импульсное, а от импульсного питания мк работать не будет.

Для сборки программатора:
1)2 резистора 200~500 Ом
2)разъём lpt порта
3)5-ти контактный разъём на плату

Я купил это все в магазине ЧИП и ДИП на ст.Метро курская..
Прикрепленное изображение

На все это я потратил около 500р но если покупать все точно по списку, то это выйдет около 300-400р..

3)сборка схемы

Одна из самых сложных частей сборки. Сначала берем саму макетную плату, потом ставим на неё радиочасти, они должны попадать своими контактами ровно в дырки на макетной плате там все так рассчитано. Я начал с разъёма ps/2, я его установил на плату, потом капнул припоя туда, где вошли контакты разъёма, далее обрезаем от провода мгтф кусочек нужного нам размера, дальше снимаем с его краёв немного изоляции, оголенную часть провода покрываем припоем, а дальше с той стороны где выходят контакты. И вот так вот потихоньку собираем всю схему, в ходе сборки вам понадобятся цоклевки микросхем и программируемых микроконтроллеров, их можно найти в даташитах, а сами даташиты можно найти на сайте производителей, даташит AT89S8252 http://www.atmel.com/dyn/resources/prod_do...nts/doc0401.pdf , даташит max232 Прикрепленный файлimg-18420-MAX.rar ( 578.91 КБ )
.. Чтобы различать такие детали как конденсаторы и резисторы вам понадобятся сведения о маркировках, поскольку большинство элементов будет либо промаркировано цветами, либо кодами сведения о маркировке конденсаторов можно найти здесь: http://www.radioradar.net/spravka/conder.p...avka/conder.php , маркировку резисторов здесь: http://www.alfa-elektronik.com/html/articl...t/mark-res.html .. если вы новичок в радиотехнике, то я бы посоветовал вам соорудить небольшие конвертики из бумаги в которые вложить элементы а на конвертиках написать какой элемент в них лежит(я так и делал) чтобы случайно не перепутать при сборке схемы.. Стоит отметить что желательно кварц и конденсоторы надо бы припаять поближе к контроллеру, также на ком порте линию DTR можно не выводить.. Еще желательно тут же собрать программатор, схема программатора:
Прикрепленное изображение
резисторы я рекомендую спрятать в самом разъёме lpt… Например вот так:
Прикрепленное изображение

это программатор другого мк(микроконтроллер), в схеме нашего программатора будет всего 2 резистора..

Желательно сделать, чтобы программатор подключался к плате а не был намертво припаян к контактам мк, для этого я в списке указал 5-ти контактный разъём, который очень упростит жизнь припрограммировании мк..
Прикрепленное изображение

Прикрепленное изображение

4)Программирование микроконтроллера

Когда процесс завершен и схема готова, можно перейти к программированию микроконтроллера, для этого нам понадобиться программа программатор «хамелеон» его можно взять отсюда http://atprog.boom.ru/Sindex.html , еще нам понадобиться сама «прошивка» она представляет собой бинарный файл, скачать его можно отсюда http://mkmk.ras.ru/iprim/arc/palmtasta2.zip , в архве находиться файл keyboard.bin это и есть прошивка нашего мк. сначала отпаиваем конденсатор и резистор от линии rst котроллера, и припаиваем rst программатора, подключаем нашу схему к lpt компьютера, подключаем питание, запускаем программу хамелеон, выбираем нудный модуль для программирования у нас это будет AT89S8252 выбираем бинарный файл для программирования и программируем.. Кода процесс программирования будет закончен высветиться табличка, которая сообщит об этом.. Затем отключаем программатор от компьютера, припаиваем обратно линию RST и все готово.. Если вы не уверены что сможете сам запрограммировать контроллер, то насколько я знаю существуют специальные фирмы у которых есть специальные программаторы, вы можете обратиться туда если тогда желательно строить схему на AT89C2051 поскольку если есть где эту микросхему запрогроммировать её применение значительно упростит процесс сборки и еще она самая дешевая..
Вот собственно и все, осталось только вывести разъёмы и соорудить корпус, ну это уже дело творчества.. когда все будет готово устанавливаем программу newtonkey на КПК, запускаем её и наслаждаемся работой с полноформатной клавиатуры в КПК..
img-18281-IMG_0943.JPG


Сообщение отредактировал bambei - 18.11.10, 03:14



Реп: (14)
Тут есть кто?
или специалистов по интерфейсам временно нету?



Реп: (14)
начал нарабатывать исходники по PS2 - http://www.mindrunway.ru/GraniCubPS2.html

Пока 3 вопроса
1 какая раскладка (может кроме машинописной - qwerty латиницы ещё пару надо)
2 какие спец команды (например макросы и на какие кнопки)
3 под какие скорости ком порта

:thank_you:

Сообщение отредактировал QuickWitted - 20.06.09, 10:23



Реп: (114)
Тоесть ты хочешь повторить мой подвиг, но с переходом на AVR?

Если так, то где-то уже видел готовую прошивку контроллера. Там подключалась PC/AT клавиатура. Все было написано на C++. И уже оттуда умельцы портировали прошивку на C51 , но уже на ассемблере.

Если будешь делать, то делай для контроллеров без RS232. Провода это не есть гут. Желательно, чтобы прошивка работала на контроллерах ATMEL ATTiny (Tiny13 - 8 ножек, а сколько радости).
Исходники для ИК я тоже где-то видел в инете. Я недавно даже обнаружил исходники для подключения контроллеров типа ATTiny к USB.

Какая раскладка?
Раскладка определяется драйвером. Драйвер используется готовый.
Хочешь писать свой собственный драйвер - это хорошо, но зачем?
Скорость компорта - да можно любые. Кому какие нравятся. Я использовал 9600 бод.
Макросы - это тоже хорошо. Например запуск пользовательских программ. Запускаешь бат-файл, а в нем пишешь, что хочешь.
Поворот экрана не помешает, регулировка яркости, громкости звука, принтскрин итд.
Автозамена и автовставка -штука вроде как нужная, но на практике, лично для меня, оказалась бесполезной.

А исходники прошивок где-нибудь выложены?



Реп: (14)
Klev_ @ 1.4.2009, 2:54 *
Тоесть ты хочешь повторить мой подвиг, но с переходом на AVR?


Не повторять (повторять не интересно если есть готовое), а расширить функционал нашей совместной разработки IgorPlug2...
(я пишу код со стороны МК и обучалки к нему)

Klev_ @ 1.4.2009, 2:54 *
Желательно, чтобы прошивка работала на контроллерах ATMEL ATTiny (Tiny13 - 8 ножек, а сколько радости).


на практике вес даже на асме около 8 кило...
т.е. для ATMega88 (ИР сам по себе тяжелый)
А управление с ИР пока никто не делал для КПК :)

Klev_ @ 1.4.2009, 2:54 *
Раскладка определяется драйвером. Драйвер используется готовый.


вот и я про то...
а какая она у него?
моя в пдфке... теперь нужен таблойд перевода моего номера в нужный драйверу

Klev_ @ 1.4.2009, 2:54 *
Макросы - это тоже хорошо. Например запуск пользовательских программ. Запускаешь бат-файл, а в нем пишешь, что хочешь.


я обычно делаю конфигураторы...

Klev_ @ 1.4.2009, 2:54 *
А исходники прошивок где-нибудь выложены?


у меня на сайте проект...
если есть желание помочь и развить его - сделаем вместе...
проект командный - помогать может любой желающий :)

Прикрепленные файлы

Прикрепленный файлMyTabl.pdf ( 38.88 КБ )


Сообщение отредактировал QuickWitted - 01.04.09, 05:44



Реп: (14)
Если у кого есть желание помочь, то надо подкорректировать файл ответов
Прикрепленный файлTabl21.rar ( 2.41 КБ )

(это заготовка к переводу в стандартные ответы qwerty клавиатуры)

если есть вопросы - поясню.

Сообщение отредактировал QuickWitted - 01.04.09, 18:35



Реп: (14)
Где можно почитать о "Code-Set2 c't6/88 s.152."?
в нете только "Keyboard Scan Codes: Set 2" но это сильно другое.
если я правильно натравил дэльфи на твой исходник, то вот что удалось выдрать Прикрепленный файлTabloyd.rar ( 3.11 КБ )


>Тоесть ты хочешь повторить мой подвиг, но с переходом на AVR?

твой подвиг давно повторен...
http://www.geocities.com/v_seroff/ps2_keyb.htm

Знаешь что смущает - второстепенные функции кнопок разные...
а текстовая часть совпадает...

что весит на F7?
и правильно ли я создал табличку?

>Передача на ИК занимает много?

про передачу - у тебя полный исходник есть?

>Прошивка с ик приложена+исходники.

приложен только эмулятор под 98 винду

а глобально - я не прошивку вещаюшую по IR делаю, а переходник с ЛЮБОГО IR на более удобный рс232

Сообщение отредактировал QuickWitted - 02.04.09, 17:40



Реп: (114)
Code-Set2 c't6/88 s.152." - почитать думаю негде. Делалось специально под другой драйвер - NewtoKey. А когда нашелся нормальный драйвер - исправлять ничего уже не хотелось.

Это повторен не мой подвиг, а подвиг того, кто собственно сделал самую первую версию конвертера с контроллерами АВР.
Я объединил несколько идей в одну. Исток у всех проектов один и тот же.

Про ИК - понятно, что я писал это не сам. Нашел исходники и выдрал из них, что надо.

Исходник полный, выложен в prog_keyb.rar .
keyboard.asm - это исходник прошивки.

приложен только эмулятор под 98 винду :blink: ???

Так тебе нужны исходники не только на передачу, но и на прием?
Видел и такие. Там еще были исходники организации полноценного USB на контроллерах серии TINY.
http://www.lirc.org/

Сообщение отредактировал Klev_ - 03.04.09, 00:17



Реп: (14)
Klev_ @ 2.4.2009, 21:39 *
Так тебе нужны исходники не только на передачу, но и на прием?


Повторюсь Я РАЗРАБОТЧИК проекта IgorPlug2

ЭТО И ЕСТЬ ПРИЁМНАЯ ЧАСТЬ для управления, любым девайсом
начиная от компьютера (через винлирк, ирлинк, слайконтрл, гирдер, ПерехватЪ и т.д. а под линукс просто лирк),
заканчивая лампочкой в туалете (автономный режим)

И Я СЕЙЧАС РАСШИРЯЮ ФУНКЦИОНАЛ

Но пока не совсем понятно
1 - какая кодировка.
почему вспомогат кнопки имеют разную кодировку и где описан их набор.
2 - какой формат ир посылки для ир драйвера...
формат в архиве, а драйвер где?

Сообщение отредактировал QuickWitted - 20.06.09, 10:22



Реп: (14)
Klev_ @ 2.4.2009, 21:39 *
приложен только эмулятор под 98 винду ???


да в том архиве была прога - эмулятор клавиатуры для IBM PC...
и на ХП она не запустилась... т.к. попыталась ломиться в ком порт...
дату помню 2000 год.
в комплекте было несколько файлов разных раскладок...
но я с ней экспериментировал на др машине
потом решил что дома ещё раз скачаю и удалил её там

сейчас в этом архиве другое...

(я не путаю и галиков у меня нет... я с той машины пытался ответить,
но не вышло, форум был недоступен...)



Реп: (114)
1 - какая кодировка.
почему вспомогат кнопки имеют разную кодировку и где описан их набор.
Если вспомогательные кнопки это F1-F12, то некоторые из них, насколько я помню, задействованы для управления самодельным девайсом(типа включение/выключение внешней клавы)

2 - какой формат ир посылки для ир драйвера...
формат в архиве, а драйвер где?
Стандартный для SIR - в смысле харда. Открываем порт и читаем данные.
ир-посылка - это сканкод - транслируется непосредственно с клавиатуры в ИК. Т.е все зависит от клавиатуры. Что она пришлет, то и передастся. В исходниках сканкоды преобразуются по таблице. Делалось для клавиатуры PC/AT.

То, что передает девайс можно посмотреть в любой терминальной программке, открыв ик-порт компа/кпк.

Сообщение отредактировал Klev_ - 03.04.09, 00:14



Реп: (14)
Klev_ @ 3.4.2009, 2:08 *
то некоторые из них, насколько я помню, задействованы для управления самодельным девайсом(типа включение/выключение внешней клавы)


А описание всего набора есть?

Пример цыфровая клавиатура.
.DB 0x00, 0x00; 30 - " 0 "
.DB 0x00, 0x00; 31 - " 1 "
.DB 0xFD, 0xFD; 32 - " 2 "
.DB 0x00, 0x00; 33 - " 3 "
.DB 0xFB, 0xFB; 34 - " 4 "
.DB 0x00, 0x00; 35 - " 5 "
.DB 0xFC, 0xFC; 36 - " 6 "
.DB 0x00, 0x00; 37 - " 7 "
.DB 0xFE, 0xFE; 38 - " 8 "
.DB 0x00, 0x00; 39 - " 9 "

.DB 0x9D, 0x9D; 30 - " 0 "
.DB 0x92, 0x92; 31 - " 1 "
.DB 0x93, 0x93; 32 - " 2 "
.DB 0x94, 0x94; 33 - " 3 "
.DB 0x95, 0x95; 34 - " 4 "
.DB 0x97, 0x97; 35 - " 5 "
.DB 0x96, 0x96; 36 - " 6 "
.DB 0x9A, 0x9A; 37 - " 7 "
.DB 0x9C, 0x9C; 38 - " 8 "
.DB 0x99, 0x99; 39 - " 9 "



Klev_ @ 3.4.2009, 2:08 *
Стандартный для SIR - в смысле харда. Открываем порт и читаем данные.
ир-посылка - это сканкод - транслируется непосредственно с клавиатуры в ИК.


Виды кодировок пультов дистанционного управления.
и все они "стандартные" для данного пульта...
а пультов вагон и маленькая тележка.

1 этот какой (название и описание)?
2 где от него драйвер для КПК?

Klev_ @ 3.4.2009, 2:08 *
То, что передает девайс можно посмотреть в любой терминальной программке, открыв ик-порт компа/кпк.


а я про что?
У кого есть готовый - гляньте правильно ли я составил таблойд...

Сообщение отредактировал QuickWitted - 20.06.09, 10:21



Реп: (114)
Я говорю не о пультах, а о последовательном ик-порте. Формат передачи данных там один для всего.
Описание всего набора у меня нету.
SIR - стандарт такой - Serial IR. Описание в инете валяется. Его поддерживает КПК. Ноуты могут поддерживать FIR - fast ir, и еще есть некий RAW IR.

Сообщение отредактировал Klev_ - 04.04.09, 00:11



Реп: (114)
Господа МОДЕРАТОРЫ!
Пора уже почистить тему. Слишком много мусора.



Реп: (14)
Klev_ @ 3.4.2009, 19:13 *
Я говорю не о пультах, а о последовательном ик-порте. Формат передачи данных там один для всего.


Аппаратный один и ДВУХ СТОРОННИЙ
и для установления связи нужен обмен посылками.
а на твоей схеме приёмной части нет совсем...

Klev_ @ 3.4.2009, 19:13 *
SIR - стандарт такой - Slow IR.


SIR = SERIAL IR

Klev_ @ 3.4.2009, 19:13 *
последовательном ик-порте.


во во последовательном, но не Slow.

а то что ты привёл больше на ПДУ смахивает.
А раз привёл то должен знать где драйвер...

Сообщение отредактировал QuickWitted - 03.04.09, 19:36



Реп: (14)
Klev_ @ 1.4.2009, 2:54 *
Тоесть ты хочешь повторить мой подвиг, но с переходом на AVR?


Модульный проект GraniCubicle. - Блок 4 для 'PS/2'

Ключевые слова для поиска:
"Прошивка для "PS/2<=>RS232" адаптера."
"Для переходника PS/2 <=> RS232 схему можно упростить до"

Тестируем и отписываемся

Сообщение отредактировал QuickWitted - 20.06.09, 10:21



Реп: (114)
QuickWitted @ 3.4.2009, 20:35 *
а на твоей схеме приёмной части нет совсем...


Цитата(Klev_ @ 3.4.2009, 19:13)
SIR - стандарт такой - Slow IR.


SIR = SERIAL IR


Цитата(Klev_ @ 3.4.2009, 19:13)
последовательном ик-порте.


во во последовательном, но не Slow.

а то что ты привёл больше на ПДУ смахивает.
А раз привёл то должен знать где драйвер...


Ты не хочешь повторить мой подвиг! Это Факт. :D
По поводу SIR спорить не буду.
Но тогда почему стандарты называются FIR MIR VFIR? - википедия рулит

Драйвером называю программу MACCENTRE UNIBOARD, установленную на кпк. Она открывает последовательный порт КОМ3 и считывает из него сканкоды.
Программу писал не я. Я ее только приручил. Ссылку на программы дал выше.

Такой прибор сделал не я один. Я не был первым. Первыми были Neutrino и Старостин. О них на этом форуме говорилось и не раз. Код обмена данными с ик взят из прошивки Старостина.
Прошивка Старостина не работала, пришлось ее дизассемблировать и выковыривать обмен данными с ИК. Neutrino приручил клавиатуру от Палм-пилот. И был еще один немец. Он, насколько я понимаю был самым самым первым разрабом. Как звали немца - не знаю. Но исходники от его прошивки разошлись по инету. Разработка года наверное 1997-2000.

Сообщение отредактировал Klev_ - 04.04.09, 01:55



Реп: (14)
Klev_ @ 4.4.2009, 2:30 *
Но тогда почему стандарты называются FIR MIR VFIR? - википедия рулит


так же википедия подсказывает, что они двухсторонние...
т.е. основаны на обмене пакетами...
а в нете по слову IRDA пишут почему к ним трудно прилепить односторонние системы...
(IR ПДУ по другому)

Я стэк для IRDA давно ищу....
(на любом МК)

Klev_ @ 4.4.2009, 2:30 *
Драйвером называю программу MACCENTRE UNIBOARD, установленную на кпк.
Она открывает последовательный порт КОМ3 и считывает из него сканкоды.


но не по ИР с этой схемой...
(в смысле ир - ком портом прикидывается только при двухстороннем обмене)
(при одностороннем своё апи - без ком порта, а напрямик к железу с софтовым декодированием)

Klev_ @ 4.4.2009, 2:30 *
Программу писал не я. Я ее только приручил. Ссылку на программы дал выше.


если есть другие проги или исходники - если не трудно залей сюда.
а то с тем что есть (я про шапку и 24 страницы всего) разобраться очень трудно...



Реп: (114)
QuickWitted @ 4.4.2009, 12:03 *
Я стэк для IRDA давно ищу....
(на любом МК)

Ищи на www.lirc.org
Там много всего в разделе Supported Hardware.
Я разбирался только с иходниками для подключения АВР к USB.

QuickWitted @ 4.4.2009, 12:03 *
но не по ИР с этой схемой...
(в смысле ир - ком портом прикидывается только при двухстороннем обмене)
(при одностороннем своё апи - без ком порта, а напрямик к железу с софтовым декодированием)

А вот это вот неправда.
Можешь провести эксперимент сам . Берешь 2 компа 2 ком-порта и соединяешь их двумя проводами. Один - земля, второй - РХД->ТХД.
В терминале на компе, который посылает данные(провод подключен к ТХД) пишешь что-нибудь. И в терминале на компе, который принимает данные напишется тот текст, который ты послал. Это факт. Точно также можно пересылать данные с одного контроллера на другой всего по 2-м проводам. Точно также можно пересылать данные через ИК-порт. И это тоже факт.

Прога MACCENTRE UNIBOARD работает именно по такому алгоритму. Она открывает ИК-порт, как обычный ком-порт. ИК-порт у меня соответствует последовательному порту КОМ3.

Все исходники я выложил в посте
Подключение мыши\клавиатуры к кпк через COM порт (Пост #2594020)

Сообщение отредактировал Klev_ - 04.04.09, 18:27



Реп: (14)
>Я стэк для IRDA давно ищу....(на любом МК)

Klev_ @ 4.4.2009, 20:24 *
Ищи на www.lirc.org
Там много всего в разделе Supported Hardware.


при чём тут лирк?
стек IRDA со стороны девайса к пультам никакого отношения не имеет...

У IRDA есть профиль - rs232 (для активации на ХП нужен внешний драйвер
т.к. ХП прёт на Обекс, а 98 на профиль rs232 и для подкл к 98 сотки нужет
сторонний драйвер)

При его реализации со стороны МК получим ИК удлинитель рс232

Но на КПК я такого профиля не видел...
видел только Обекс (передача и приём файлов и т.д.)

Klev_ @ 4.4.2009, 20:24 *
А вот это вот неправда.
И в терминале на компе, который принимает данные напишется тот текст, который ты послал. Это факт.


А гуглю спросить прежде чем утверждать?
http://www.ixbt.com/peripheral/irda.html
http://www.gaw.ru/html.cgi/txt/interface/irda/start.htm

Ты путаешь комповый рс232 (на котором по определению одно устройство) и
IRDA (у которого устройств может быть много и требуется "рукопожатие" до начала передачи.)


; --------------------------------------------------------------------

Рукопожатие — обмен сигналами между устройствами, участвующими в обмене с подтверждением выполнения операции (handshaking).

Стандарт IrDA включает в себя стек протоколов трех согласованных обязательных уровней: IrPL (Physical Layer), IrLAP (Link Access Protocol) и IrLMP (Link Management Protocol).

Физический уровень (Physical Layer). Спецификация этого протокола устанавливает стандарты для Ir-трансиверов, методов модуляции и схемы кодирования/декодирования, а также ряд физических параметров.

Программный протокол. Он включает в себя: IrLAP (Link Access Protocol), занимающийся разбиением данных на блоки, контролем ошибок и другими функциями низкого уровня, и IrLMP (Link Management Protocol), позволяющий по одной ИК-линии обмениваться данными между несколькими приложениями.

Договариваясь о соединении, устройства обмениваются информацией о скорости, максимальной и минимальной длительности цикла, максимальной величине фрейма, размере окна, количестве дополнительных флагов BOF (Beginning Of Frame) и пороговом времени разрыва соединения (промежуток, в течение которого не было принято ни одного корректного фрейма). Под максимальным циклом (maximum turn-around time) подразумевается отрезок времени, по истечении которого устройство должно установить в своем фрейме конечный бит, а под минимальным – длительность паузы, начиная с момента отсылки последнего байта последнего фрейма, запрошенного передающим устройством, чтобы подготовиться к приему данных. BOF выполняет роль задержки перед посылкой очередного фрейма устройствам с большей задержкой. Предусмотрена команда смены ролей XCHG, позволяющая передавать право называться первичным устройством, как эстафету. Для проверки правильности передачи фрейма к нему в конце дописывается поле FCS (Frame Check Sequence), которое содержит контрольную сумму формата CRC-CCITT.



Реп: (14)
Klev_ @ 4.4.2009, 2:30 *
Ты не хочешь повторить мой подвиг! Это Факт.


А зачем повторять, если я сам могу придумать набор функционала?

На одном из готовых переходников видел функцию монитора...
т.е. если комп есть слушаем и даём инфу в рс232
если компа нет сами с клавой общаемся (инитим и читаем ответы)

при этом и с разветвлением питания проще...
т.е. если нет компа переходник вместо компа втыкается в источник +5в

Увидел, поправил, запустил. :thank_you:

Прикрепленные изображения
Прикрепленное изображение


Сообщение отредактировал QuickWitted - 05.04.09, 17:22


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 28.03.24, 22:34