Какой порт выбрать? (LPT, COM вымирают, повсюду только USB)

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение hybroid »

Что вы.. Исключительно на больших расстояниях работает ethernet, об этом уже вроде говорилось. LPT вообще в заднице в плане каких-то расстояний. Ком-порт? Да не смешите. Когда мне надо будет 20-50-100 метров - я воспользуюсь изернетом.

Устройства с драйверами и всем необходимым? Для нищебродов-фанатов МК без USB начнём с CDC и прочих готовых либ ногодрыганья, тоже уже не раз говорилось. Для джедаев-противников открытоисходного кода - пишем сами свой неподражаемый велосипед. А ещё есть FT232RL.
Для МК с аппаратным USB.. Апноуты и даташиты от производителя вроде бы ещё в моде.
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение Satyr »

Alexeyslav писал(а):Да и вы забываете про один недостаток USB - он работает исключительно на малых расстояниях а значит во многих разработках неприменимо.

Надо полагать, LPT работает на больших расстояниях ? :)))
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение Alexeyslav »

Что ни говори, но USB хорош только когда нужно передавать большие объемы данных. 1 байтик туда-сюда перекидывать по шине крайне нерационально в плане времени передачи. Не гарантирует шина передачу данных тотчас же. Применение её совместно с устройствами требующими минимального времени ответа - не получится. Минимум что можно получить, это 1мс задержку. А как получить задержку меньше? Для этого нужно управлять USB-хабом, перестраивать его работу что может сказаться на других устройствах к нему подключенным, более того если на пути к устройству находится несколько концентраторов - нужно и с ними что-то делать, а если они не имеют такой возможности?
Досихпор вспоминаю как USB-мышка начинала тормозить при работе принтера подключенного к одному и тому же хабу.

И я ДОСИХПОР не видел ни одну книжку которая бы объяснила как же все-таки работает этот зверь под названием USB. Только сборники каких-то рецептов для копи-паста с сомнительной работоспособностью. Поэтому все еще в поиске и ожидании вменяемых исходников. Даташиты, к сожалению, описывают только самый низкий уровень протокола. Перед тем как приступить к написанию прошивки под USB контроллер, нужно как минимум четко представлять что с этим протоколом делать. А этого к сожалению ни в одной книжке не пишут.

Всякие там библиотеки вроде "черных ящиков" крайне ограничены и нередко выдают какие-то невменяемые ошибки с которыми не знаешь что делать - это может знать только разработчик "черных ящиков".

RS-232 можно без проблем преобразовать в RS-485 и пустить в линию на 2км.
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение YS »

А для МК в зубных щетках не нужно писать программ?


Нужно. Только система там нафиг не нужна. Не, есть, конечно, любители в зубочистку поставить ARM7 на 120MHz с 32MB оперативки, поставить туда uClinux, и на всем этом мигать светодиодом, показывая количество оставшихся зубочисток через WEB-интерфейс. Но это ведь крайности, правда? :wink:
Разница между теорией и практикой на практике гораздо больше, чем в теории.
MsDemonid
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн май 07, 2012 12:40:25

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение MsDemonid »

hybroid писал(а):Без комментариев. Сколько там у нас разницы между человеком и обезьяной?
Так Вы мне ответите или нет: в чем разница программирования под реальный режим процессоров 80x86 и 80x686? Аналогично для защищенного режима процессоров 80x386 и 80x686? Ну давайте, аргументируйте, какая между этими процессорами охрененная разница с точки зрения программиста.

hybroid писал(а):На хрена вам ящик под названием ОС? Будьте джедаем. С железом должно работать лишь ядро, чтобы в первую очередь всякие дятлы не прибили всё на корню. Туеву хучу протоколов и терминов? Про написание софта под USB в букварях скоро писать начнут, а у многих до сих пор сплошные трудности. Какая туча у вас?
Программисты делятся на два типа: программист и обезьяна. Иногда вторых называют "индусами". Так вот, отличие первых от вторых лишь в одном - первые всегда стремятся не только уметь программировать устройство через АПИ/либы и тд, но и стремятся знать, как работают эти самые АПИ и либы, почему "так, а не эдак?". Обезьянам же совершенно похрену все детали, его не волнуют возможные глюки в используемых АПИ/либах. Он написал - получил денежку, и отвалите все от него, он сделал свое дело.
Отсекая программистам доступ от прямого доступа к железу, приручая действовать исключительно через высокоуровневые АПИ - мелкософт по сути стремится превратить всех нас в обезьян, мол детали вам знать не нужно, вам дали АПИ, вот и пользуйтесь.

Satyr писал(а):Добавляем условие - чтоб работало под всеми распространенными ОСами и на портах что встроенных на материнку, что на платах расширения и т.п.
Оптимизма не убавилось ? -)))
Условие в принципе неприемлимо, учитывая отсутствие COM и LPT на современных компах и отсутствие прямого доступа к портам у всех современных ОС. Это уже из разряда "если бы у бабушки был ...." :) Для COM & LPT остается только ДОС.

Satyr писал(а):
MsDemonid писал(а):Или не сталкивались с автомагнитолами, не работающими с флэхами более 2Гб.

С интересом бы послушал, причем тут USB ? :))
Если шина универсальна, устройства тоже как бы стандартизированы, то откуда нестыковки? Выходит не так уж все и стандартно?
MsDemonid
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн май 07, 2012 12:40:25

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение MsDemonid »

Tolmi писал(а):А для МК в зубных щетках не нужно писать программ? Когда устройство чуть посложнее зубной щетки, wifi роутер, к примеру, писать каждый раз с нуля обвязку для всей периферии становится скучно и неинтересно, и начинают туда толкать линуксовое ядро или VxWorks. А могли бы и Windows Mobile или CE какой, но не толкают - уж очень унылая у них архитектура. Только и плюсов, что кросс-платформа в каждом офисе стоит. Хотя для автомобильных навигаторов, к примеру, Windows CE прижилась, тут спору нет. Но в новых опять таки, всё больше андроид...

Но это всё неважно на самом деле, что за ОС используется, просто когда внутри устройства набор стандартных интерфейсов под управлением стандартных драйверов, производителям не нужно каждый раз задумываться о программировании - есть стандартное API USB порта, и остаётся только настроить параметры порта, да посылать/принимать данные. Поэтому и отказываются от уникальных решений в пользу стандартизированных, но избыточных в большинстве случаев. И ОС для встраиваемых устройств однажды тоже станет стандартной, кто победит, пока неизвестно, но что "остаться должен только один", это к гадалке не ходи.

Извините, никто и не пытается доказать торжество анархии :) Для COM тоже есть АПИ в любой системе. Есть и проверенные временем либы. В чем проблемы? Настроил, да посылай/принимай данные. Речь то о другом - о преимуществах/недостатках COM и USB для разработчиков аппаратуры и просто для любителей попаять.

Tolmi писал(а):Присобачим как кто ? Как разработчик РЭА в профильной конторе, или как радиолюбитель ? Если первый не сможет это сделать в течение рабочего дня, гнать его поганой метлой. А интерфейсы разрабатывают именно они для своих целей, а не радиолюбители. Если радиолюбитель находит удовольствие в ковырянии с чем-то новым, а не просто тупо копирует конструкцию из интернета, и не смог расковырять доступ по USB к HID то опять таки, может он чем-то не тем занят ?
Потому и любитель, что делаю только то, что мне интересно. Ну не лежит душа к АПИ USB. Стреляться что ли? До сих пор помню шок, когда портировал свою прогу, всего лишь перехватывавшую обращения к принтеру по COM-порту, на винду :))

Tolmi писал(а):И маленький нюанс - термометр с HID USB будет работать под всеми операционками, нужно будет лишь взять вижуал васик какой, или питон и QT, в зависимости от предпочтений, и нарисовать красивый фронтэнд. А для работы с LPT напрямую нужно будет грузить старый добрый DOS, или таки придется разбираться с API драйвера, и хорошо, если стандартный драйвер позволяет невозбранно дрыгать ногами без всякой системы.
Ну давайте, нарисуйте мне термометр под ДОС. У меня старенький пень в гараже стоит, диагностику авто делаю. Ради такого дела прикручу к нему USB ;)
Встречный вопрос. А написанный на Си, да еще с QT, термометр под СОМ-порт разве не будет работать на всех системах? Да легко. А если нет разницы, зачем платить больше? (c) реклама.

Tolmi писал(а):Так это ведь правильно. Иначе, при наличии прямого доступа к железу, всё бы так и было на уровне windows 95 - чуть что, сразу упала. Нет уж, лучше стандартные отработанные решения.
Которые ненамного сложнее "прямого ногодрыгания", но хотя бы спасают систему от разрушений.
Я тоже того же мнения. Вопрос лишь в деталях ревлизации этих "стандартных решений" :)

Tolmi писал(а):ещё раз, рынок компьютеров != рынок писи. Рынок PC - самый известный, и наверно, самый ёмкий из них по деньгам, но даже в количественном выражении всё остальное перевешивает.
Уважаю Ваше упорство :)
объем мировых продаж за 1978-1988 гг., в млн. штук:
1. Commodore C64 - 7,280
2. IBM PC, PC/XT - 4,577
3. Apple II, IIC, IIE, IIGS - 4,487
4. Sharp 12XX, 13XX, 15XX, 16XX - 4,055
5. Commodore C128 - 4,003
6. Commodore Vic-20 - 2,246
7. Apple Mac., Mac Plus, Mac SE - 2,063
8. Texas Instruments 99/4A - 2,053
9. Sinclar ZX80, 81 - 1,790
10.Tandy TRS-80 Color Computer - 1,754

Десять самых продаваемых компьютеров за 1988 год:
1. IBM модель 50 и 50Z - 460,800
2. IBM модель 30 - 425,700
3. Apple Macintosh SE - 261,660
4. Commodore C128 & 128D - 233,112
5. Apple IIGS - 226,310
6. Zenith Z-200,248 PC-DOS 80286- 170,100
7. Leading Edge Model D - 157,250
8. IBM модель 35 - 156,900
9. Apple Mac Plus - 135,200
10.Tandy 1000 HX Desktop - 134,160

Данные из "техники-молодежи", за 91-й год. Лидерство 8-ми битных, не маков, вполне очевидно. Как и набирающие обороты писюки.

Tolmi писал(а):Я нигде не говорил про то, что она умирает. Я говорил о том, что рынок сдвинулся от одного дорогого и универсального решения на все случаи жизни к множеству специализированных решений с претензией на универсапльность. ( как может быть микроволновка без mp3 плеера ?) В результате сфера применения дома ПК с виндой сужается до простой запускалки игрушек.
А когда у нас было одно дорогое универсальное решение? Не припомню такого. Это как раз сейчас нас подсаживают на Universal Serial Bus и АПИ ;)

Tolmi писал(а):А я как раз именно про мелочёвку и говорю. Потому что кроме файловой системы нужно поддерживать API к устройствам - инферфейсы, устройства хранения информации, дисплеи, и проч. Вместо того, что каждому каждый раз заново программировать дисплей и клавиатуру, гораздо дешевле однажды написать API для стандартной USB клавиатуры и встроить в ядро ОС стандартную библиотеку для работы с графикой. И потом пользоваться всем этим каждый раз, не переписывая всё с нуля. Это всё вместе - и есть ОС в чистом виде.
Верно. Но, каким боком это исключает тот же COM? Или PS/2? Их разве приходится каждый раз заново программировать?

Tolmi писал(а):Следующий шаг - стандартизация ОС между производителями, чтобы уменьшить расходы. Мне что-то видится, что результатом такой стандартизации будет андроид. Желающие поутверждать, что это будет винда, могут привести цифры безумного роста числа устройств с windows phone внутри, я хочу такое послушать.
Этого никогда не будет, денежки не поделят :)) К тому же у мелкософта есть неоспоримое преимущество - опыт, денежки и немало талантливых программистов. Они еще скажут свое слово. Вопрос только когда и где :)

Tolmi писал(а):А я и не спорю. Я говорю о том, что класс домашних ПК как таковой сам по себе будет вымирать. Как выяснилось, домашнему пользователю ПК не нужен ( странное дело, правда ? ) Ему нужна мультимедийно-развлекательная платформа с доступом в интернет.
В самую точку :( Как результат имеет закрытие архитектур и появление усложненных и полузакрытых стандартов.

Tolmi писал(а):Результат процесса борьбы унификации и попыток производителей что-то улучшить, что поделать. Главное, чтобы среди производителей железа не было своих майкрософтов с заморочками мирового гегемона и любовью наплевать на установившиеся стандарты.
Без кулибиных не будет нормального прогреса. Будет лишь "путь Ильича". Разве былая чехарда производителей видеокарт вышла боком? По моему - нет, в тех же Nvidia сейчас имеются наиболее интересные наработки уже не существующих производителей.

Tolmi писал(а):Для пятикопеечных поделок - да. Для чуть более сложных вещей - нет.
Почему нет? Собственно еще вопрос: разве наличие "универсальной" шины повод для забвения простых COM и LPT? Чем они помешали производителям? Я вот этого просто не понимаю.
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение Satyr »

MsDemonid писал(а):Если шина универсальна, устройства тоже как бы стандартизированы, то откуда нестыковки? Выходит не так уж все и стандартно?

С чего ты решил, что с устройством или шиной проблема ?
Приведу пример из истории. середина 90х годов, PC Компьютеры тех времен с шиной IDE под диски. Но включаем диск > 512Mb и получаем х~й а не диск в системе -)))
И что у нас, теперь шина IDE гавно и не стандартизированная ? -)))
Или всетаки она непричем, а BIOS говенный ? :)))
С USB и 2Гб - абсолютно та же ситуация
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение YS »

Отсекая программистам доступ от прямого доступа к железу, приручая действовать исключительно через высокоуровневые АПИ - мелкософт по сути стремится превратить всех нас в обезьян


И не только Microsoft... Самый свежий пример - STMicroelectronics. Уж очень агрессивно они продвигают свою периферийную либу. По ней и информации море, и демок дофига, и на семинарах только про нее рассказывают. Спрашиваешь, а как оно там внутри? В ответ - удивленные глаза и непонимание, зачем оно надо. И, ясное дело, никакого ответа, ибо сам докладчик не в курсе. :))) Этим мне, кстати, политика ST не нравится. Клиенту надо предоставлять выбор, а не запирать в рамках одного решения. Действовать как TI, например. Есть у них и готовые либы, однако они не навязывают их. Как хочешь, так и действуй.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение hybroid »

MsDemonid писал(а):Ну давайте, аргументируйте
Я у вас спрашиваю про принципиально разные архитектуры, а вы мне про x86. Срать я хотел на x86, второй раз уже говорю.
MsDemonid писал(а):Так вот, отличие первых от вторых лишь в одном - первые всегда стремятся не только уметь программировать устройство через АПИ/либы и тд
Вообще-то индусокод как раз отличается велесипедостроением, полной непереносимостью куда-либо, возможно, даже между версиями компилятора :))) Про только знание либ говорить уныло, т.к. как раз у недоучек нету даже представления об оных.
MsDemonid писал(а):Отсекая программистам доступ от прямого доступа к железу, приручая действовать исключительно через высокоуровневые АПИ - мелкософт по сути стремится превратить всех нас в обезьян
Вам уже не один я говорил, почему так надо и почему так хорошо. Но вы же упёртый и уже увидели глобальный заговор :))) Точно мелкософт? Копайте глубже, весь мир против вас! Ни одна современная ОС не позволит искаропки быть самому себе злобным буратиной. Майкрософт тут первый с конца преуспел вообще-то.
MsDemonid писал(а):и появление усложненных и полузакрытых стандартов.
О мрак, USB настолько полузакрыт, что поддерживается даже в OpenBSD, в которой вообще нету ничего хоть как-то закрытого и хоть чуточку противоречащего тру-открытым лицензиям.
MsDemonid писал(а):COM и USB для разработчиков аппаратуры и просто для любителей попаять.
Просто любитель попаять грузится прямым доступом к железу? И, наверное, майкрософт со всеми остальными настолько злобен, что вы уже не в состоянии по COM-порту байтик передать? У вас в посте уже была фраза о работе с ком-портом только через дос:
MsDemonid писал(а):Для COM & LPT остается только ДОС.
Какие-то взаимоисключающие параграфы. Потом уже резко поворачиваем в другое русло:
MsDemonid писал(а):повод для забвения простых COM и LPT? Чем они помешали производителям? Я вот этого просто не понимаю.

А на этот вопрос как раз есть простой ответ: "Хватит этого долбанного зоопарка из LPT / COM / PS пополам". Рядовой любитель попаять может купить FT232RL, а не MAX232 и как вы там писали:
MsDemonid писал(а):Настроил, да посылай/принимай данные.

А когда ему понадобится посылать/принимать данные на большей скорости - поблагодарить за то, что боги создали страшный USB.
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение Alexeyslav »

FT232 не полноценная замена аппаратному порту, с ней задержки огромные будут обусловленные работой USB. Поэтому она не подходит для многих применений, только там где нужна однонаправленная передача относительно больших объемов данных. А так чтобы делать что-то интерактивное типа один байт послал и два в ответ - здесь все что основано на USB - не пойдет.
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение Satyr »

YS писал(а):Самый свежий пример - STMicroelectronics. Уж очень агрессивно они продвигают свою периферийную либу. По ней и информации море, и демок дофига, и на семинарах только про нее рассказывают. Спрашиваешь, а как оно там внутри? В ответ - удивленные глаза и непонимание, зачем оно надо. И, ясное дело, никакого ответа, ибо сам докладчик не в курсе. :))) Этим мне, кстати, политика ST не нравится. Клиенту надо предоставлять выбор, а не запирать в рамках одного решения.

Очень интересно. Какого выбора тебя ST лишил ?
Хочешь пользуй библиотек, хочешь - сам с регистрами возись - даташит СТ не прячет. Хочешь изучать библиотеку ? Пожалуйста - библиотека в исходниках.
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение YS »

Какого выбора тебя ST лишил ?
Хочешь пользуй библиотек, хочешь - сам с регистрами возись - даташит СТ не прячет.


Не прячет? При их нынешней политике надо добавить "пока".

Даташит-то не прячет (пока), только примеров работы с железом напрямую я тоже как-то особо не наблюдаю. Все под библиотеку. 99% слов про то, какая она красивая, удобная, какие в ней есть свистелки и перделки, и т.д., и т.п. Где обширные аппноуты по работе с тем же USB напрямую? Библиотека есть, в аппноуте только рецепт применения - ни слова о внутренней кухне. Да и потом, она опять же завязана на StdPeriphLib. А если мне нужен USB, но не нужна SPL? Руками переписывать? А где мануал по логике ее работы? Где официальные туториалы по, например, настройке тактирования через регистры? Нету ничего. Только примеры SPL, которую и так за полдня освоить можно. Докладчики на семинарах тоже молчат как партизаны, когда их спрашиваешь о чем-то, выходящем за рамки SPL.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение Satyr »

Опять нечто невнятное, достойное слесаря с бригадиром.

Даташит есть, где описан каждый регистр. Библиотека в исходниках и примеры к ней - вот тебе полностью исчерпывающие примеры работы. Смотри, изучай, вырезай, делай по подобию - не вижу абсолютно никаких препятствий со стороны СТ.
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение hybroid »

Давайте обобщим границы применений. А то уже про линки на 2 км тут рассуждали. Каждому радиолюбителю приходится этим заниматься, кто ж тут спорит.. Интерактив, ё-моё. Консоли сетевых железок и пары серваков через усб-ком шнурок, куда уже интерактивнее. В промышленности RS232 вымрет не скоро, об этом сказано на первых страницах. Но это ни капельки не является причиной для его популярности в широких кругах. Мне он, например, на хрен сдался дома. И кроме наколенных устройств даже нечего засунуть в него, хотя даже есть два порта дома на шлюзе. Прогуляйтесь в сторону магазина комповой периферии, покажите мне что-то полезное и незаменимое в COM-порт и на основании этого расскажите, почему он должен быть у каждого.
YS писал(а):Библиотека есть, в аппноуте только рецепт применения - ни слова о внутренней кухне.
А посмотреть в библиотеку, если так хочется? Если большинство пользуется либой, лучше я потрачу время на разработку либы, чем буду стараться ради "пары" джедаев, которые за свой велосипед. Закроют библиотеку - тогда и надо паниковать. Даже более - просто не пользоваться. В сфере компового железа есть более печальные случаи - никакой документации, никаких открытых кодов, ни хера не работающие блобы производителя и при этом куча довольных имбицилов и фанатов. Так что ST тут обсуждать даже смешно.
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение YS »

не вижу абсолютно никаких препятствий со стороны СТ.


Препятствие одно - официальный пиар библиотеки и глухое молчание про то, что внутри, с наивной реакцией типа "А зачем Вам? Вот же библиотека!". Для сравнения поглядите на аппноуты Atmel, Microchip (у которого, сюрприз, тоже есть свои обширные либы периферии), TI. Все они уделяют большое внимание принципам работы. У Atmel почти каждый аппноут представляет собой подробнейшее описание внутренней кухни, за которым следует код.

STm воспитывает потребительский подход - купил, собрал так, как на картинке нарисовано, радуешься. И никаких мыслей о том, что внутри.

А посмотреть в библиотеку, если так хочется?


Ой ладно? Проще тогда уже с нуля курить даташит, чем разбираться в слабо откомментированных творениях сумрачных гениев из ST.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение Satyr »

YS писал(а):У Atmel почти каждый аппноут представляет собой подробнейшее описание внутренней кухни, за которым следует код.

Серьезно чтоли ? -)))
Посмотри AT91xxxxx, AT32xxxxxx семейства.

У атмела накопилось за 15 лет всяких наработок под AVR. Собсно, там такие тесные условия, что ни о каких библиотеках и говорить не приходилось. Только кратенькие примеры на каждый случай.

Что лучше - универсальная библиотека или мильон крошечных, заточенных под единственную задачу примерчиков, вопрос очень философский.

В любом случае - это лишь вопрос удобства. По возможностям везде условия одинаковые.
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение Alexeyslav »

Эээ... нет, СОМ-порт в радиолюбительской практике исчезнет еще не скоро. И это благодаря его простоте работы и программирования. Сколько надо ресурсов для работы с USB на стороне контроллера? Сколько лишних движений... оправданных только на большой скорости передачи. Да и то, с большими порциями данных.

А стоимость гальванической развязки?

Нет, пожалуй порт еще не скоро умрет.
Idea_FIX
Встал на лапы
Сообщения: 111
Зарегистрирован: Пт сен 30, 2011 05:55:31
Откуда: Питер

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение Idea_FIX »

Тут писали, что для "ногодрыганья" COM&LPT нужен DOS. Кому как, но я когда начинал изучать эту тему, "дрыгал ногами" LPT под WinXp SP2. Девайс - vri-контроллер для управления ЧПУ (3 шаговика). Программа нужна только на компе, контроллер собирался на TTL-логике (К555ТМ8х3шт, на драйверы - КТ972Б). Может, кто-то и может прикрутить без заморочек это дело к USB, но я пока не дошел до этого. Потом собрал Step/dir на AtMega16 - так же работает от LPT, шился под WinXp SP2 c PonyProg. С нуля освоение материала заняло около недели по вечерам. Еще около недели ушло на реализацию (подбор комплектующих, приобретение, сборка, проверка и т.д.). Искал способы реализации такого устройства ч/з USB, но там появились некоторые осложнения. Например, Mach3 (прога, которая скармливает G-код контроллеру) не хочет нормально работать с USB даже с плагином. Я уже писал, что никуда LPT и COM с современных матплат не делись, потому не стал заморачиваться и сделал так, как понял. Контроллер станка работает по LPT с системой на PDC 2,8GGz (Sandy, lga1155) - такая машинка позволяет работать с ArtCam прямо со станка, производительности достаточно. Не сомневаюсь, что подобное моему устройство можно сделать и на USB. Только вот зачем, если оно отлично работает и выполняет требуемые от него задачи?...

Что касается API. На них давно уже подсаживают, и в этом есть плюсы. Например, DirectX - это ведь набор API, не так ли? Игроделам проще пользоваться уже готовыми библиотеками, чем писать что-то свое, тем более, что нужное уже имеется. И это позволяет сократить время разработки и сосредоточится на других не менее важных моментах. Можно считать это примером помощи разрабами "мелкософту" в монополизировании рынка (порт на другие ОСи усложняется). "Винду", думаю, хоронить рано, но тенденции мне не нравятся. Видел я эту Win8. Превратить компьютер в большой такой телефон, имхо, дурацкая затея. Правда, игрушки там бегают куда шустрее, чем даже на Win7. До релиза время еще есть, посмотим, что получится в итоге. Уже замечали, что операционки от Майкрософта приживаются через одну. Сейчас прижилась "семерка"... )))

Был у меня девайс с WP7.5 Mango (Mozart от HTC). Скажу так: ось-то и вправду шустрая, только... совершенно голая. Ни тебе нормальной работы с файловой системой, ни горячей замены карточек... Приложения извольте ставить через маркет а-ля i-Tunes, музло-видео-фото перегонять только через Zune, никакой кастомизации интерфейса (перетаскивание хабов и смена цветов - ничто в сравнении с тем же Sense от HTC)... Удовольствие ниже среднего. Продал я эту железяку и приобрел себе HTC HD2 Leo. Когда поменял родной загрузчик на разработанный Cotulla, появилась возможность сравнить родную WM 6.5 с Android (от вторых до четвертых версий) и WP7 (уникальный "комуняка" - куча осей шьется). Сравнил производительность - WP7 совершенно недосягаема ни для ведроида (ставил на карту и шил в NAND - и так, и так), ни для WM. По функционалу "анроид" и "мобайл" примерно равны, "семерка" в полной, как говорится, попе. По стабильности (юзал по неделе для верности эксперимента): WP7 - ни одного глюка, WM6.5 (оф.прош.) - разок висанула наглухо, иногда глючили некоторые прожки и родной плеер, Android - ни разу не завис, но подтормаживали некоторые прожки и игрушки, подвисал браузер. Короче, оставил из прикола Android на карточке (благо карта на 32 ГБ), но думаю потом поставить в пару WP7 и WM6.5. Я это к тому, что рано пока говорить о победе Android'a над виндой в этом сегменте, но тенденции для мелкософта не радужные. Что касается серверов, могу заметить, что в небольших компаниях все же чаще попадаются "окна" (подключаю интернет разным юр.лицам), тут пока особых альтернатив-то и нету (иногда из препочтений, а иногда фирме серьезно-грамотный админ просто не по карману или его нет как такового).

И еще. Не смотря на всякие стандарты и библиотеки, есть программеры, которые умудряются написать такие чудеса, что вся система начинает глючить, так что я не считаю, что ограничение низкоуровневого доступа к "железу" направлено на повышение стабильности работы готовых решений. Я бы предположил, что это связано с повышением сложности внутренней архитектуры контроллеров и устройств.

Я думаю, что в конечном счете выбор интерфейса зависит от предпочтений конкретного человека. Тут уже говорилось, что старые интерфейсы еще живут и помирать пока не собираются, перебираясь в более узкоспециализированные сферы. При нынешних темпах не исключено, что и наши PC скоро станут уделом энтузиастов и радиолюбителей.
Через тернии - к звездам
MsDemonid
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн май 07, 2012 12:40:25

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение MsDemonid »

Satyr писал(а):С чего ты решил, что с устройством или шиной проблема ?
Приведу пример из истории. середина 90х годов, PC Компьютеры тех времен с шиной IDE под диски. Но включаем диск > 512Mb и получаем х~й а не диск в системе -)))
И что у нас, теперь шина IDE гавно и не стандартизированная ? -)))
Или всетаки она непричем, а BIOS говенный ? :)))
С USB и 2Гб - абсолютно та же ситуация
Нет, ситуация не та же. Если в старый биос вставить винт большого объема, то винт будет доступен, только объем урежется. На этот случай существовали програмные решения, вполне работоспособные.

hybroid писал(а):Про только знание либ говорить уныло, т.к. как раз у недоучек нету даже представления об оных.
От скромности Вы не помрете :)) Я вот не знаю ни одного программиста, знающего все либы. Тем не менее у меня язык не повернется назвать профессиональных программистов недоучками. Видимо Вы Гений, раз освоили все либы. Или не все? Тогда и Вы недоучка и говорить с Вами уныло :))

hybroid писал(а):
MsDemonid писал(а):Отсекая программистам доступ от прямого доступа к железу, приручая действовать исключительно через высокоуровневые АПИ - мелкософт по сути стремится превратить всех нас в обезьян
Вам уже не один я говорил, почему так надо и почему так хорошо. Но вы же упёртый и уже увидели глобальный заговор :))) Точно мелкософт? Копайте глубже, весь мир против вас! Ни одна современная ОС не позволит искаропки быть самому себе злобным буратиной. Майкрософт тут первый с конца преуспел вообще-то.
Это бизнес, а не заговор. Из современных же ОС, на память приходят различные сборки линукса, позволяющие настроить систему именно под себя. Так что на счет "ни одна" Вы безусловно поторопились ;)

hybroid писал(а):О мрак, USB настолько полузакрыт, что поддерживается даже в OpenBSD, в которой вообще нету ничего хоть как-то закрытого и хоть чуточку противоречащего тру-открытым лицензиям.
USB и в досе сейчас поддерживается. Только какой ценой эта поддержка обошлась? Много чего устанавливалось только путем экспериментов, поскольку в доках либо вообще отсутствовало детальное описание, либо упоминалось вскользь. Потому и сказал, что стандарт полузакрытый.
Кстати, а где либы по низкоуровневой работе с USB? Помнится на любой открытый стандарт подобные либы лежали в открытом доступе. По крайней мере на sound blaster, на vesa vbe, на протоколы обмена последовательного интерфейса были. Сам их использовал.

hybroid писал(а):
MsDemonid писал(а):COM и USB для разработчиков аппаратуры и просто для любителей попаять.
Просто любитель попаять грузится прямым доступом к железу? И, наверное, майкрософт со всеми остальными настолько злобен, что вы уже не в состоянии по COM-порту байтик передать? У вас в посте уже была фраза о работе с ком-портом только через дос:
MsDemonid писал(а):Для COM & LPT остается только ДОС.
Какие-то взаимоисключающие параграфы.
Конечно взаимоисключающие, когда фразы из контекста выдергивают :))
Я кажется не раз упоминал, что по СОМ-порту в винде есть более-менее нормальное АПИ. Но в последней фразе речь была о прямом доступе к портам. Его в винде нет, только через костыли. Но костыли и есть костыли - они не дают доступа к прерываниям, без которых с портами возможна только самая примитивная работа. Вот и получается, что полноценная работа напрямую возможна только в ДОСе.

hybroid писал(а):
MsDemonid писал(а):повод для забвения простых COM и LPT? Чем они помешали производителям? Я вот этого просто не понимаю.

А на этот вопрос как раз есть простой ответ: "Хватит этого долбанного зоопарка из LPT / COM / PS пополам". Рядовой любитель попаять может купить FT232RL, а не MAX232 и как вы там писали:
MsDemonid писал(а):Настроил, да посылай/принимай данные.

А когда ему понадобится посылать/принимать данные на большей скорости - поблагодарить за то, что боги создали страшный USB.
Собственно вернулись от чего и начался разговор - плати, плати и еще раз переплачивай :)) Нахрена мне траты на лишние микрухи и гемор с написанием драйверов, если с COM-портом без этого можно было обойтись? Даже в винде.
И часто ли требуется большая скорость? Мне нет. Зато я точно знаю, что возможность точной синхронизации с устройствами по времени зачастую упрощает схему девайса/сопряжения. Через СОМ и LPT легко и непринужденно присоединяются I2C, SPI и microLAN девайсы. А ведь таких девайсов немало. Это и ЦАП/АЦП, это инфракрасные передатчики, это DTMF-кодеки, это и синтезаторы речи, это модули памяти, карты MMC и SD, это просто различные датчики, начиная от термометров и заканчивая датчиками Холла, и много другое. Это не считая девайсов с паралельным подключением, таких как LCD. Разумеется все это можно подключить и через USB. Штаны, кстати, тоже можно через голову надевать.
И Вы говорите, нахрена этот зоопарк?

hybroid писал(а):Давайте обобщим границы применений. А то уже про линки на 2 км тут рассуждали. Каждому радиолюбителю приходится этим заниматься, кто ж тут спорит.. Интерактив, ё-моё. Консоли сетевых железок и пары серваков через усб-ком шнурок, куда уже интерактивнее. В промышленности RS232 вымрет не скоро, об этом сказано на первых страницах. Но это ни капельки не является причиной для его популярности в широких кругах. Мне он, например, на хрен сдался дома. И кроме наколенных устройств даже нечего засунуть в него, хотя даже есть два порта дома на шлюзе. Прогуляйтесь в сторону магазина комповой периферии, покажите мне что-то полезное и незаменимое в COM-порт и на основании этого расскажите, почему он должен быть у каждого.

Это Вам он не сдался, но не стоит за всех говорить. Поход по магазинам - это даже не смешно. Какие нахрен магазины, если СОМ-порты уже с материнок начали исчезать? Хотя еще не так давно под СОМ-порты были даже АМ- и FM-приемопередатчики. Были даже модемы, работающие по бытовым электросетям.
Только Вы упускаете один момент. Писюки популярность завоевали исключительно благодаря своей универсальности, базировавшейся на открытой архитектуре. По цене и базовым возможностям они не могли конкурировать с дешевыми 8-ми битными машинами. Тем не менее их брали. Брали за их уникальную возможность к легкому расширению функционала. Сколько под них на коленке было создано девайсов - это счету не поддается. А сейчас? Превратили универсала в исключительно домашний центр развлечений, потихоньку урезая возможности к самостоятельному наращиванию его функционала. Это нормально?
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Какой порт выбрать? (LPT, COM вымирают, повсюду только U

Сообщение ploop »

Это бизнес, а не заговор. Из современных же ОС, на память приходят различные сборки линукса, позволяющие настроить систему именно под себя. Так что на счет "ни одна" Вы безусловно поторопились

Именно настроить. Можете переписать драйвер, если хочется. А работать всё равно с API придётся, либо перестроить ядро системы, грубо говоря переписать его (если до пенсии получится отладить). Но это уже будет не линукс, а самописный костыль.
Ответить

Вернуться в «Интеграция с ПК»