Перейти к содержанию
    

Как работать с FTDI um245r как с COM-портом?

Как работать с FTDI um245r как с COM-портом? Используя VCP драйвер.

 

Понял, что данное устройство эмулирует работу COM порта.

Вот только не понятно, в каком виде посылать информацию, что бы определенные уровни на ногах схемы вывесились.

Т.е. написал прогу, которая открывает/закрывает com порт, но вот как записать что-либо не пойму.

Все что читал по поводу протокола rs-232, про передачу информации через com порты, то там рассматривается только передача данных между компами (и все так славно и гладко у них происходит), а вот что касается этого устройства не нахожу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Понял, что данное устройство эмулирует работу COM порта.

Вот только не понятно, в каком виде посылать информацию, что бы определенные уровни на ногах схемы вывесились.

Это 'устройство' только программно выглядит как COM порт, на аппаратном уровне оно с COM портом ничего общего не имеет

 

Т.е. написал прогу, которая открывает/закрывает com порт, но вот как записать что-либо не пойму.
WriteFile как и для всех

Все что читал по поводу протокола rs-232, про передачу информации через com порты,
Забудьте.

 

Если вам нужен полный контроль над 245R - возьмите D2XX драйвер

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

возьмите D2XX драйвер

Да с этим вообще все как-то тухло.

программно выглядит как COM порт

А мне программно и надо.

WriteFile как и для всех

А что именно WriteFile

Вот, например, пишу в С++

 

AnsiString cmd;

cmd=...; //??????

WriteFile(hComPort,cmd.c_str(),4,&CountBytes,NULL);

 

А что именно мне записать (т.е. какое именно присвоить значение переменной cmd), что бы например выставилось значение 10000001 на ножках схемы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот, например, пишу в С++

 

AnsiString cmd;

cmd=...; //??????

WriteFile(hComPort,cmd.c_str(),4,&CountBytes,NULL);

 

А что именно мне записать (т.е. какое именно присвоить значение переменной cmd), что бы например выставилось значение 10000001 на ножках схемы?

Ничего. По умолчанию 245 работает как FIFO, т.е. все, что вы в него будете записывать будет выдано байт за байтом на выходную шину (при этом еще надо обеспечить необходимые управляющие сигналы, см DS).

 

Вам нужен режим bit bang, это можно только через D2XX включить (IMHO)

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По умолчанию 245 работает как FIFO, т.е. все, что вы в него будете записывать будет выдано байт за байтом на выходную шину

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

Т.е. если я запишу число 5, то он выдаст на шину 00000101, а если запишу фразу: "Привет мир", то он каждый символ разложит в его двоичный код согласно ASCII и каждый байт последовательно передаст? Так получается или нет?

 

И если не сложно, то про управляющие сигналы можно поподробнее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да с этим вообще все как-то тухло.

Тогда зайтесь другим делом, ну зачем Вам электроника сдалась, если десяток страниц описания работы с D2XX драйвером/DLL "тухло".

Или читаем http://www.ftdichip.com/Support/Documents/...(FT_000071).pdf или не морочим голову ни себе ни людям.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Уже читали, и не я один. Так что не надо мне тут из себя особо умного гнать.

Что там написано дельного? Ну что? Сами то читали? Или нашли что-то и рады тыкать.

Что 245r может по двум протоколам управляться (но одновременно лишь по одному), что можно драйвера D2XX с офсайта скачать. Ну скачал я эту папочку, и что дальше. Вот конкретно, раз такой умный давай по порядку. Что с ней даль делать. Для чего там каждый файл нужен? Что за dpinst-x86? В вашем мануале, там нифига про это нет. Файлов ftd2xx.lib там аж по 2 штуки для каждой разрядности ОС. Какой из них подключать? Любой? Подключил, а компилятор на оба ругается. Вот сиди и думай, что такое? А вот что: http://www.ftdichip.com/Support/Knowledgebase/index.html

Вот надо весь сайт облазить, что бы понять, что разработчики не удасужились нормальную версию драйверов сделать для c++ builder. Ладно, поехали дальше, ищем эту утилиту IMPLIB. С горе пополам находим её, запускаем и что видим? А нифига не видим. Открывается консоль и закрывается. И опять я должен лезть, искать описание как теперь этой штукой пользоваться. Если для вас этот геморрой норма, то для меня это издевательство над потребителем.

Что дальше, садиться изучать visual studio, ради одной микросхемки. А завтра они и под эту среду не напишут дров, и что тогда.

