Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 28 mar 2024, o 21:53


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 144 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4, 5  Następna strona
Autor Wiadomość
PostNapisane: 30 wrz 2017, o 09:37 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Mirku, nie wiem czy co kolwiek Ci to pomoże czy nie, ale z czystej ciekawości napisałem prosty programik przechwytujący komunikaty WM_DEVICECHANGE które dolatują do aplikacji.
Podczas podłączania ATB dolatuje 8 komunikatów w kolejności jaką masz w 1 kolumnie:
Obrazek

Podczas odłączania zestawu ATB dolatują tylko dwa:
Obrazek

W drugiej kolumnie wartości w hex WParam i LParam
Prawdopodobnie nic to nie da, ale przynajmniej się uczę komunikaty przechwytywać ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 09:46 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

ale gdybym nie znał tych szczegółów to bym nie napisał tego komponentu ;) toż oczywiste jest - że po pierwsze nie wszystkie komunikaty w ramach tego message są przydatne, że trzeba zwrócić uwagę tylko na niektóre a jeszcze ważniejsze żeby nauczyć się je odbierać i analizować asynchronicznie - bo po przypadku na twoim kompie widać że tu jest pies pogrzebany jeśli chodzi o problem w moim komponencie ...

zwróć uwagę, że interesują nas głównie:

DBT_DEVICEARRIVAL

DBT_DEVICEREMOVECOMPLETE

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 09:49 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Zgadza się - i takie wśród nich są. Tylko wspominałeś coś o kolejności i chciałem sobie zobaczyć jak kolejno dolatują ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 09:55 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

może hmmm sama kolejność nie jest jeszcze tak ważna jak np czas ich otrzymywania. Mi wynika, że u ciebie wręcz jakby przylatuje dwukrotnie DBT_DEVICEARRIVAL i to jest problemem - ale jak mówię, wydaje mi się

a gdybym mógł to tzn taki błąd generować na własnym kompie to byłoby mi dużo łatwiej wykryć bo mógłbym sobie używać DEBUGERA w delphi .... tymczasem to muszę robić programowe pułapki jak widziałeś i sprawdzać co chwilę inne warianty

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 12:27 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

DBT_DEVICEARRIVAL to hex 8000 a DBT_DEVICEREMOVECOMPLETE to 8004 ?? Chyba dobrze rozumiem... No to choćbym nie wiem co robił, zawsze przy podłączaniu i odłączaniu aplikacja rejestruje jeden komunikat. Nie liczę komunikatów DBT_DEVNODES_CHANGED bo tych jest sporo przy podłączaniu. Więc nie wiem co się dzieje, że komponent "dostaje" dwa komunikaty...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 12:47 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

A ja staram się to właśnie wyjaśniać i dochodzić ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 13:47 
Offline
Użytkownik

Dołączył(a): 14 sie 2016
Posty: 905
Pomógł: 39

mirekk36 napisał(a):
ważniejsze żeby nauczyć się je odbierać i analizować asynchronicznie

Chyba musiałbyś zrobić swój program w oparciu o wątki, albo buforować lokalnie wszystko co przyszło i dopiero potem poddać analizie...
Zastanawia mnie tylko dlaczego u Ciebie wychodzi dubel, skoro przechwycenie działa ja należy.

------------------------ [ Dodano po: 37 minutach ]

Artek, spróbuj wrzucić do swojego programu krótkiego delaya po każdym wywołaniu(o ile wrzucasz na listę hurtowo) - ciekawi mnie czy też będzie tyle samo messageów.
Wrzucasz na listę bezpośrednio po każdym wywołaniu, czy hurtem jak będą wszystkie? Coś mi dzwoni z czasów "serwerowych", tylko nie pamiętam gdzie ;)

_________________
Moje porady są błędne,nie czytać,zbanować od razu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 14:28 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Lista jest uzupełniana przy każdym wywołaniu procedury obsługującej komunikat - Jedno wywołanie = jedna pozycja na liście. Widać to chociażby po liczniku wywołań - ostatnia liczba w pierwszej kolumnie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 16:16 
Offline
Użytkownik

Dołączył(a): 18 lut 2015
Posty: 164
Lokalizacja: Koszalin
Pomógł: 16

A czy to nie jest wina sterownika Windows do chipsetu obsługujących HUB USB płyty głównej?
Może warto znaleźć nowe sterowniki do płyty i tego chipsetu i zobaczyć czy to coś zmieni.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 16:20 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

raczyk napisał(a):
A czy to nie jest wina sterownika Windows do chipsetu obsługujących HUB USB płyty głównej?
Może warto znaleźć nowe sterowniki do płyty i tego chipsetu i zobaczyć czy to coś zmieni.


Jak czytałeś cały wątek, to wiesz, że identyczny problem jest na dwóch zupełnie różnych komputerach. Więc wątpię, by sterowniki na obu były identycznie "uszkodzone" ;)
Poza tym przechwytywanie komunikatu jest poprawne... Tzn jest jeden komunikat o pojawieniu się urządzenia i jeden o "odejściu"...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 17:12 
Offline
Użytkownik

Dołączył(a): 14 sie 2016
Posty: 905
Pomógł: 39

Ja bym na miejscu Mirka z każdej procedur robił zrzut, albo chociaż licznik wywołań - wtedy by szybciej znalazł gdzie leży problem.

Wysłane ze srajfona.

_________________
Moje porady są błędne,nie czytać,zbanować od razu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 17:15 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Poczekajmy co Mirek powie, czy coś się w temacie jeszcze dzieje. Ale myślę, że pewnie tego tak nie zostawi ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 19:02 
Offline
Użytkownik

Dołączył(a): 14 sie 2016
Posty: 905
Pomógł: 39

W życiu są pewne tylko trzy rzeczy - śmierć, podatki i zawziętość Mirka, choćby miał zarywać kolejne nocki, to i tak wyrwie chwasta ;)

_________________
Moje porady są błędne,nie czytać,zbanować od razu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 19:03 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

:)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 21:25 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

Możesz teraz sprawdzić ?


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 21:35 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Błędów nie ma.
Reszta jak było, czyli OnNewComInfo wykonuje się dwa razy podczas podłączania ATB.
zdarzenie OnComDetect w porządku - wykonuje się raz.
Podczas podłączania przejściówki zdarzenie OnNewComInfo nie wykonuje się wcale.

Czyli wygląda tak, jakby nic się nie zmieniło...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 21:47 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

ok - teraz może wrócimy do błędu #133 ... ale może ??? no ciekaw jestem czy teraz może coś się zmieni u ciebie


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 21:54 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Teraz zdarzenia wykonują się poprawnie - po jednym razie przy ATB.
Przy przejściówce nadal OnNewComInfo się nie wykonuje.
Ale jest błąd ERR #133



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 22:08 
Offline
Użytkownik

Dołączył(a): 14 sie 2016
Posty: 905
Pomógł: 39

Mirku, spróbuj zrobić tak jak pisałem wcześniej - po każdej sekwencji zapisu do twojego bufora sprawdź jego zawartość. W sumie wystarczy ilość elementów, w ten sposób szybciej dojdziesz w którym miejscu pojawia Ci się błąd, to tylko taka szybka propozycja, bo mam wrażenie że jeszcze nie wiesz gdzie jest problem i szukasz po omacku.
Czyli, przechwytujesz messages z WMa - sprawdź ilość, po zapisie w swoim buforze znowu sprawdź, przy każdej operacji sprawdzaj.
Niestety nie masz za bardzo innego sposobu na debugowanie :/

_________________
Moje porady są błędne,nie czytać,zbanować od razu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 22:37 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

arturssp napisał(a):
Teraz zdarzenia wykonują się poprawnie - po jednym razie przy ATB.

O! czyli jakiś podstęp ;)

arturssp napisał(a):
Przy przejściówce nadal OnNewComInfo się nie wykonuje.

Qurdę - trza będzie znowu na TeamViewerze podziałać w tym wypadku

Harry napisał(a):
Mirku, spróbuj zrobić tak jak pisałem wcześniej - po każdej sekwencji zapisu do twojego bufora sprawdź jego zawartość.

To nie tak prosto bo jak mówię w komponencie nie chodzi tylko o przechwycenie tego jednego message'sa ale jeszcze innych z dekodowaniem danych zawartych w ich strukturach - no nie dam rady tego tak omówić dokładnie. Gdybym miał taką sytuację na swoim kompie to bym normalnie DEBUGEREM to przeleciał i widział co się dzieje - a tak? ... dokładnie jak mówisz troszkę po omacku bo zdarzenia mi się odpalają w komponencie w przedziwnych konfiguracjach jak widzę po efektach na razie

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 22:43 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

mirekk36 napisał(a):
Qurdę - trza będzie znowu na TeamViewerze podziałać w tym wypadku

Ok, daj tylko znać kiedy będziesz miał czas i chęci ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2017, o 22:50 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

teraz akurat mam problem z pewnym etapem tworzenia własnego komponentu w środowisku PSoC 5 ;) .... masakra ... ale jak jesteś OnLine teraz i nie śpisz jeszcze to daj znać mi na skype - a jak śpisz to może jakoś jutro się uda ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 paź 2017, o 11:39 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

No NARESZCZE ;) .... tzn nie jest do dobra informacja - jeszcze nie zrobione - ale udało mi się natrafić na taką maszynkę wirtualną z Win7 gdzie uzyskuję taki sam wynik jak u ciebie .... uuuuf no to teraz będę mógł to może szybciej debugować i może uda się to w końcu naprawić ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 paź 2017, o 11:48 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

No, to teraz przynajmniej masz na czym testować ;) Więc będzie Ci na pewno łatwiej wyłapać co się tam dzieje :)
Jak u Ciebie będzie ok, to sprawdzimy u mnie na realnym kompie :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 paź 2017, o 12:46 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

No! ..... Panie kochany .... chyba nadejszła wielkopomna chwila ;) .... taką mam nadzieję, u mnie na tej wirtualce już śmiga ;)

a u ciebie ? - proszę sprawdź szybciutko i daj mi znać ;) nie mogę się doczekać


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 paź 2017, o 13:06 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Sprawdziłem.
Przy ATB: zdarzenie OnNewComInfo wykonuje się raz. Tak samo i OnComDetect. Przy odłączaniu ATB - Debug ERR #133
Przy przejściówce nie ma błędów przy podłączaniu czy odłączaniu, ale przy podłączaniu nie wykonuje się OnNewComInfo.

Czyli jakby chyba nic się nie zmieniło... Pliki na pewno dobrze zamieniłem.....



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 paź 2017, o 13:26 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

a sprawdź ten mój EXE


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 paź 2017, o 13:29 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Błędów nie ma.

Tu dla ATB:
podłączono urządzenie USB: VID_0403 && PID_6001 id: AI9K76UF
podłączono urządzenie USB: VID_16C0 && PID_05DC id: ATB-USBASP
pojawił się port: COM4
------- new Com port Info -----------
COM4
USB Serial Port
VID_0403 & PID_6001
AI9K76UF
FTDI
FT232R
zniknął port: COM4
odłączono USB: VID_16C0 && PID_05DC id: ATB-USBASP
odłączono USB: VID_0403 && PID_6001 id: AI9K76UF
podłączono urządzenie USB: VID_0403 && PID_6001 id: AI9K76UF
podłączono urządzenie USB: VID_16C0 && PID_05DC id: ATB-USBASP
pojawił się port: COM4
------- new Com port Info -----------
COM4
USB Serial Port
VID_0403 & PID_6001
AI9K76UF
FTDI
FT232R
zniknął port: COM4
odłączono USB: VID_16C0 && PID_05DC id: ATB-USBASP
odłączono USB: VID_0403 && PID_6001 id: AI9K76UF


A tu przejściówka:
podłączono urządzenie USB: VID_0403 && PID_6001 id: A900famC
pojawił się port: COM5
zniknął port: COM5
odłączono USB: VID_0403 && PID_6001 id: A900famC



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 paź 2017, o 13:32 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

a zaraz - a co to za przejściówka ? ATB-USB-RS232 czy może jakaś inna ?

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 paź 2017, o 13:33 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Inna - "samoróbka" na układzie FT232RL.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 144 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4, 5  Następna strona

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO