tronix286 0 12 января, 2015 Опубликовано 12 января, 2015 (изменено) · Жалоба Привет, Ну все знают, что есть софтовый USB для AVR (V-USB). Есть аналог и для PIC16F (16fusb). Есть попытки и для MSP430 (Mecrimus-B ). А вот не попадалось ли кому такое же решение для "классического" 8051? В смысле, исходников. То, что принципиально такое возможно, косвено можно судить по этому проекту: http://www.cqham.ru/usb-hdd.htm (к сожалению, без исходных кодов). Изменено 12 января, 2015 пользователем Tronix286 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 5 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба То, что принципиально такое возможно, косвено можно судить по этому проекту: ... No comments. Начну с того, что Mass-Storage, согласно спецификации, реализуем на скоростях не ниже FS. А еще добавлю, что даже на ujhfplj более быстром AVR программный USB выглядит попыткой сэкономить на грузовике и возить кирпичи на Жигулях. Хорошо все равно не получится, так стоит ли тратить время и силы ? И это еще при том, что давно уже есть 8051 с аппаратным USB - движком (например, те же AT89C5131) ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба Про "классику" с 12 тактами на МЦ сразу забываем - понадобится тактовая частота этак 150 МГц. Можно попытаться вытянуть аналог V-USB на однотактовых ядрах (CIP-51, MPC82, AT89LP...) при тактовой частоте от 16 МГц - но разве что из спортивного интереса; зачем извращаться, если у того же Силабса есть валом чипов с аппаратным USB по вполне вменяемым ценам? P.S. Прошивку по ссылке скачал, на досуге дизассемблирую. Что-то слабо верится, что оно может работать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 123 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба А вот не попадалось ли кому такое же решение для "классического" 8051?"Классический" - это 12-тактовый с частотой 12 МГц? Для 1-2 тактового AVR на 12 МГц процедура приема вылизана до такта, "классический" 8051 просто не успеет. Совсем. Вы можете проверить сами - в V-USB ассемблера всего-то полсотни команд. Остальное на Си должно перенестись вообще без правок. Впрочем, чтобы понять бесперспективность затеи, достаточно прочитать пару страниц описания V-USB. Но читать документацию - это для слабых. А статья по ссылке - первоапрельская шутка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tronix286 0 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба зачем извращаться, если у того же Силабса есть ..... [skip] P.S. Прошивку по ссылке скачал, на досуге дизассемблирую. Что-то слабо верится, что оно может работать. Как вы правильно и заметили, чисто из спортивного интереса. Всерьез конечно использоваться такое решение не будет. Ну и немножко в учебных целях "Классический" - это 12-тактовый с частотой 12 МГц? А статья по ссылке - первоапрельская шутка. Классический, это хотя бы тот флеш атмеловеский AT80C51, который в статье. Я не очень с 8051, поэтому собственно и обратился в этот раздел к людям, работающих с этими камнями. Вдруг во времена нелегких советско-российских 90-хх кто-то тоже поднимал на сабжах USB, так как выбора не было? Дизассемблить 4кб кода - мне кажется слишком трудно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aner 4 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба Во времена (90-х годов) ламп, транзисторов, ИК580 (Intel8080, Z80) как то про USB ничего не писали, ни кто не делал такого. Почему? Историю создания стандарта USB для начала не пробовали копнуть в инете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба А статья по ссылке - первоапрельская шутка. Тем более интересно, чего там в коде нашутили. :) P.S. В конце 90-х в USB было просто нечего включать, да и не на всякой материнке сия шина присутствовала. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aner 4 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба Молодое поколение оно такое, истории не знает. Среди ламп и ламповых схем USB никак не отыщут. Потом тупо чухают диз для 4К кода. Непонимая, что там скоростная аппаратно-регистровая архитектура нужна. А уж потом кусок софта. Да, многие интерфейсы не учат, по причине того, что не кому преподавать. Фреймворк электронной советско-российской промышленности сломан и рухнул давно. Взамен ноль и сырьё. Госты тихо постарели и померли. Тут намедни еще один молодой ГОСТ искал на Езернет ( Ethernet...) ... и чёт не нашёл. Удивлялся, узнав что не гоже нам американские военные стандарты передирать. Частники наконец дозарабатывались на нефте и газе. В китае спасение. На сегодня USB первой версии, как и AVRы превратились в ископаемые. Так что, тот кто этим будет заниматься знайте: вы занимаетесь интерфейсно-микропроцессорной археологией. И электронные мусорки ваш удел. Позанимались с USB для AVR недельку не более. Все стоп. Смотрим, что у китайцев, ARMы USB2/USB3 ... уже не догнать. Начинаем ползти, двигатся, ... не догоним, ... но хоть немного согреетесь - говорят китайцы. С Новым Старым годом! всех читающих это. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tronix286 0 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба Молодое поколение оно такое, истории не знает. Среди ламп и ламповых схем USB никак не отыщут. Потом тупо чухают диз для 4К кода. Непонимая, что там скоростная аппаратно-регистровая архитектура нужна. Молодое может быть и не знает истории, но хотя-бы интересуется. Согласитесь, что уже хотя бы это (интерес) не плохо. Ну промахнулся я с 90-ми, но позвольте, и вы тоже с лампами тогда промазали, причем похлеще меня. 4Кб кода незнакомой архитектуры - да, мне кажется много. Даже для родного и близкого мне x86 ассемблера - это прилично, хотя читать (а когда то, давным-давно, и писать) могу без словаря. Чем вас так задела эта тема? Я прекрасно понимаю, что практического применения у сабжа нет. Я же написал, что интерес чисто спортивной, вашими словами - цифровая археология. Примерно такие матерые дедушки эмбедеры тоже лет 7-8 назад твердили, что на PIC16F не может быть USB потому что такого быть не может, и что система команд ущербная, и частота никакая, и практически ваши слова один в один повторяли. А потом чувак взял и сделал, принял вызов, так сказать. Конечно пришлось идти на кучу ухищрений и не стандартных решений, разгона частоты с дефолтных 20МГц до 24МГц. Но сделал, и оно прекрасно работает. Вот я сам на прошлой неделе нашел у себя давно валявшийся PIC16F628A и сделал на нем музыкальную USB-безделушку за пару вечеров. Чисто для себя, ради забавы. Все работает, песенки поет и теплыми ламповыми DIP-корпусами поблескивает. Конечно, находясь в здравом рассудке, никуда в продакшен я такое не потащу. Конечно там ARMы. Конечно там USB3. Разве я с этим спорю? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tronix286 0 13 января, 2015 Опубликовано 13 января, 2015 (изменено) · Жалоба Хотя да, если верить какому-то даташиту на 8051, который нашел, то простая команда у него при 12Мгц выполняется за 1мкс. По спецификации USB 1.1 low speed один бит передается за 666,7нс. То есть даже не успеет бит обработать, не говоря уже о том, что бы еще параллельно поймать конец пакета (когда D+ и D- в нуле). В принципе, конец пакета можно и не ловить, а разбирать с начала пакета, скажем первые 88 бит, а дальше переходить уже на декодинг... Но, черт возьми, действительно не укладывается даже на декодинг одного бита по времени. Действительно, проект по первой ссылке, кажется теперь и мне сомнительным. Хотя, может у 89C51 какой-нибудь множитель можно x2 включить, или время выполнения команд другое. Не могу на него нормальный даташит найти, попадается только краткий. Да хотя какое - другое, ну максимум что сделали - однотактовые команды все, то есть та же микросекунда на все про все. Возможно в схеме ошибка, и камень тактуется от 24MHz кварца - тут уже разговор другой. Изменено 13 января, 2015 пользователем Tronix286 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexunder 4 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба Ну все знают, что есть софтовый USB для AVR (V-USB). Есть аналог и для PIC16F (16fusb). Есть попытки и для MSP430 (Mecrimus-B ). А вот не попадалось ли кому такое же решение для "классического" 8051? самый главный вопрос: ЗАЧЕМ городить софтовый USB на "ржавом ведре", если есть Silabs с двухтактным ядром 51 и замечательной библиотекой для работы с USB? Если нужен именно режим FS, то силабс-самое то. Если HS и 51, то Cypress FX2. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Edit2007 3 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба У более поздних версих AT есть внутренний множитель на 2 и внешний кварц может стоять до 24 МГц. Итого 4 МГц частота ядра. С таким железом уже можно "извращаться". Но все равно сомнительно - поскольку за один такт (ядра не генератора) выполняется не очень большой набор команд, большинство требует 2-3 циклов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 37 29 августа, 2015 Опубликовано 29 августа, 2015 · Жалоба То, что принципиально такое возможно, косвено можно судить по этому проекту: 8051 на 12!!! Мгц, плюс еще работа с винтом по иде.... Мммда, либо программист ГЕНИЙ, но судя по этому"Контроллер проверен с несколькими дисководами... " я уже ничему не удивлен Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться