Автор |
Съобщение |
ig_ivanov
Ранг: Напреднал
Регистриран на: Съб Май 21, 2016 8:47 pm Мнения: 476 Местоположение: Бургас
|
Ступор с PIC и USB интерфейси
Правя едно устройство (USB тестер) с PIC16F1459, което трябва да "разбере", че е закачено на USB порт още с включването на захранването. В момента няма проблем с функциите, които съм вградил вътре и разпознаването на USB интерфейса, когато не са с последните "подобрения" вътре. Какво се случва: когато включа тестера към USB букса на дънна платка, на която чипсета е преди 8мо поколение за процесори на Intel, съответно за AMD процесора да не е Ryzen, устройството разбира без проблем малко след включване на захранването. В останалите случаи инициализацията е чак след логото на операционната система, което не ме устройва. Някои ще може ли да удари едно рамо за причината за този проблем и дали дървото е в самото пикче?
|
Пет Юни 11, 2021 9:06 am |
|
|
syscop
Ранг: Форумен бог
Регистриран на: Пет Юни 03, 2005 8:39 pm Мнения: 1972
|
Re: Ступор с PIC и USB интерфейси
Това "разбере" какво означава? а - вижда захранването по шината б - вижда хост контролера в - нещо друго
_________________ Определянето стойността на дадена величина се нарича ИЗМЕРВАНЕ!
|
Пет Юни 11, 2021 9:54 am |
|
|
ig_ivanov
Ранг: Напреднал
Регистриран на: Съб Май 21, 2016 8:47 pm Мнения: 476 Местоположение: Бургас
|
Re: Ступор с PIC и USB интерфейси
Когато шината е изправна, се закача като външно устройство и дава индикация, че всичко е ОК.
|
Пет Юни 11, 2021 10:05 am |
|
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 5:52 pm Мнения: 10376 Местоположение: Добрич
|
Re: Ступор с PIC и USB интерфейси
Споко, не звучи като проблем с пикчето ти. Все пак ако имаш трейс или сниф да видиш какво се случва ще може да потвърдиш това. Нормалната логика е първо да видиш захранване. При това трябва да се инициализираш, но все още нямаш право да дърпаш ток или да комуникираш каквото и да е. Задължително трябва да изчакаш следващата стъпка - хоста да направи бъс ресет. Това е много кофти условие, но по стандарт е така, трябва да игнорираш всичко докато не видиш ресет. След това може да разрешиш приемането, след това да изчакаш хоста да ти сетне адрес, разбира се да ти изчете конфигурацията да ти сетне конфигурация/функция. И накрая вече според класа устройство дето си може да почнеш или да трябва да изчакаш още някоя подробност. Примерно ако си виртуален ком да ти сетнат и параметри и някой от другата страна да се закачи. По стандарт, обаче няма изисквания за времена. Освен за ресетите колко да са дълги и колко след подаване на захранване, но кога операционната система ще реши да те обслужи си е 100% нейно право. Тя може да го направи преди да изкара лого, или след него... Щом не си мас сторидж и не бутва от теб, ще чакаш докато не й потрябваш
|
Пет Юни 11, 2021 10:52 am |
|
|
bongo_x2
Ранг: Форумен бог
Регистриран на: Вто Яну 20, 2009 10:54 pm Мнения: 11338 Местоположение: "Занзибар"
|
Re: Ступор с PIC и USB интерфейси
Пък аз се сетих как някои китайчета ми зациклят линукса при стартиране: рестартирам едикоеси, рестартирам едикоеси, рестартирам едикоеси, докато не издърпам китайчето.
|
Пет Юни 11, 2021 2:48 pm |
|
|
ig_ivanov
Ранг: Напреднал
Регистриран на: Съб Май 21, 2016 8:47 pm Мнения: 476 Местоположение: Бургас
|
Re: Ступор с PIC и USB интерфейси
Оправих го. Тъй като PICa получава захранване още при включване в USB буксата (от акумулатор), смених мястото на инициализация на USB модула му. USB модула на PICa вече се инициализира не когато се включи захранването му, а когато на USB буксата, в която е включен тестера, се появи захранването от +5В. Вече е пробвано успешно с лаптопи с Ryzen 7 и i5 десето поколение. С преходник се разпознава и на USB-C букса, включително и на мобилните телефони.
|
Сря Юни 16, 2021 9:06 am |
|
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 11:32 am Мнения: 7895 Местоположение: София
|
Re: Ступор с PIC и USB интерфейси
Само да вметна, че има дъна (особено на лаптопи), които пускат +5 чак след разни проверки (най-вече заряда на батерията).
|
Пет Юни 18, 2021 10:45 pm |
|
|
ig_ivanov
Ранг: Напреднал
Регистриран на: Съб Май 21, 2016 8:47 pm Мнения: 476 Местоположение: Бургас
|
Re: Ступор с PIC и USB интерфейси
Точно това е идеята. USB портовете се инициализират последни- заедно с показването на логото на машината на екран. Т.е. ако съм разпънал на масата някое дъно за ремонт и искам да разбера дали интервенцията е успешна, не е необходимо разпъвам кабелите на екрана или да монтирам дъното обратно в корпуса, за да видя има ли кино (а ако няма, следва поредно разкачане и разглобяване). Включвам тестера в някое USB и ако всичко е наред, той ми дава зелена светлина.
|
Съб Юни 19, 2021 2:33 pm |
|
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 11:32 am Мнения: 7895 Местоположение: София
|
Re: Ступор с PIC и USB интерфейси
А, ок, значи съм разбрал грешно, мислех, че ти трябват +5 с натискането на копчето
|
Съб Юни 19, 2021 2:50 pm |
|
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 8:59 pm Мнения: 6019 Местоположение: София
|
Re: Ступор с PIC и USB интерфейси
Направи си го сам: https://www.obdev.at/products/vusb/hidkeys.htmlНовите биоси при стартиране активират USB клавиатурите - промени само да светва зелено като получи сетъп пакет от компютъра.
_________________ Warriors of the Night, ASSEMBLER!!!
|
Съб Юни 19, 2021 11:59 pm |
|
|
ig_ivanov
Ранг: Напреднал
Регистриран на: Съб Май 21, 2016 8:47 pm Мнения: 476 Местоположение: Бургас
|
Re: Ступор с PIC и USB интерфейси
Готов ми е тестера вече, няма какво повече да се бута по него.
|
Пон Юни 21, 2021 4:24 pm |
|
|