Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Ступор с PIC и USB интерфейси
http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=17907
Страница 1 от 1

Автор:  ig_ivanov [ Пет Юни 11, 2021 9:06 am ]
Заглавие:  Ступор с PIC и USB интерфейси

Правя едно устройство (USB тестер) с PIC16F1459, което трябва да "разбере", че е закачено на USB порт още с включването на захранването.
В момента няма проблем с функциите, които съм вградил вътре и разпознаването на USB интерфейса, когато не са с последните "подобрения" вътре.
Какво се случва: когато включа тестера към USB букса на дънна платка, на която чипсета е преди 8мо поколение за процесори на Intel, съответно за AMD процесора да не е Ryzen, устройството разбира без проблем малко след включване на захранването. В останалите случаи инициализацията е чак след логото на операционната система, което не ме устройва.
Някои ще може ли да удари едно рамо за причината за този проблем и дали дървото е в самото пикче?

Автор:  syscop [ Пет Юни 11, 2021 9:54 am ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

Това "разбере" какво означава?
а - вижда захранването по шината
б - вижда хост контролера
в - нещо друго

Автор:  ig_ivanov [ Пет Юни 11, 2021 10:05 am ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

Когато шината е изправна, се закача като външно устройство и дава индикация, че всичко е ОК.

Автор:  miro_atc [ Пет Юни 11, 2021 10:52 am ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

ig_ivanov написа:
В останалите случаи инициализацията е чак след логото на операционната система, което не ме устройва.
Някои ще може ли да удари едно рамо за причината за този проблем и дали дървото е в самото пикче?


Споко, не звучи като проблем с пикчето ти. Все пак ако имаш трейс или сниф да видиш какво се случва ще може да потвърдиш това. Нормалната логика е първо да видиш захранване. При това трябва да се инициализираш, но все още нямаш право да дърпаш ток или да комуникираш каквото и да е. Задължително трябва да изчакаш следващата стъпка - хоста да направи бъс ресет. Това е много кофти условие, но по стандарт е така, трябва да игнорираш всичко докато не видиш ресет. След това може да разрешиш приемането, след това да изчакаш хоста да ти сетне адрес, разбира се да ти изчете конфигурацията да ти сетне конфигурация/функция. И накрая вече според класа устройство дето си може да почнеш или да трябва да изчакаш още някоя подробност. Примерно ако си виртуален ком да ти сетнат и параметри и някой от другата страна да се закачи.

По стандарт, обаче няма изисквания за времена. Освен за ресетите колко да са дълги и колко след подаване на захранване, но кога операционната система ще реши да те обслужи си е 100% нейно право. Тя може да го направи преди да изкара лого, или след него... Щом не си мас сторидж и не бутва от теб, ще чакаш докато не й потрябваш ;-)

Автор:  bongo_x2 [ Пет Юни 11, 2021 2:48 pm ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

Пък аз се сетих как някои китайчета ми зациклят линукса при стартиране: рестартирам едикоеси, рестартирам едикоеси, рестартирам едикоеси, докато не издърпам китайчето.

Автор:  ig_ivanov [ Сря Юни 16, 2021 9:06 am ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

Оправих го.
Тъй като PICa получава захранване още при включване в USB буксата (от акумулатор), смених мястото на инициализация на USB модула му.
USB модула на PICa вече се инициализира не когато се включи захранването му, а когато на USB буксата, в която е включен тестера, се появи захранването от +5В. Вече е пробвано успешно с лаптопи с Ryzen 7 и i5 десето поколение. С преходник се разпознава и на USB-C букса, включително и на мобилните телефони.

Автор:  Реконструктор [ Пет Юни 18, 2021 10:45 pm ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

Само да вметна, че има дъна (особено на лаптопи), които пускат +5 чак след разни проверки (най-вече заряда на батерията).

Автор:  ig_ivanov [ Съб Юни 19, 2021 2:33 pm ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

Точно това е идеята. USB портовете се инициализират последни- заедно с показването на логото на машината на екран. Т.е. ако съм разпънал на масата някое дъно за ремонт и искам да разбера дали интервенцията е успешна, не е необходимо разпъвам кабелите на екрана или да монтирам дъното обратно в корпуса, за да видя има ли кино (а ако няма, следва поредно разкачане и разглобяване). Включвам тестера в някое USB и ако всичко е наред, той ми дава зелена светлина.

Автор:  Реконструктор [ Съб Юни 19, 2021 2:50 pm ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

А, ок, значи съм разбрал грешно, мислех, че ти трябват +5 с натискането на копчето :)

Автор:  ike [ Съб Юни 19, 2021 11:59 pm ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

ig_ivanov написа:
Включвам тестера в някое USB и ако всичко е наред, той ми дава зелена светлина.

Направи си го сам: https://www.obdev.at/products/vusb/hidkeys.html
Новите биоси при стартиране активират USB клавиатурите - промени само да светва зелено като получи сетъп пакет от компютъра.

Автор:  ig_ivanov [ Пон Юни 21, 2021 4:24 pm ]
Заглавие:  Re: Ступор с PIC и USB интерфейси

Готов ми е тестера вече, няма какво повече да се бута по него.

Прикачени файлове:
USB_tester.jpg
USB_tester.jpg [ 177.55 KiB | Прегледано 534 пъти ]

Страница 1 от 1 Часовете са според зоната UTC + 1 час [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/