-ћузыка

CH340G драйвер

ƒневник

¬оскресенье, 10 ƒекабр€ 2017 г. 22:19 + в цитатник

≈сть определЄнные сложности на Windows 10 с установкой драйвера USB-serial чипа CH340G, который так люб€т в среде Arduino. CH340G - волшебный чип по своей простоте, мост USB-UART, умеет в существующей реализации скорости UART до 250 kbps, добавл€ет в систему COM-порт, вис€щий на USB.



¬ свежеустановленной Windows 7 SP1 тоже имеетс€ проблема с подключением устройств CH340, и св€зана она как с человеческим фактором, так и с паранойей M$ по поводу цифровой подписи драйверов.


DEVMGMT CH340G (412x448, 21Kb)

≈сли перва€ решаетс€ выбором однозначно более свежего драйвера CH340 (CH341), который во вложении, его верси€ 11/04/2011, 3.3.2011.11 кодируетс€ VID/PID USB\VID_1A86&PID_7523&REV_0254. ¬ерси€ от 2007 года не работает, точнее, работает плохо, делает вид, что работает. ”станавливаем через DRVSETUP64.EXE, этакой pre-install, и вот начинаютс€ пл€ски с подписью драйверов.


DRVSETUP (420x269, 6Kb)

ѕропихнуть драйвер в систему поможет утилита DSEO13b (Driver Signature Enforcement Overrider), в аттаче есть. ”тиль позвол€ет подписать файл драйвера CH341S64.SYS, что даЄт обойтись без включени€ тестового режима. Ќу и напоследок перестраховываемс€ отключением проверки подписи драйверов в Windows.


 ак пон€ть, что не устройство плохое, а драйвер, и прошивка вполне нормальна€ (в случае с Atmega)? — 2007 драйвером у мен€ плохо шла отработка обратной св€зи от устройства, т.е. даже поиграв с буферизацией UART в винде (»спользовать буферы FIFO UART 16550), € всЄ равно получал ответ устройства раньше, чем управл€юща€ программа начинала его обрабатывать за счЄт лагов драйвера, что приводило к обрыву св€зи по тайм-ауту.

–убрики:  этот удивительный мир вокруг нас

ћетки:  

Ќестандартные скорости UART MSCOMM32

ƒневник

¬оскресенье, 18 »юн€ 2017 г. 17:06 + в цитатник

”далось св€затьс€ с AVR по UART через MSCOMM32.OCX на скорости 250000 бод. „астота кварца избыточна€ - 16 ћ√ц. ƒействительно и дл€ Arduino.  ак? ѕодсказка на VBForums, используем Win32 API SetCommState и GetCommState из Kernel32. Ќемного костылей в выборе менюшки скоростей, т.е. дл€ галочки открываем порт на допустимой стандартной скорости 115200, а затем уже задаЄм любую, вплоть до 2ћЅит.


AVR software uart 250000 baud (452x115, 5Kb)
MSComm 250000baud (206x172, 13Kb)

—разу оговорюсь, что UART со стороны AVR программный, поэтому скорость така€ низка€. —хемотехнически у мен€ программный RX/TX висит на свободных ногах ATMega328P, потому как аппаратный зан€т шиной данных с NAND флешкой.



»так, управл€юща€ программа на VB6 использует компонент MSComm и разрешает из коробки подключатьс€ только на следующих скорост€х (бит/с, бод): 110, 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200, 128000, 256000. ”спехом увенчалась попытка подключени€ на 128000, а 256000 уже не приводила к желанному результату увидеть ответ устройства по UART. ¬озможно, дело в том, что если дл€ аппаратного приЄмопередатчика UART можно запросто подобрать скорость UART в зависимоти от частоты задающего генератора, то дл€ программного, который зависит от кучи прерываний и лагов обработчика, высокие частоты упираютс€ уже не в последнюю милю кабел€ и разводку с экранировкой, а в специфику работы программного UART. Ѕоюсь предположить, но аппаратный UART на AVR в теории может давать бодрейт до 2 ћЅит/с, т.е. 2000000. –азумеетс€, со стороны компьютера € ловлю его не через родной COM-порт материнки, а через преобразователь CH340G, который стоит в каждой ардуине, и его предел аппаратных возможностей с подобающей обв€зкой по даташиту заканчиваетс€ как раз таки на 2 Mbps. Ёто ограничение уже упираетс€ в физическую реализацию последней мили - длину проводов USB, разводку на плате, конденсаторы и качество кабел€.



„то € получил на скорост€х 250  Ѕит/с? „тение блока с флешки (135168 байт) за 6,16 секунд. «апись, правда, до сих пор ограничиваетс€ скоростью в 135168 байт за 35,9 сек, что обусловлено моей осторожностью и программными задержками при записи в NAND flash. ќднако мой любимый дисплейчик ❤️️ LCD 160x128 16 битного цвета заполн€етс€ из флешки полностью картинкой за 215 мс, то есть можно гл€деть кино с FPS ~5 кадров/сек., что € считаю пределом дл€ 16 ћ√ц, софтварном SPI через дрыганье ногами и попутном чтении с флешки, то смею предположить, что видеобуфер (ќ«” диспле€) составл€ет 40 960 байт, и по UART напр€мую при скорости 250  Ѕит заполнитс€ за 2 секунды. ¬сЄ равно медленно, чтение флешки размером в 1 √Ѕ (NAND flash K9K8G08U0M-PIB0) займЄт 14 часов.


ќднако команда CLS, оформленна€ AVR-ASM просто дЄрганьем CLK диспле€ при посто€нной единице на шине DATA очищает 160х128 за 0,105 сек, то есть за 105 мс., что как бы намекает на непредельность скорости. “о есть использу€ полупрограммный-полуаппаратный SPI из-за того, что 9-й бит приходитс€ дЄргать вручную, остальные 8 будет слать аппаратный SPI, при быстром ќ«” контроллера € бы смог добитьс€ скорости вывода одного экрана (не пустого) за 105 мс при скорости UART в 1,5...2 ћЅит. Ѕез промежуточной флешки, а картинку бы формировал на стороне компьютера. “огда и кино в 10 FPS можно было бы крутить.


AVR Parallel output for Nokia 1616 LCD (700x451, 108Kb)

ј самым забавным решением было бы применение внешнего аппаратного SPI, который из параллельной шины делает последовательную, и клок дЄргать вручную. ќднако это то же самое, что и полупрограммный SPI, потому как совсем блокируетс€ возможность передавать данные в обратную сторону от диспле€ (читать ќ«” диспле€, SPFD54124B это позвол€ет). Ќо это уже больна€ фантази€.

–убрики:  этот удивительный мир вокруг нас

ћетки:  

ѕрошлые

ƒневник

—уббота, 06 ћа€ 2017 г. 03:42 + в цитатник

выхи посв€тил очень насыщенной социалочке, так что эти дни хочетс€ посв€тить производству и задротству с па€льником, программатором и шпинделем. ѕоскольку € к электронным игрушкам подхожу довольно олдскульно - с программатором типа STK200 (п€ть проводков из LPT) и все Arduino-подобные упрощалки мне чужды, потому мо€ ардуина отладочна€ плата дл€ AVR, NAND-флешки на 1√Ѕ и диспле€ от Nokia 1616 LCD выгл€дит следующим образом:


PCB_LCD_Nokia_1616_NAND_FLASH (654x700, 233Kb)

”же в заделе, чтобы можно было внедрить в 5.25" отсек компьютера и выводить на дисплей вс€ческую моддерскую ересь модными BITMAP-шрифтами (что там моддеры вывод€т? “емпературы, загрузку ÷ѕ, ќ«”, ну то, что ни разу в жизни знать не полезно). “акже есть две кнопки, у которых схема подключени€ настолько несовершенна, что лучше про них забыть. ќни ввиду нехватки свободных пинов ATMega328 подключены параллельно к лини€м #WE и ALE флешки. ƒл€ индексации, на плате есть:


Х ATMega328 в DIP-исполнении
Х MCP42010 - переменный резистор/потенциометр с SPI-управлением дл€ регулировки €ркости
Х CH340G - мост USB-UART, который € искренне полюбил, однажды доставшись мне от одного конченного наркомана, € заказал ещЄ 25 штук и сую куда ни попади теперь.
Х SAMSUNG K9K8G08U0B PIB0 - NAND-флеш пам€ть на 1√Ѕ, изъ€та€ то ли из плеера, то ли откуда ещЄ.
Х  142≈Ќ3Ѕ - винрарный ☭ стабилизатор в золоте, на 3,3¬ дл€ флешки.

“ака€ вот геттообразна€ ардуино отладочна€ плата. ќна умеет общатьс€ по программному SPI с дисплеем от Nokia 1616 (рекомендую всем па€лам, в Art-GSM стоит копейки, л€рвочка привезла 10 штук и € их распихиваю по устройствам), код вывода оптимизирован на ассемблер так, что инверси€ бита порта CLK происходит в 1 такт, а значит заливка белым или чЄрным экрана это не посылка двух байт на пиксел, а лишь ~16...20 тактов (+циклы с 8-битными счЄтчиками), что означает LCD CLS менее, чем за 400 мс при кварце 16 ћ√ц. ѕлата также умеет выводить картинку пр€мо из UART (тот самый USB дисплей, но быстрее всего получаетс€ выводить картинку на LCD из флеш-пам€ти NAND. «аранее оптимизированна€ картинка о двух байтах на пиксел (RGB 5-6-5) залита постранично на флешку, остаЄтс€ только дЄргать #RE (2 раз) и CLK (16 раз) и преобразовывать параллельную шину флешки в последовательную DATA диспле€. Ќикаких SD-карт! ј также на этой плате можно вылизать методы низкоуровневого доступа к TSSOP-чипам пам€ти, алгоритмы шифровани€, контрольные суммы и файловую систему дл€ AVR.


» разумеетс€, после смены компа мне стало острейше не хватать LPT-порта на Winbond-чипе, не PCI-LPT, который с Win7x64 не то, что через InpOut, и DLPortIO плохо работает через CVAVR. ѕриходилось дл€ заливки прошивки пользовать старую машину по RDP, а это лишний шум и геморрой. ¬от тут бы и обратитьс€ к идеологии прошивки по USB Arduino, только без дикой дл€ белого человека Arduino IDE. ј чтобы в нормальном таком ассемблероподобном BASCOM-AVR от MCS Electronics.


Ќаписано много слов в интернетах, что BASCOM-AVR умеет программировать как через STK200, также как и через USB ASP (руки дойдут однажды:)), так и через их AVR USB-загрузчик MCS Bootloader. Ќо вот же в чЄм беда, что по схеме аппаратна€ UART пара RX-TX висит у мен€ на шине данных к NAND флешке, и общение ATMega с CH340G происходит через Software UART, а загрузчик дл€ компактности написан под аппаратный UART. Ќу, MCS приложили исходник загрузчика BootLoader_m328.bas, который нагуглить та ещЄ проблема.


 ак вы€снилось из чтени€ мануалов и форумов, загрузчик ни что иное, как кусок кода, который при использовании метауказаний компил€тору $loader $loadersize размещаетс€ в конце области пам€ти контроллера по дальним адресам типа $3c00, $3800, $3f00, $3e00 (дл€ ATMega328) и при помощи фьюзов BOOTRST, BOOTSZ0...BOOTSZ1 выставл€етс€ первичное действие контроллера (адрес прыжка) к этому загрузчику, который, например, ожидает по UART байт 123 или иной другой, чтобы начать запись прошивки, побайтно SPM-LPM командами принима€ еЄ из UART. ≈сли же байт 123 или иной другой не приходит, прыгаем на адрес $0000, где по идее лежит основна€ программа. –азмер основной программы, при наличии загрузчика в контроллере, ограничиваетс€ 30 Ѕ, на 2 Ѕ меньше.


ћой модифицированный загрузчик MCS дл€ ATMega328 зан€л пор€дка 1024 слова (2  Ѕ), это много по меркам пам€ти контроллера, однако что поделать (жертвы), посему шить его надо по адресу $3c00, соответсвенно ему и выставл€ем фьюзы в CVAVR.


Ѕац, и ниxy€ не работает. Ќу, загрузчик прошиваетс€ в конец, даже работает, соедин€етс€ с BASCOM на скорости 115200, пишет отладочное приветствие "LDR", происходит запись прин€той прошивки (основна€ программа на BASCOM-AVR или AVR-ASM, где метадирективой $loadersize=1024 указываетс€ размер загрузчика, который не затереть бы...), прошивка стартует, выполн€етс€ цикл (общение по UART с прогой на ѕ ), но... ∆мЄм RESET, и нет приветстви€ "LDR", что говорит о том, что загрузчик не запустилс€ повторно с $3c00, а происходит запуск основного куска кода с $0000.


‘ьюзы загрузчика в CVAVR, которые не вли€ют на результат по неведомым причинам

ѕроебшись 4 мес€ца набегами, перебрав все возможные комбинации фьюзов, таки наступил прогресс: сначала нажав кнопку Program All, зашил через CVAVR какие-то ещЄ «јѕќ¬≈ƒЌџ≈ Ѕј…“џ, о которых в диалоговом окне ни слова, и загрузчик перестал шить SPM-ом вообще, и это были не LOCK-биты, а кака€-то неведома€ хepь. ’от€ визуально всЄ оставалось на местах (зашитые фьюзы читались и чекбоксы ставились), это не был глюк CVAVR или битый чип Atmel. ѕросто фьюзы не зашивались, и на адресе $0000 были значени€ FFFF, которые пропускались как NOP контроллером и в итоге первый раз всегда запускалс€ загрузчик, когда счЄтчик команд доходил до $3c00.


 орректные фьюзы в BASCOM-AVR

» только прочитав, что иногда PonyProg шьЄт неверно фьюзы, € решил попробовать шить фьюзы не CVAVR, а STK200 BASCOM-AVR. » вуал€, вот оно счастье! CodeVision AVR тоже в помойку, как и PonyProg, за неправильные фьюзы! Ќадо выставл€ть в BASCOM-AVR следующие биты:


Х Fusebit High DE 01:Bootsize 1024 words
Х Fusebit F 0:Select BOOT vector

Ќу, умный разберЄтс€, дурак не полезет, короче из всех программаторов наибольшую верность заслуживает BASCOM-AVR.


“акже была реализована следующа€ фича: любой Arduino просит жать RESET чтобы войти в загрузчик ручками, хот€ люди с AVRProject пишут, что можно сигнал квитировани€ DTR (который COM-мыши пользовали дл€ питани€) подключить к ноге RESET контроллера, и перезагружать контроллер без участи€ кнопки. ѕроверено - RESET via DTR работает и штатно поддерживаетс€ MCS Bootloader / Programmer даже через мост CH340G.


ƒнЄм и ночью Nokia 1616 (640x621, 105Kb)

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


»з минусов прошивки по USB/UART:


- нет возможности шить фьюзы и локбиты, что ограничивает манипул€ции с частотами и делител€ми частот, watchdog и т.д., но и нет возможности сделать контроллер кирпичЄм.


- веро€тность сбо€ ввиду бросков питани€ и наводок на линии UART повышаютс€. “о есть случайность может передать "123" контроллеру, он войдЄт в режим прошивки, а вместо байтов прошивки на ножку UART будет прилетать эфирный мусор, и контроллер зашьЄт его. ј вы думали, как так может быть, чтобы в телефонах и иных устройствах от падени€ слетает прошивка? ƒа очень просто: BGA-шарик перестаЄт контачить или замыкаетс€ в 0 с дребезгом, что приводит устройство в неработоспосоность.




ј теперь несколько мыслей около.


–аз уж AVR на гарвардской архитектуре, обладает малым объЄмом ќ«”, и приниципиально не хочет выполн€ть код, вз€тый из ќ«”, а люди иссохшишь по свободе 8085 и Z80 изгал€ютс€, вл€пыва€ в эти немощные контроллеры интерпретатор бейсика TinyBasic и вообще Linux запускают, то почему бы свой вариант изврата не предложить?


ƒа, все эти интерпретаторы недо€зыков это здорово, но сразу же встаЄт вопрос аппаратной платформы, терминала, ввода-вывода, а это уже ограничение возможностей вплоть до превращени€ многоногого ATMega в интерпретатор ему-же-подобного ассемблера... GW-BASIC. Ёто не наш путь. “ак вот, волшебна€ штука этот ваш SPM - LDM, самопрограммирование AVR открывает широчайшие возможности по кастомизации кода во флеше, разве что вместо ќ«” будет использоватьс€ ‘Ћ≈Ў (ага, с его ограниченным ресурсом в 10000 циклов перезаписи). ƒл€ начала рисуем ќ—, операционку в виде менюшки с возможностью выбора программы дл€ заливки. Ёту ќ— запихиваем во внешний SPI Flash (3...4 ноги), как BIOS, затем рисуем загрузчик размером в 1024 слова, который при включении контроллера сначала шьЄт в контроллер программу менюшки из SPI Flash, а уже менюшка может обращатьс€ куда угодно, в т.ч. и к внешней пам€ти, SD-карте, UART и т.д., откуда можно вз€ть прошивку любой кастомной программы, тетрис и иные утилитки, и уже вот эта менюшка шьЄт на своЄ место или даЄт указание загрузчику через EEPROM или состо€нием физического переключател€ зашить не себ€ (менюшку), а вот эту кастомную прогу. ќп€ть же, кастомный переключатель, отвечающий за то, чтобы в контроллере не поселилась навсегда игрушка вместо менюшки, должен быть аппаратным, как кнопка RESET на персональных компьютерах эпохи IBM PC XT, ибо из DIGGER и ALLEY CAT нет другого выхода.


ј ещЄ загрузчиком можно реализовать ликвидацию как прошивки в контроллере дл€ защиты от вскрыти€ устройства, так и самого устройства, подав питание через умножитель напр€жени€...


ƒа вообще полезна€ возможность.

–убрики:  этот удивительный мир вокруг нас

ћетки:  

√рустна€ истори€ о USB

ƒневник

¬торник, 17 ћа€ 2016 г. 22:32 + в цитатник
¬ качестве предислови€: ƒа, мой абстрактный читатель, € уже упоминал о своЄм отношении к usb интерфейсу, но как показывет практика, штука всЄ-таки нужна€. ѕервое правило как и в безопасном сексе быть уверенным в партнере. то есть не совать что ни попад€ в порты USB, если конечно, южный мост не жалко.
»бо у всего есть замена - спалишь SATA контроллер, та и ладно, можно поставить PCI или в крайнем случае заменить мостами USB-SATA, спалишь встроенное видео (процессор!) - заведЄтс€ внешнее PCI-E, гигабитный эзернет спалить, так его ещЄ надо умудритьс€ спалить. ќдин мужик даже умудрилс€ спалить на 1156 сокете на годной ITX-машинке звуковуху, да там даже кодек сопливый же, TQFP-микросхема ALC, помен€ть с донора и делов-то, ну подключить USB-аудиокарту, Ќќ —ѕјЋ»“№ USB —„»“ј… «ј ќЋќ“»“№ ¬—≈ ѕќ–“џ » »√–ј“№ ¬ ѕј—№яЌ—  ќ—џЌ ј! √лубоко знакомый сотрудник даже материнку спалил из-за того что как мудак вслепую тыкал флешки в лицевой порт. “ак что не совать в порты вслепую, особенно самопал!

„то было?
¬аш автор наблюдал на вымерших ноутбуках верхнего ценового сегмента (правда, почему AMD-то? кто эту хуйню поставил в бизнес-класс?) такую штучку как сканер отпечатков пальцев. ¬дохновлЄнный айфоном 5s, пораскинув мозгами, решил таки сн€ть с нерабочих ноутов VAIO и HP Pavillion dv6000 - у обоих был сенсор отпечатка. ¬икипеди€ гласит, что это тепловые сенсоры отпечатков. “акже она гласит, что в цел€х удешевлени€/унификации их делают непосредственно с интерфейсом USB.

ѕроверим? !!! TROLLFACE !!!
w51XcCz8uog (499x700, 77Kb)

Ќа фото плата DAAT3ATB8D0 от HP, и действительно, прозвоном нашЄл землю, четырЄхконтактный шлейф ничто иное как USB. ѕроверил на трЄх машинах - не нашЄлс€, как только включил через хаб без внешнего питани€ (!) - заработал. ѕодозреваю, что просит питание 3,3¬. ЌашЄлс€ как AuthenTec Inc. AES2501B класса "Ѕиометрические устройства", драйвер скормил от Lenovo (Windows 10 x64 съел тоже). “ребует ѕќ AuthenTec TrueSuite, который давно не обновл€лс€ ибо компанию поглотил Apple. Fingerprint sensor, так сзать. ƒактилоскоп в корпусе игрушки.

FCBldOAF3pQ (498x652, 78Kb)
¬торой сенсор отпечатка Sony SWX-213, тоже взлетел через USB-хаб (оп€ть же вопрос к питанию), однако контакты дл€ подпайки оказались мельче нужного, посему плата заработала только в таком виде. ќбнаружилс€ как ЂTouchChip Fingerprint Coprocessor (WBF advanced mode)ї. —енсор Ђпопри€тнееї предыдущего, постарше, но по неизвестной причине не распознавал мизинцы (?). TrueSuite пришлось заново обучать.
“акие платки сто€т сколько-то долларов на ибее, алиэкспрессах, то есть они даже иногда ломаютс€. ѕокуда делал SWX-213, контакты просто по-фашистски миниатюрные, всЄ отвалилось, сломал плату к ху€м, напугал л€рву, ощм одно расстройство.
» всЄ бы ничего, но про питание 3,3¬ € неспроста упом€нул.

ѕервой жертвой пал рабочий компьютер, где поначалу все бы ничего, но через пару дней он начал сам перезагружатьс€, затем сработала ультрамодна€ асусова технологи€ защиты от перенапруги ASUS Anti-surge protection, вот тут-то € и почу€л, что говнецом запахло жареным.

ќтключил контроллер USB 2.0 в BIOS и вуал€, вздохнул, вставил мышь PS/2 и вперЄд. «ато ни один паразит в USB ничего не вставит теперь, и кстати, зар€дка не зависит от определ€емости. “о есть тупо комп превратилс€ в USB-зар€дку на 12 портов.

я же сразу не прочухал, что напр€мую подключа€ дактилоскоп fingerprint sensor к USB без хаба, мы имеем пр€мое попадание вот этих сраных па€ных проводков пр€мо в южный мост безо вс€ких защит. ј хаб, видимо, более живучий.

¬торой жертвой стал комп в спальне, Gigabyte ITX на H61. √игабайт попроще, нет там сюрж протэкшна, посему до сих пор пытаюсь пон€ть что не так, то ли южник, то ли где-то ещЄ € накос€чил. Ќо работает он с трудом.

Ќу и конечно же, экспериментировал на основном компе, по большей части через хаб, что и спасло.  оторый s775 X48. » оп€ть же, хвала истории и старым техпроцессам. Ќе написал ничего, работает тьфу-тьфу-тьфу, даже картридер эпизодически находит, то есть почти без жертв - USB 1.1 очень славно как и надо работают, USB 2.0, в частности жЄсткие диски не лучшим образом, тут ещЄ сказываетс€ вита€ пара вместо USB-кабел€ дл€ удлиннени€ на морду, но иногда бывают Ђ”стройство USB не опознаної.
—уммарно ущерб от самонаде€нности пуст€ковый и укладываетс€ в четырехзначную сумму в рубл€х, к тому же не потраченную =)

ѕредположение такое - раз уж девайсы были на платках внутри ноута, там могла быть разновидность High Speed Inter-Chip USB (HSIC), у которой иные уровни линий данных около 1,2¬, а даже у USB 1.1 (Full Speed 12 Mb/s) уровни линий D+ D- от -2,8¬ до +2,8¬, то есть не более 6¬ амплитудой. Ќо всЄ мен€етс€, когда подаЄм питание 5¬ вместо запрошенных 3,3¬!! ”ровни расшатываютс€ пропорционально, наверное, +-4¬ или даже все 5¬ (то есть 10¬ амплитуда), какой нахуй южный мост выдержит такое насилие?! ј у USB 2.0 ещЄ и по протоколу разные уровни, как квадратурна€ модул€ци€, тут уже будь € южным мостом, сгорел бы полностью. —транно, но девайс-распознавалка выжила после этого.

 ороче така€ вот истори€, не суйте хуй пойми что в комп. Ѕерегите железо.
–убрики:  этот удивительный мир вокруг нас

ћетки:  

USB

ƒневник

ѕонедельник, 01 јпрел€ 2013 г. 22:48 + в цитатник
ѕодборка технических ссылок дл€ понимани€, почему USB это несерьЄзно. ѕро OHCI/UHCI/EHCI/XHCI, про то, что не стоит удивл€тьс€ геморрою с загрузочными флешками, про бл€дский €ббл, не желающий зар€жатьс€ от Ђобычного компьютераї...

Ўина USB требует обратной совместимости
USB Host Controllers: OHCI, UHCI, and EHCI
—пецификации USB
USB - гавно.  ак ни странно.
Apple iPad не зар€жаетс€ от компьютера Ц миф
ѕочему Apple против стандартного Micro-USB
—оздаем простейшее usb-устройство дл€ общени€ со своей программой
USB-хаб
USB интерфейс - как устроен и типы
ќграничение на использование USB-накопителей.
ƒостаточнно ли питани€ по USB дл€ внешнего жесткого диска?
ѕитание от USB (GIGABYTE)
„то такое USB-хост и как его можно использовать
USB Host OTG(€ бы не рекомендовал эксперименты - прим.SoXiE)
—обственный драйвер дл€ устройства USB - это просто
»грища с USB в Windows (отслеживаем и контролируем) (€ сам могу рассказать как общатьс€ с монтируемыми в систему USB на VB6 средствами WinAPI).

—обственно, что такое сферический USB в вакууме? ƒевочка-планктонина приносит флешку чтобы напечатать очередную бумажку в отсуствие сети, вставл€ет еЄ в печатную машинку, и через пару кликов в руках бумажна€ копи€. “о же самое - она же садитс€ в автомобиль, вставл€ет плеер с вилкой на корпусе в дырочку - и вуал€, никаких тебе закатившихс€ под сиденье и поцарапаных оптических дисков, и плеер заодно зар€жен. ’у€к, покупаем устройство почти любого вообразимого функционала - от сраных подсветок дл€ клавиатур, отгон€лок насекомых и прочих вентил€торов с гламурными прозрачными оплЄтками и золотыми контактами до жЄстких дисков с двум€ вилками и видеокарт, и гарантированно знаем, что оно Ѕ”ƒ≈“ работать (по крайней мере в сравнительно современном компьютере). ¬сего 4 разноцветных провода, казалось бы, гламурное кисо отсатисфачено простотой, лЄгкостью и юзабельностью, и даже если она в порыве гнева порвала шнурок - да его скрутить-починить как два пальца об асфальт!
ќднако, как написано выше - USB-гавно. я по молодости вообще недоумевал, наху€ ж нужен завод Ёлекон с его многообразием дорогущих разъЄмов, когда есть столь универсальный стандарт, столь отлаженное и компактное средство св€зи. » даже думал, что если вз€ть всю нашу замечательную технику с этими кабельными ктулху и чЄрт-ногу-слом€щими разъЄмами и маркировками, и в один миг перевести на USB, проблема решитс€. ’уй там. Ћучша€ деталь та, которой Ќ≈“.


ƒавайте представим, что человеческий мозг и голова (в которую ед€т) соединЄн с телом одним лишь подобием интерфейса USB (как хвосты в јватаре), а не спинным мозгом, пищевым и дыхательным трактами и иными артери€ми. ƒа мы бы безбожно глючили, тормозили, ше€ была бы тоньше, у нас был бы хотсвоп головы на другое тело и оно могло бы функционировать, например, на удалении 5 метров от тела (через трубки-каналы), а ещЄ на стыках (где раньше была ше€), были бы такие наросты-микромозги, которые бы расшифровывали и распредел€ли потоки крови, кислорода, управл€ющих нейронов и жрачки. ƒа это были бы самые ненадЄжные узлы, которые отказывали бы лет этак в 20!   тому же голову Ёйнштейна можно прикрутить к телу красавца-качка, да только вот голову кота к человеку не прикрутишь (питани€ не хватит, пищевод маловат, хот€ мошонку себе будет лизать по-кошачьи).


“ак почему же USB говно технически? ѕотому что есть замечательные альтернативы, которые не столь universal, зато не обладают такой жуткой ограниченностью. 5 метров? ƒа кто их мерил когда, давайте попробуем? Ќу, мышка, допустим работает и через 10м, а жЄсткий диск нет. ѕадение напр€жени€? ≈щЄ бы, 0.2V на шине данных затухнут, а тем более если передавать не по кабелю, а по разогнутой проволочной вешалке. USB 2.0 говорите? —колько ещЄ из этих двух проводов можно выжать? 480 ћбит/с? Ётого уже много дл€ двух проводков. Ќу с третьей версией пустили ещЄ, тут же в разы выросла пропускна€ способность, ну напругу подн€ли. ѕожалуй, хватит, уговорили :) ќднако ещЄ один регламентирующий документ и тип контроллера XHCI, который отдельно лицензируетс€, а это уже не просто вопрос ебли в прис€дку, это, господа, деньги. «а каждый отдельный чип на мамке (не разбирал вопрос - на мамках ли или на дочках тоже? ѕлюс михалковский налог, там неплохо так вырастает конечна€ цена). ј теперь представьте геморрой технар€-разработчика устройств, который за вашу универсальность платит тыс€чами лишних строк кода.  ака€ же она нахрен универсальна€, если одних действующих спецификаций (официальный документ) четыре штуки + эпловские извращени€ по питанию. ј теперь подумайте, насколько умным нужно сделать устройство (тупо, флешку), чтобы при внезапном выдЄргивании оно не делало харакири, а спокойненько завершало запись на носитель благодар€ разр€дке конденсаторов, не оставл€€ затворы транзисторов в приоткрытом состо€нии (запрещЄнный диапазон дл€ транзисторов)? “еперь сделаем скидку на теорию и реальность, прикинем з/п китайских электронщиков корпорации с гордым названием Ђnonameї, и сделаем выводы о покупке левых флешек. ЌадЄжность? ƒа вы о чЄм вообще? ѕитание USB на мамке подводитс€ напр€мую к шине +5VCC, и вот вам пример: есть у мен€ Ѕѕ и матплата, которые фальш-стартуют будто по команде AC Power Resume, и в этой плате был воткнут USB-светильник. “ак у него кондЄр сдох через пару недель таких включений, потому что Ѕѕ не успевает при подаче 220¬ и одновременном включении стабилизировать выходные уровни - мамке похуй, там защиты есть, а устройство, как видите, сдало полномочи€. „то касаетс€ серьЄзности, вот вам схемы подключени€ плоха€ и хороша€.


—хема подключени€

 аждый из кубиков и линий имеет свой коэффициент надЄжности, энергопотребление, гарантию и в конце концов преобразователь напр€жени€ (в котором может возникнуть пробой или  «, и сгорит скорее всего всЄ). «ато универсально и по 4-м проводам. „ем меньше кубиков, тем выше надЄжность. јх да, ультрабук на картинке имеет чип USB-контроллера, так что это тоже два кубика, просто он интегрирован в чипсет (и при пробое придЄтс€ мен€ть ультрабук). ¬ этом отношении USB вообще хуита потому что универсальность не нужна ибо специфический софт скорее всего жЄстко прив€зан лицензией к железу.


 ороче, выводы таковы: если мы имеем девочку с флешечкой, пущай будет и USB-дырочка. Ќо при первой же оптимизации скорости/надЄжности/простоты/пр€моты путей USB будет выкинут первым делом из общей схемы.

–убрики:  этот удивительный мир вокруг нас

ћетки:  

ѕолноценна€ Windows с USB-флешки

ƒневник

ѕ€тница, 30 Ќо€бр€ 2012 г. 19:45 + в цитатник


стащено с imagefap
Ётот пост можно не читать, если вы обладаете правами администратора (или root) на всех нужных вам компьютерах или не нуждаетесь в них.
÷ель поста Ц научитьс€ смотреть котэ и иной вазелин дл€ губ скачать без регистрации без смс в интернетах в неположенное врем€ на чужом оборудовании. ≈сли какое-то слово в заголовке осталось непон€тным, или не хватает интереса к теме, можно смело пропускать Ц ничего не упустите.

¬место предислови€

Ђ...держи свое при себе
» не оставл€й следов...ї

Ѕорис √ребенщиков


ƒумаю, стоит посв€тить планктон в страшную тайну: 8...9 часов своего ценнейшего времени и сил вы вынуждены отдавать люд€м, которые цен€т вас не той ценой, которую бы вы назначили за это врем€препровождение. » те люди, которые вам плат€т, наступают себе же на €йца эффективности Ц ограничивают вас. Ќе будем говорить, плохо это или хорошо, € надеюсь, мен€ читает сознательна€ часть населени€, котора€ не станет срывать сроки и deadline по своей глупости из-за увлечЄнного страдани€ хернЄй, а умеет контролировать себ€, а быть может даже исповедует тайм-менеджмент и GTD. “ак вот, этот пост посв€щЄн установке самой долгоиграющей на рынке десктопной ќ— Windows XP на переносной накопитель (USB-флешка, брелок, жЄсткий диск). ѕолноценной установке, а не обрезанной Windows PE, котора€ не умеет почти ничего из ежедневных потребностей планктона.


„итать и делать флешку чтобы смотреть котэ вконтактике на компьютерах без интернета
–убрики:  этот удивительный мир вокруг нас

ћетки:  

 —траницы: [1]