реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Вопросы по IrDA, Подскажите кто знает.
iit
сообщение Jul 5 2006, 10:14
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 72
Регистрация: 8-11-04
Из: Томск
Пользователь №: 1 070



Нужно связать устройство на МК с компъютером (ноутбук или КПК) и желательно по инфракрасному интерфейсу. Я по своей наивности полагал, что цепляем на UART МК какой-нибудь трансивер и вперед, общаемся как через RS-232. Оказалось не все так просто, как хотелось-бы. А шибко заморачиваться не хочется.
Порылся на форуме, в интернете и нашел микросхему TFDU4100, как я понял преобразователь IrDA <-> RS232.
В связи с этим возник вопрос.
Если я правильно понял, то поставив со стороны МК эту микросхему я буду общаться с ней со стороны МК по UART (и смогу написать свой протокол приема и передачи данных). И ПК будет связываться с моим устройством как по COM порту, и программировать обмен (со стороны ПК) можно будет как стандартный СОМ порт?
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 5 2006, 10:28
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Ваша информация неполная и неточная. TFDU4100 это всего лишь ИК-приемоперадатчик. Для реализации ИК-порта вам нужно будет еще и кодек, который будет кодировать сигнал с UART-а импульсами (3/16 длительности битового периода) и наоборот из серии ИК-импульсов формировать битовую последовательность для UART. А IrDA в полной реализации это кроме физического ИК-интерфейса еще и трехуровневый стек протоколов. Рекомендую, для начала ознакомится со спецификациями IrDA, которые вроде были на местном FTP.
Go to the top of the page
 
+Quote Post
iit
сообщение Jul 5 2006, 10:35
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 72
Регистрация: 8-11-04
Из: Томск
Пользователь №: 1 070



Цитата(rezident @ Jul 5 2006, 13:28) *
Ваша информация неполная и неточная. TFDU4100 это всего лишь ИК-приемоперадатчик. Для реализации ИК-порта вам нужно будет еще и кодек, который будет кодировать сигнал с UART-а импульсами (3/16 длительности битового периода) и наоборот из серии ИК-импульсов формировать битовую последовательность для UART. А IrDA в полной реализации это кроме физического ИК-интерфейса еще и трехуровневый стек протоколов. Рекомендую, для начала ознакомится со спецификациями IrDA, которые вроде были на местном FTP.


А есть в природе мосты IrDA <-> RS232 (UART) типа как USB <-> UART (FT232BM), а то скачать, то я скачал, да разбираться с этим делом, если честно, времени нет.
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 5 2006, 13:58
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(iit @ Jul 5 2006, 16:35) *
[А есть в природе мосты IrDA <-> RS232 (UART) типа как USB <-> UART (FT232BM), а то скачать, то я скачал, да разбираться с этим делом, если честно, времени нет.

Готовые м/с кодеков для IrDA есть, см. на gaw.ru. Есть готовые устройства USB-IrDA и COM-IrDA, см. в компьютерных лавках. Только вот сомневаюсь я, что последние два реализуют весь стек протоколов. По-моему, в них только приемопередатчик и кодек (плюс мост COM-USB или драйверы RS-232), а поддержка протоколов IrDA все-таки в самой операционке имеется.
Go to the top of the page
 
+Quote Post
iit
сообщение Jul 6 2006, 02:09
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 72
Регистрация: 8-11-04
Из: Томск
Пользователь №: 1 070



Цитата(rezident @ Jul 5 2006, 16:58) *
Готовые м/с кодеков для IrDA есть, см. на gaw.ru. Есть готовые устройства USB-IrDA и COM-IrDA, см. в компьютерных лавках. Только вот сомневаюсь я, что последние два реализуют весь стек протоколов. По-моему, в них только приемопередатчик и кодек (плюс мост COM-USB или драйверы RS-232), а поддержка протоколов IrDA все-таки в самой операционке имеется.


Тогда, подскажите пожалуйста, г-н rezident, что мне надо заложить в мое устройство сейчас (нужно срочно сделать схему и развести плату), чтобы в будушем обмен компьютера с моим утсройством выглядел со стороны компьютера как обмен через COM-порт (ИК в ПК имеется). Насколько я понимаю мне нужно поставить в устройство кодер/энкодер (типа MCP2120) и трансивер (к примеру TFDU4100) - это из железа. В программе мне затем придется реализовать протокол IrCOMM или SIR.
Go to the top of the page
 
+Quote Post
Krys
сообщение Jul 6 2006, 04:16
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Эх... Посмотрел я на эти EnDec'и... они стоят в несколько раз дороже самого ИК приёмо-передатчика... Аваговские стоят 4 бака, вишаевские даже 6 баков. Микрочиповские вроде около бака, как и ИК приёмо-передатчик. Из них вишаевские не имеют индустриального температурного диапазона от минус 40.
Вот я и подумал... может проще в ПЛИС завести UART-сигналы, а там уже произвести преобразование длительностей. Кто скажет, насколько это сложно? Какой должен быть алгоритм этого преобразования, как его лучше реализовать в ПЛИС. Какие при этом могут быть подводные камни или неочевидные нетривиальности?
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jul 6 2006, 05:05
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(iit @ Jul 5 2006, 14:14) *
Нужно связать устройство на МК с компъютером (ноутбук или КПК) и желательно по инфракрасному интерфейсу.


А USB? А радиотракты не проще?


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
iit
сообщение Jul 6 2006, 08:12
Сообщение #8


Участник
*

Группа: Свой
Сообщений: 72
Регистрация: 8-11-04
Из: Томск
Пользователь №: 1 070



Цитата(iosifk @ Jul 6 2006, 08:05) *
Цитата(iit @ Jul 5 2006, 14:14) *

Нужно связать устройство на МК с компъютером (ноутбук или КПК) и желательно по инфракрасному интерфейсу.


А USB? А радиотракты не проще?

Нет, по условиям эксплуатации лучше всего ИК
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 6 2006, 09:07
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(iit @ Jul 6 2006, 08:09) *
Тогда, подскажите пожалуйста, г-н rezident, что мне надо заложить в мое устройство сейчас (нужно срочно сделать схему и развести плату), чтобы в будушем обмен компьютера с моим утсройством выглядел со стороны компьютера как обмен через COM-порт (ИК в ПК имеется). Насколько я понимаю мне нужно поставить в устройство кодер/энкодер (типа MCP2120) и трансивер (к примеру TFDU4100) - это из железа. В программе мне затем придется реализовать протокол IrCOMM или SIR.

Если нужна только эмуляция обмена через COM-порт и не нужно поддерживать класс IrDA полностью, то достаточно только м/с ИК-приемопередатчика и SIR-кодека. SIR-кодек при наличии ресурсов можно реализовать прямо в МК. Или в FPGA, например. У нас в некоторых устройства так и сделано. В FPGA реализовано два доп. UARTа, один из которых имеет подключаемый програманно аппаратный SIR-кодек. В другом (носимом) устройстве кодек прямо на МК (MSP430) реализован. У TI есть апликухи по программно-аппаратной реализации такого кодека. Пример, см. опять же на gaw.ru.
Go to the top of the page
 
+Quote Post
iit
сообщение Jul 6 2006, 10:28
Сообщение #10


Участник
*

Группа: Свой
Сообщений: 72
Регистрация: 8-11-04
Из: Томск
Пользователь №: 1 070



Цитата(rezident @ Jul 6 2006, 12:07) *
Если нужна только эмуляция обмена через COM-порт и не нужно поддерживать класс IrDA полностью, то достаточно только м/с ИК-приемопередатчика и SIR-кодека. SIR-кодек при наличии ресурсов можно реализовать прямо в МК. Или в FPGA, например. У нас в некоторых устройства так и сделано. В FPGA реализовано два доп. UARTа, один из которых имеет подключаемый програманно аппаратный SIR-кодек. В другом (носимом) устройстве кодек прямо на МК (MSP430) реализован. У TI есть апликухи по программно-аппаратной реализации такого кодека. Пример, см. опять же на gaw.ru.


Спасибо, немного в голове все улеглось.
Go to the top of the page
 
+Quote Post
Petka
сообщение Jul 6 2006, 17:34
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886



попробуйте сделать так: UART<->TOIM3232 (или TOIM4232)<->TFDU4100.
работает надёжно. проверено.
Go to the top of the page
 
+Quote Post
Krys
сообщение Jul 7 2006, 02:16
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



К стати, в некоторых микроконтроллерах в UART уже имеется опционально подключаемый EnDec как раз для IrDa
Go to the top of the page
 
+Quote Post
Colombo
сообщение Jul 18 2006, 17:00
Сообщение #13


Участник
*

Группа: Свой
Сообщений: 25
Регистрация: 6-11-05
Пользователь №: 10 505



Странно, что в этом треде еще не упоминались Microchip 2150/2155.
Это, вроде, самый простой способ сопряжения микроконтроллера с PC через IrDA.
Где-то я видел готовые модули 2150+IrDA_трансивер.
В сторону контроллера идет просто UART, а PC видит эту штуку как виртуальный COM порт.
Go to the top of the page
 
+Quote Post
Stanislav
сообщение Jul 19 2006, 10:24
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987



А я делал чисто программный энкодер-декодер на атмеге. Работало нормально...


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post
Kopa
сообщение Aug 3 2006, 05:53
Сообщение #15


Знающий
****

Группа: Участник
Сообщений: 598
Регистрация: 22-08-05
Пользователь №: 7 861



Ссылка на комплект документации по IrDa
http://www.waterwood.com.cn/technology/irda.htm

P.S. спасибо китайским братьямsmile.gif
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 18:01
Рейтинг@Mail.ru


Страница сгенерированна за 0.01476 секунд с 7
ELECTRONIX ©2004-2016