И что в итоге там есть: введение на пол странички, в котором информации ноль и описание команд. И все.

Вот эта фраза вообще напрочь убила:

FTDI does not provide documentation on how to communicate with the VCP driver from an application

если лень было писать на эту функцию документацию, то зачем её предусматривать? А мне может только она и нужна. Вот опять с офсайта:

Application software can access the USB device in the same way as it would access a standard COM port.

Вот только опять не учли, что все что написано по стандартным com портам, касается передачи данных между компами. А у меня на другом конце провода не комп, и я спрашиваю, что мне записывать туда, что бы что-то определенное получить?

Такое ощущение, что специально информацию утаивают. Прям какие-то сверх коммерческие секреты. Что у программистов с их кодами, что тут у электронщиков со схемками.

Что преподы в универе были, каждое слово тисками из них вытаскивали, что тут так же.

Если знаешь как общаться с этой штукой, так возьми и объясни людям.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что там написано дельного?

Абсолютно все.

Ну что?

Ну и все.

Сами то читали?

Да, конечно. И читал и работал.

раз такой умный давай по порядку....

Требовать будете у своей мамки сиську. У меня не выйдет.

Если хотите - учитесь. Начните с того, что такое DLL. А там, глядишь и поймте, что никаких "библиотек" ни для борланда-урода, ни для любого компиятора писать производителю чипа не надо, ибо DLL это и есть библиотека. Так-что нужно все-же ЗНАТЬ свой инструмент и просто импортировать из нее библиотеку для ЛЮБОГО линкера. Так-что о незнании, что такое за implib и как с ней работать, это Вы ТОЛЬКО СЕБЕ притензии можете передавлять, на худой конец борланду, но никак ни FTDI. Можете только сказать FTDI БОЛЬШОЕ спасибо, что для недоучек хоть как-то указала с какого конца "программистам" матчасть компиляторов изучать начинать.

Такое ощущение, что специально информацию утаивают.

Все абсолютно подробно разжевано в помянутом документе. Все вызовы функций расписаны аж с кусками исходников. Даже не представляю что еще надо было сделать FTDI? Запихнуть разжеваное "программисту" прямо в анус, дабы его голова вообще процессе никак не участвовала?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

но никак ни FTDI.

Именно им. Им заплатили деньги за это уродство, так что пусть пишут как им пользоваться нормальным языком.

 

Ну и все

Что все? Где конкретика?

 

Все вызовы функций расписаны аж с кусками исходников.

Прежде чем какие-то функции расписывать, надо сначала подключиться к устройство. Где про это разжевано?

Есть такое понятие -методика. В FTDI о нем явно не слышали. И вам наверное оно не известно.

Мне приходилось видеть нормальные программерские мануалы, в которых расписана методика работы, в частности методика подключения. И занимает она не 1 абзац, а страницы 2-3. Вот это называется разжевано.

Так что если можете помочь с подключением помогите. Не хотите, не пишите ничего. Но самоутверждаться на основе того, что вы знаете что-то а кто-то не знает не надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что за DS. В даташите нет ничего такого?

Как все запущенно :crying:

 

DS - http://www.ftdichip.com/Support/Documents/...s/DS_FT245R.pdf страница 14. Подробная диаграмма того, что будет происходить на ногах микросхемы на каждый записанный в нее байт

 

Вам же нужен bit bang mode ( http://www.ftdichip.com/Support/Documents/...-01_BitBang.pdf )

 

Прежде чем какие-то функции расписывать, надо сначала подключиться к устройство. Где про это разжевано?

http://www.ftdichip.com/Support/Documents/...T_000071%29.pdf страница 19

 

А вот что: http://www.ftdichip.com/Support/Knowledgebase/index.html

Вот надо весь сайт облазить, что бы понять, что разработчики не удасужились нормальную версию драйверов сделать для c++ builder. Ладно, поехали дальше, ищем эту утилиту IMPLIB. С горе пополам находим её, запускаем и что видим? А нифига не видим. Открывается консоль и закрывается. И опять я должен лезть, искать описание как теперь этой штукой пользоваться.

Это самые что ни на есть азы программирования в мире Windows в общем и использования Builder и консольных утилит в частности. Если для вас это такой геморрой, то похоже что уровень вашей подготовки не позволит использовать эту микросхему, увы :smile3046: Подтяните сначала матчасть :biggrin:

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...