Здравствуйте. Я начинающий электроник (=)) и вот решил начать свою карьеру с реализации управления машинкой (авто игрушка) через USB. Для начал искал материал для перевода USB, во что-то более понятное МК. Накопал кучу инфы, просто ей укурился, но так как я начинающий, то пока в голове каша. Нашёл у вас на сайте статью http://radiokot.ru/circuit/digital/pcmod/05/ и решил по ней ориентироваться. Итак, собственно вопросы:
1) В этой статье написано о применении МК FT232BM. Но вот её я не нашёл. Можно ли её заменить другой МК, например FT232BL или PL-2303XA (FT232RL)? И какие у них различия?
2) Нашёл очень интересную статью http://www.gaw.ru/html.cgi/txt/app/micr ... AVR309.htm, прочитал, но многого не понял. Смысл в том, что меня интересует, как мне сигнал RS-232 отправить делать полезную работу (крутить педали (управлять машинкой)). Я понимаю, что для этого нужно подключить к выходам USB - RS-232 преобразователя нужную мне МК, но как-то всё туманно. Можно ли для меня привести какой-нибудь простой пример?
Заранее спасибо.
FT232 предназначен для конвертации данных в стиле RS-232 по шине USB. Принять, обработать и отослать результат в комп это дело МК.
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
to Drednout(Homeworld 2? ) Я бы рекомендовал Вам использовать не FT232, а CP2102. Вот пара ссылок : USB - это просто! Часть 1 и CP2102 / CP2103 преобразователи интерфейсов USB RS232/RS485 . А вот касательно FTDI и AVR - USB - это просто! и отличная "местная" статья USB - RS-232 преобразователи После сборки такого преобразователя Вы получите обычный UART по которому ваше устройство и будет связываться с хостом(комп), то есть Вам потребуется кроме преобразователя еще доп. МК который и будет получать команды от хоста через USB > RS-232 преобразователь. Со стороны хоста устройство будет определятся как виртуальный COM порт. Далее пишете программу на хосте и вперед .
Как вариант можете использовать МК в котором уже есть USB - ATMEGA32U2-AU, PIC4550, Silabs С8051F320/1 и т. д., и т.п. Загляните в ветку Управление силовыми приборами через USB ПК я там выложил полную программу для управления реле(можно в принципе чем угодно управлять) для USB МК от Silabs и схему я там выкладывал на 2 странице. Если Вас все енто заинтересует пишите, помогу чем смогу .
_________________ Крылья... Крылья.... Хвост! Нестрашно не знать, страшно не стремиться знать.
Компания MEAN WELL пополнила ассортимент своей широкой линейки светодиодных драйверов новым семейством XLC для внутреннего освещения. Главное отличие – поддержка широкого спектра проводных и беспроводных технологий диммирования. Новинки представлены в MEANWELL.market моделями с мощностями 25 Вт, 40 Вт и 60 Вт. В линейке есть модели, работающие как в режиме стабилизации тока (СС), так и в режиме стабилизации напряжения (CV) значением 12, 24 и 48 В.
to Meteor Это я тоже понимаю. Вот я и просил как бы пример продолжения схемы. Чтобы у неё было какое-то практическое применение.
to Left Radio (Warhammer 40000 Dawn of War ) Собственно на статье "USB - RS-232 преобразователи" я и основывался. За ссылки спасибо. Проблема в том, что данные микросхемы(FT232), насколько я полагаю, мне будет легче достать.
Честно говоря, в данный момент меня больше всего интересует как регулировать обороты электродвигателя и поворачивать колёса игрушки с помощью МК управляемой ПК через данный преобразователь.))
За помощь спасибо.
....Честно говоря, в данный момент меня больше всего интересует как регулировать обороты электродвигателя и поворачивать колёса игрушки с помощью МК управляемой ПК через данный преобразователь.))...
Ну так берите МК с USB, для регулирования оборотов электродвигателя используйте ШИМ с этого же МК, поворачивать колеса можно с помощью реле например, или MOSFET... И не надо вам никакого преобразователя, все предельно просто. Если конкретно к Silabs, то я в той ветке приводил пример программы для МК, единственное изменение которое в нее надо внести для вашего случая - это вкл. ШИМ... После прошивки МК, устанавливаем дрова от производителя, создаем проект(Visual C#, но в принципе пофиг, можно на любом вижуале), прикошачиваем к проекту библы от производителя, и пишем на хосте примерно следующее:
Все, мы передали в устройство, по USB, 1 байт со значением 10000000. Ну дальше я думаю понятно - в зависимости от значения принятого байта МК изменяет скважность ШИМ, вк. выкл. реле, мигает светодиодами как ёлка и т.д., и т. п.
_________________ Крылья... Крылья.... Хвост! Нестрашно не знать, страшно не стремиться знать.
Хм... Интересно... А не могли бы вы мне скинуть ссылки на даташит какой-нить подобной МК, и, если вас не затруднит, что-нибудь вроде примерной схемы. При прошитии МК такого рода, нужен ли будет мне программатор или всё можно будет сделать через USB?
Вот, даташит на русском - C8051F320/1, схемку скину чуть позже.
Чуть позже...
Схема, прошивка(с исходником), программа для ПК(Visual C# тоже с иходником) во вложении
Программа для МК написана под Keil C51 V9, для компиляции проекта Вам понабиться скачать USBXpress, установить и прикрепить к проекту два файла из установившегося пакета - USB_API.h и USBX_F320_1.LIB, там же лежат и дрова для хоста - папка C:\SiLabs\MCU\USBXpress\Driver\, я уже откомпилировал проект и приложил готовый hex.
Программа принимает от хоста 5 байт(с запасом, нет необходимости использовать все), первый байт отвечает за скважность PWM1, второй за скважность PWM2, третий и четвертый для управления портами P1 и P2 соответственно.
Для прошивки МК понабиться вот такой простой программатор.
Вот скрин программы для ПК которую я написал:
Кликая непосредственно по прогрессбару изменяем скважность ШИМ, ну и управление портами, каждым пином порта отдельно.
В общем Вам остается только спаять, прошить, установить дрова(смотрите чуть выше) и запустить прогу, далее, когда разберетесь, уже подправите и прошивку и прогу под конкретно свои нужды, если вообще это надо будет делать...
P.S. Обнаружил в выложенной проге некритическую ошибку - в событии progressBar1_MouseDown написал progressBar1.Value = e.Y; вместо progressBar1.Value = e.X;, на работоспособность проги это не повлияет, если надо будет подправите и перекомпилируйте проект.
Вложения:
Комментарий к файлу: Схема Example.pdf [19.26 KiB]
Скачиваний: 467
Огромное спасибо.
Правда проблема с программатором. Никогда не делал я такого. Одним из преимуществ моего старого плана было то, что мне не нужно было программировать МК-переходник. Возможно проще было бы сделать прибор, который сразу понимает USB? Хотя ваша МК поддерживает USB... Или всё равно придётся добавлять другую МК для обработки сигналов с хоста? А как на счёт ATmega8 допустим? Нашёл статью http://easyelectronics.ru/avr-uchebnyj- ... -shim.html.
Правда проблема с программатором. А какие с программатором могут быть проблемы, две 74HC125 к LPT подсоединить?
Никогда не делал я такого. Это не повод никогда не делать такого в будущем
Одним из преимуществ моего старого плана было то, что мне не нужно было программировать МК-переходник. Кроме переходника Вам все равно потребуется МК....
Возможно проще было бы сделать прибор, который сразу понимает USB? Двумя постами выше именно прибор сразу понимающий USB...
А как на счёт ATmega8 допустим? Нашёл статью... Не понимаю чем лучше МК + RS232<>USB... Ведь все равно Вам придется писать программу и для МК и для PC, хоть с переходником, хоть без...
_________________ Крылья... Крылья.... Хвост! Нестрашно не знать, страшно не стремиться знать.
Я так понимаю, что USB программатор меня тоже устроит?
Просто ATmega мне будет намного проще достать.
К тому же, насколько я знаю, AVR МК более распространены.
Ну то, что достать ATmega мне проще - это факт. Пробил по двум фирмам. Ваши МК ни в одной не встречались, а ATmega есть в обеих + несколько модификаций. Дело в том, что живу я в Беларуси и найти магазин радиодеталей трудно.
Я бы предложил вобще отказаться от использования FT232BM, т.к. за 150-300р. можно купить готовый, красивый переходник, а вот остальное собрать по схеме самому. Тем более переходник найти легко, практически в любом компьютерном магазине он есть.
_________________ Ты должен сделать добро из зла, потому что его больше не из чего сделать.
Как вариант на AVR. Есть серия AT90USBхххх. В частности AT90USB1287. Но жутко дорогой МК, но при стоимости МК +FT232 кажется будет подешевле или на уровне... Дрова у атмела на сайте.
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
...Как вариант на AVR. Есть серия AT90USBхххх. В частности AT90USB1287...
Мда... Средняя цена 800р.... И нахрена он такой нада в простенькой машинке для которой с запасом хватит кило 8 флеша? Я не понимаю чего на Атмеле свет клином сошелся?
К примеру средняя цена на C8051F321 - 150р...
Ладно, это все офф, надеюсь модераторы не настучат мне по башке ...
_________________ Крылья... Крылья.... Хвост! Нестрашно не знать, страшно не стремиться знать.
1. Лучше всего для этого дела ИМХО FT232R[X] (последняя буковка не важна). Она требует меньше всего обвязки. Различие между B и R версиями как раз в количестве внешних компонентов. R, как я уже говорил, более продвинута. На ней даже программатор сделать можно.
2. На всякий пожарный, эти микросхемы создают виртуальный COM, поэтому все общение с ними должно вестись либо через стандартный API, либо через спецбиблиотеки. Про работу с регистрами можно забыть, ибо их не существует. Порт-то виртуальный. Мне хватало API.
3. Про управление. Все выглядит так: Вы отправляете в получившийся COM данные (команды), контроллер их принимает и обрабатывает (выполняет). Т.е. при таком подходе USB для Вас просто не существует.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения