Jump to content
Michael7418

Не Распознается Собранный Usb Контроллер (Attiny2313)

Recommended Posts

Всем привет!

Мне нужен совет/помошь специалиста по электронике. Я программист, и в электронике умею только пользоваться паяльником, немного мультиметром и различать радиодетали ))). Понадобилось мне собрать USB контролер и драйверы биполярными шаговыми двигателями. Делаю все по этим инструкциям - http://openrobo.ru/control/usb. На данный момент собрал USB контроллер. Прошивал микроконтроллер через LPT (5 проводков). Проблема в том, что windows (пробовал и XP, и 7) не определяет мой контролер. Пишет - неизвестное устройство, сбой при подключении. Собрал все верно, 20 раз все перепроверил, прозвонил. Детали все перед пайкой проверял на мультиметре (после сборки тоже). Подскажите пожалуйста, на что тут нужно обращать внимание, из-за чего ПК не определяет контролер как HID устройство?

Еще один момент, после прошивки Attiny2313 через LPT (5 проводков), этот самый микроконтролер не определяется программатором (пробовал 2 МК, второй также). Может это потому, что программа прошила под внешний кварц? Должна ли вообще данная схема (USB контролер) нормально определятся без МК? Вывел из строя МК? Подскажите, плиз! Без совета специалиста не знаю что еще мне делать!

Share this post


Link to post
Share on other sites

Без МК определятся не должно. Ищите где ошибка. Укажите точно как устанавливаете биты конфигурации при прошивке. Чтобы Повторно прошить контроллер настроенный на работу с внешним кварцем подключите внешний кварц. Хотя бы сверху напаяйте без конденсаторов.

Share this post


Link to post
Share on other sites

Укажите точно как устанавливаете биты конфигурации при прошивке.

Вот - CKSEL0..3=1111 SUT0..1=10 CKOUT=1 CKDIV=1 RSTDISBL=1 BODLEVEL0..2=101 WDTON=1 SPIEN=0 EESAVE=1 DWEN=1

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

Хорошо. Большое спасибо за ответ! Попробую напаять кварц и подключить. О результате отпишусь...

Share this post


Link to post
Share on other sites

Финальные результаты тестирования литиевых батареек FANSO при нормальных условиях

Перед разработчиком устройства, в котором предполагается использование батарейки, всегда стоит задача выбора того или иного бренда. Конечно, наиболее объективный результат по качеству можно получить при реальном тестировании в режиме работы самого устройства. Для того чтобы у разработчиков была некоторая информация о реальных значениях основных параметров ЛХИТ, инженеры компании КОМПЭЛ решили провести серию из трех тестов. Первый тест на постоянный разряд в нормальных климатических условиях, начатый в апреле 2019 г., мы завершили.

Узнать финальный результат тестирования

Попробуйте уменьшить длину USB кабеля до минимума. Я неделю искал проблему, потом взял USB вилку и к ней припаял 4 проводка (длиной 5 см) и к плате. Всё заработало.

Edited by Pylypiuk

Share this post


Link to post
Share on other sites

В 8-битных контроллерах AVR без аппаратного USB всегда нужен внешний кварц на 12 МГц, иначе схема работать не будет.

Share this post


Link to post
Share on other sites
                     

Видеокурс Работаем с микроконтроллерами STM32G0. Впервые на русском языке.

В цикле видеокурсов по работе с STM32G0 от компании STMicroelectronics показаны архитектура, периферия (особенности процессорного ядра, режимов пониженного питания, векторов прерываний, DMA и мультиплексора DMA, схемы тактирования и сброса, и.т.д.) и даны практические примеры. Материал дает наглядное понимание того, как начать работу на новых микроконтроллерах STM32G0

Подробнее

По ссылке топикстартера кварц имеется (12МГц), удивительно, что он его не поставил. Естесственно МК, после программирования фьюзов, переходит на генератор с внешним кварцем (которого нет). Поэтому и перестает работать в схеме.

Share this post


Link to post
Share on other sites

По ссылке топикстартера кварц имеется (12МГц), удивительно, что он его не поставил. Естесственно МК, после программирования фьюзов, переходит на генератор с внешним кварцем (которого нет). Поэтому и перестает работать в схеме.

На схеме Usb контроллера кварц и все остальное установлено. На программаторе не ставил...

Edited by Michael7418

Share this post


Link to post
Share on other sites

Как же так? Программатор должен копировать рабочее устройство в части тактирования. ОБЯЗАТЕЛЬНО!

Попробуйте несколько изменить схему.

post-16151-0-91269200-1372003534.jpg

Диоды любые выпрямительные, резистор 10кОм на вывод Reset, конденсаторы по питанию 10мкФ и 0,1мкФ.

Edited by Геннадий

Share this post


Link to post
Share on other sites

Как же так? Программатор должен копировать рабочее устройство в части тактирования. ОБЯЗАТЕЛЬНО!

Первый раз слышу. Для примера у 5-проводкового нет вообще никакого контроллера или тактового генератора, какой конкретно частью он должен копировать рабочее устройство? Или вы под программатором понимаете не только сам программатор, но еще и панельку для микросхемы со всей обвязкой: тактирование, питание, сброс.

На самом деле в некоторых последовательных контроллерах (по крайней мере от prottoss'a, наверняка он не одинок) подается внешний тактовый сигнал частотой 1 МГц на вывод 3 (LED) разъема для программирования ISP-10. В параллельных внешнее тактирование подается в обязательном порядке, но они используются гораздо реже.

По схеме: замена 5-вольтовой логики с согласованием линий данных на 3,3-вольтовую вряд ли что изменит, разве что можно дополнительно проверить контакты и номиналы. Скорее что-то не так с фузами (разумеется если считать что сама прошивка правильная и прошита нормально). Например можно попробовать отключить BOD (записать туда 111) или пошаманить с тактированием, не знаю что у tn2313 может влиять, есть ли у него что-то типа CLKDIV8.

Share this post


Link to post
Share on other sites

CLKDIV8 у attiny2313 есть, но если собравший действительно сконфигурировал фузы как CKSEL0..3=1111 SUT0..1=10 CKOUT=1 CKDIV=1 RSTDISBL=1 BODLEVEL0..2=101 WDTON=1 SPIEN=0 EESAVE=1 DWEN=1 то он либо всё сделал правильно, либо, в случае инверсных фузов, заодно запретил последовательное программирование.

Share this post


Link to post
Share on other sites

COKPOWEHEU

:)

Ты неправильно меня понял. Панелька должна иметь вариант тактирования МК (в данном случае кварц и желательно равный используемому в схеме). Иначе после прошивки и установки фьюзов пользователь "теряет" МК, считая его испорченным. Я считаю, что панелька, входящая в состав программатора относится к нему. Естествено, внутрисхемного программирования это не касается (нужный кварц установлен в схеме). Кстати, такая "проблема" очень часто наблюдается у "счастливых" обладателей 5-ти проводков, которые по незнанию или по лени не подключают внешний кварц для программирования. И как только МК спрыгивает с внутреннего генератора, установленного на производстве, он тут же "теряется в темноте". А про тактирование от самого программатора, например AVR910 Prottosa, мало кто знает о его назначении и пользуется им, разве только носом не тыкнут.

По изменениям в схеме. Лучше запитать МК от 3,6В, чем давить потенциал 5В на линиях D+ и D- стабилитронами. У меня последний вариант не хотел опознаваться, пока не снизил питание МК таким способом. Что-то связано с уровнем лог.1 на USB.

Edited by Геннадий

Share this post


Link to post
Share on other sites

Попробуйте уменьшить длину USB кабеля до минимума. Я неделю искал проблему, потом взял USB вилку и к ней припаял 4 проводка (длиной 5 см) и к плате. Всё заработало.

Увы, не помогло.

=запретил последовательное программирование.=

не запрещал

Припаял кварц на 4 Мгц с 2-мя конденсаторами по 24 Пф на xtal1 и xtal2 (что есть в наличии). Другую сторону конденсаторов запитал на GND. Программатор прошитые МК снова не видит. МК вышли из строя? Заказал новую attiny2313. Думаю попробовать прошить с кварцем теперь. Вот боюсь и эту испортить.

Геннадий, попробую подать 3.6В отдельно, посмотрю что получится.

Edited by Michael7418

Share this post


Link to post
Share on other sites

Michael7418, прошивка с кварцем или без него ничем не отличается, отличается лишь поведение МК после прошивки. При данных конфигурации фьюзов, он либо продолжает работать с программатором, переключившись на внешний кварц, либо "пропадает", т.к. тактироваться нечем. Все это не влияет на работу установленного МК в схему, для которой он прошивается, т.к. на плате предполагается наличие всех компонентов схемы. Однако, если изменить последовательность прошивки и верификации (flash, eeprom, fuses), то можно "незаметить" ошибку при прошивании, т.к. связь с МК будет потеряна в середине процесса.

Share this post


Link to post
Share on other sites

Геннадий, большое спасибо за ответы! Оба МК я прошивал строго по инструкции. Фьюзы тоже внимательно выставлял как написано в статье. Скажите пожалуйста, как то мне можно проверить мои прошитые МК на работоспособность? Кроме программатора "5 проводков" у меня нет других программаторов. Припаял к программатору кварц на 4 Мгц и конденсаторы как на схеме USB контроллера, но оба эти МК не определяются.

Может техника прошивки у меня неверная была изначально?:

- вставляю программатор вместе с новым МК в LPT (ПК включен),

- подаю питание, запускаю прогу UniProf,

- прошиваю, выставляю фьюзы

- закрываю программу

- отключаю питание программатора

- вытаскиваю из LPT (на включенном ПК)

И еще добавлю - позже замерил мультиметром напругу БП, с которого питаю программатор, она оказалось равной - 6,1В (на БП написано - 5В). Может быть причина в этом, т.к. в даташите на МК указано максимум - 5,5В?

Share this post


Link to post
Share on other sites

На новом контроллере попробуйте не меняя фьюзы прошить контроллер повторно. Должен шиться сколько угодно раз.

Если вы шьёте через uniprof то там инверсные фьюзы, то есть ставятся наоборот, не так как в остальных программах!

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

Edited by Brian4ever

Share this post


Link to post
Share on other sites

Brian4even, хорошо, попробую так сделать как привезут заказ. Программа - UniProf. Думаю может через AVReAl лучше прошить? И будет ли работать МК должным образом, если фьюзы не прошивать?

Share this post


Link to post
Share on other sites

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

Программой можете пользоваться любой, главное правильно выставить фьюзы, а они в разных программах устанавливаются по разному. Можете скинуть сюда скриншот с вашими установками в Юнипроф, я проверю.

Share this post


Link to post
Share on other sites

Brian4ever, большое спасибо! В UniProf фьюзы как я понял: галочка=1.

Вот:

post-172467-0-60861600-1372076899_thumb.jpg

Я сперва считал все фьюзы, установил, а затем записал. (На рисунке забыл еще галочку поставить на WDTON!)

Edited by Michael7418

Share this post


Link to post
Share on other sites

Все заработало!!!

Итак, что я сделал:

- первое, почитал мануал по фьюзам.

- второе, на программаторе поменял со схемы своего USB контролера кварц на 12Мгц.

- подключил, МК в UniProf определился сразу! Считал фьюзы, оказалось не стояла галочка на CKDIV8 :). Видимо как то невнимательно галочки проставлял.

- по новой прошил все, воткнул в USB контролер.

- припаял на место кварц.

- подключил к ПК, все определилось. Протестил лампочку, все ОК.

Всем большое спасибо за помощь!

Share this post


Link to post
Share on other sites

Значения SUT0 и SUT1 нужно поменять местами, BODLEVEL1 и BODLEVEL2 тоже, хотя это не так важно.

Edited by Геннадий

Share this post


Link to post
Share on other sites

Геннадий, я так сделал потому, что сперва выставлял фьюзы в онлайн-калькуляторе фьюзов AVR, чтобы все нули и единицы совпали. Потом уже в UniProf (получается, что галочки в точности, но наоборот). Я неправильно делал?

Share this post


Link to post
Share on other sites

Я указал на разницу в конфигурации фьюзов между оригиналом и указанными тобой. Система BOD у тебя имеет неиспользуемую конфигурацию и отмеченная в даташите как зарезервированная (110), а должна быть 101. Такая же "фигня" с битами конфигурации дополнительной задержки к старту после сигналу reset (SUT0..1) - они перепутаны местами. Будь внимательнее.

Share this post


Link to post
Share on other sites

Панелька должна иметь вариант тактирования МК (в данном случае кварц и желательно равный используемому в схеме).<...>. Естествено, внутрисхемного программирования это не касается (нужный кварц установлен в схеме). <...>А про тактирование от самого программатора, например AVR910 Prottosa, мало кто знает о его назначении и пользуется им, разве только носом не тыкнут.

По изменениям в схеме. Лучше запитать МК от 3,6В, чем давить потенциал 5В на линиях D+ и D- стабилитронами. У меня последний вариант не хотел опознаваться, пока не снизил питание МК таким способом. Что-то связано с уровнем лог.1 на USB.

Насчет программатора - предпочитаю внутрисхемный, благо даже на самой мелкой платке можно найти места для подпайки проводков к разъему (пусть себе на них и висит, ничего страшного, это безопаснее чем дергать камень туда-сюда из панельки), не говоря уж о платах для монтажа в отверстия, там можно найти место и для нормального разъема. Тактирование по линии LED... описание читать надо :wall: , жаль мало кто это понимает. Кстати чаще блокировал кристаллы SPIEN'ом (редко) либо RSTDISABLE (надо было эту ногу задействовать), либо совсем низкочастотным тактированием (128 кГц да еще DIV8), причем после нескольких попыток заставить понимать SPI плюнул и разобрался-таки с режимами сна :rolleyes:

Насчет согласования с USB: Проверял подобные схемы на нескольких машинах, даже на каком-то диком китайце, проблем не было. Может стабилитроны неправильные попались (не на тот номинал, со слишком большой емкостью или просто дохлые)? Хотя может некоторые материнки и не дают подключаться всякой непонятной фигне неизвестного происхождения и не соответствующей спецификации :D

Share this post


Link to post
Share on other sites

Может стабилитроны неправильные попались (не на тот номинал, со слишком большой емкостью или просто дохлые)? Хотя может некоторые материнки и не дают подключаться всякой непонятной фигне неизвестного происхождения и не соответствующей спецификации :D

А я уже выше написал, что все заработало. Проблема была в моей невнимательности при прошивке МК (не поставил галочку на СKDIV8). Спасибо.

Edited by Michael7418

Share this post


Link to post
Share on other sites

Так это не вам было, а Геннадию, почему могла не работать схема с согласованием по линиям данных

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By 1 111
      Здравствуйте форумчане! Проверьте пожалуйста данную принципиальную схему на ошибки

    • By pndbr
      Здравствуйте. Может у кого есть печатная плата для отладочной платы на atmega8,32,128 в корпусе tqfp или attiny2313.
      Накопилось много распая с незалоченными камнями и очень хочется пустить их в дело и наконецто научиться хоть как-то программировать. Рисовать печатку самому не хватает опыта. Может у кого есть наработки? Прошу поделиться.
      Поиск выдает только отладочные платы в дип. А если и есть tqfp то в ардуиновском формате т.е без доп перефирии (же дисплеев,клавиатуры,7 сегментных индикаторов,потенциометров,энкодеров..и.т.д)
    • By Melandr
      добрый день, уважаемые форумчане. Есть два проекта в AVRStudio 4.19, один компилируется для ATtiny2313, второй - для ATtiny48. Далее в протеус сделанымодели, для проверки работоспособности кода. Код одинаковый для обоих микроконтроллеров, только сделана условная компиляция, так как отличаются регистры таймера 0. При проверке в Протеус код для ATtiny2313 работает, а для ATtiny48 ни в какую не идет. ЧЯДНТ??? Проекты AVRStudio и Proteus во вложении.
      PS: Proteus 8.6 SP2
      PS2: Нет индикации в Протеус, хотя при паузе переменные все правильные. Также подключил виртуальный осциллограф, и заметил, что в ATtiny48 на выходе PB6 нет импульсов. Хотя в функции индикации все прописано.
      4x_18b20.zip
      ATtiny48.zip
    • By Sherwood107
      Пришёл совершенно новый МК Attiny2313, в программе (AvrDude) установил всё как надо, однако в процессе программирования вылазит ошибка "Установлены lock биты". В чём может быть проблема? Это случаем не залоченный МК?



    • By xydens
      Приветствую всех.
      Решил для своих радиолюбительских нужд собрать переходник из этой статьи.
      В статье прикреплены драйвера для XP, vista, 32-bit семерки.
      Но у меня 2 компа и на одном из них винда 8.1. На нём устройство не определяется, ну да ладно. На втором ноутбуке вин 7, но 64-bit.
      Когда вставляю в него переходник - определяет, как RS-232. Я устанавливаю драйвера по инструкции. В диспетчере задач теперь определяется как Virtual Communication Port и подсвечивается желтым восклицательным знаком. Но ни одна терминальная программа его не видит.
      Как это исправить? Обязательно нужна вин 7 х32?
×
×
  • Create New...