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



Teraz jest 27 kwi 2024, o 22:18


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 14 ] 
Autor Wiadomość
PostNapisane: 4 mar 2017, o 20:51 
Offline
Użytkownik

Dołączył(a): 23 cze 2014
Posty: 54
Pomógł: 0

Witam.
Mam taki problem, przychodzi mi po rs232 około 3.000 bajtów w jednej paczce, jest tam wiele 00, ponieważ comport odbiera dane jako string, to przechodzi z reguły do 255 znaków, czasami mniej. Funkcja trim działa dziwnie, tzn przychodzi pierwsze "zdanie", kolejnych kilka ignoruje i potem jest kilka pojedynczych znaków. Pomimo paru dni spędzonych nad tym problemem brakuje mi wiedzy i sposobu w jaki sposób odebrać taka ilość danych, zapisać ją w formie bajtów (hex) do tablicy, z której potem sobie wyciągnę interesujące mnie zakresy danych. Czy może ktoś z kolegów/ koleżanek może podpowiedzieć sposób jak to osiągnąć ? Dziękuję.



Ostatnio edytowano 4 mar 2017, o 20:55 przez north, łącznie edytowano 2 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 mar 2017, o 21:41 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 mar 2014
Posty: 330
Lokalizacja: Rybnik
Pomógł: 54

A może zamiast comport spróbujesz użyć Async Professional? Wydaje mi się, że ma większe możliwości, chociaż comport używałem ostatnio kilka lat temu, a z Async korzystam od kiedy mam delphi 10.

Załączam "przewodnik programisty" gdzie wszystko fajnie opisano, wraz z przykładami realizacji odbierania, nadawania itp.

To jest tylko sugestia, może ktoś kto jest na bieżąco z comport coś podpowie.


Załączniki:

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

_________________
Amatorska stacje meteorologiczna



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 mar 2017, o 22:20 
Offline
Moderator
Avatar użytkownika

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

No jak można mówić, że Comport czy Async odbiera dane ASCII zakończone enterem ? ... no na prawdę panowie, litości - litości

toż jak sobie ustawisz - tak odbiera. Ja akurat pokazuję to co NAJPROSTSZE czyli właśnie komunikację ASCII i to dla kogoś oznacza, że TYLKO taka komunikacja jest możliwa za pomocą komponentów które pokazuję ? ... no litości - toż pokazywałem specjalnie co zrobić żeby odbierało właśnie STRINGI

a jak ktoś chce binarkę to ? co ? nie da się ?

A może jednak trzeba troszkę pokombinować i już dalej poszukać troszkę we własnym zakresie jak to zrobić ? No toż nie pokażę wszystkiego naraz

Najgorsze jest jednak to, że początkujące osoby upierają się jak .... nie powiem co, że MUSZĄ mieć binarkę bo im się wydaje że tak łatwiej zaś ze stringami i ich parsowaniem trudnie - a później? A później właśnie zgrzytanie zębami i rwanie włosów z głowy, że jednak z tą binarką to jest dużo więcej zachodu i własnej pracy

nie ma że boli - transmisja binarna to często jakieś specyficzne własne ramki o określonej konstrukcji i trzeba sobie tworzyć umiejętnie do każdej z nich analizę i nadchodzących i wychodzących danych ... NAWET jakbym pokazał to na jakimś przykładzie X to mogę się założyć, że dalej przy takim podejściu - że bez poradnika to już sam nic nie zrobię - i tak okazałoby się, że zaraz będzie pytanie ....

"a ja mam inną ramkę niż w poradniku i komponent mi jej nie odbiera, jak to zrobić?"

NIE - panowie .... tu trzeba na prawdę już włożyć sporo własnej pracy ale zanim .... to NAJPIERW NAJWAŻNIEJSZE ...

bo często też początkujący rzuca się na binarkę podczas gdy nawet nie opanował dobrze i nie rozumie prostszej komunikacji ASCII na stringach - więc najpierw warto poćwiczyć do bólu to ze stringami i z pełnym zrozumieniem i na różnych przykładach w tym swoich

a później powoli przechodzić na binarkę przez rs232

-------------------------------

tak tylko ogólnie podpowiadam bo no ciężko mi się słucha - że te komponenty o których mówiłem radzą sobie TYLKO ze stringami - to już lekka masakra i pokazuje to nawet, że pewnie autor nawet i tych poradników dokładnie nie obejrzał - mam rację ?

Nie piszę tego broń BOŻE złośliwie ... pragnę tylko zwrócić uwagę jak należy podchodzić do przekazywanej wiedzy w poradnikach i jak samemu zaczynać

- podpowiedź na koniec

Popatrz że pan sobie na komponenty ComDataPacket oraz na ich właściwości a następnie spróbuj sobie je wykorzystać np do ogarniania twoich ramek jeśli mają oczywiście jakąś konkretną konstrukcję te ramki, jakiś format - i ty go znasz. Bo jeśli nie znasz to czeka cię długa droga i rozgryzanie samemu formatu - też się da ;) no ale czasu więcej zejdzie

NA KONIEC:

Nie ma cudownych komponentów na świecie do żadnego języka które odbiorą ci KAŻDY rodzaj komunikacji binarnej - a jeśli myślisz że tak jest to znaczy, że jeszcze długo trzeb poćwiczyć i poczytać podstawy troszkę - bo inaczej się nie da - no nie da.

_________________
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: 4 mar 2017, o 23:02 
Offline
Użytkownik

Dołączył(a): 23 cze 2014
Posty: 54
Pomógł: 0

Dziękuję za wskazówki, Zapoznam się z asyncpro.
Mirku wydaje mi się że jak napisałem - problem nie leży po stronie komponentów, tylko mojej wiedzy. Oglądam Twoje poradniki i bardzo je cenię, ale nie twierdzę na ich podstawie, że te komponenty radzą sobie tylko ze stringami, podkreślam co napisałem - że brakuje mi w tym temacie wiedzy i nic innego nie sugerowałem. Dane z urządzenia niestety mam w postaci binarnej, ale ich strukturę mam już rozpracowsną, dotąd pracowałem nad tym przy pomocy makra w windowsie, excela i terminala, się teraz chciałem to zautomatyzować w Delphi , traktując to jako dobrą okazję do nauki...
Bardzo dziękuję za wskazówki, jutro spróbuje dalej podrążyć temat.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 mar 2017, o 00:59 
Offline
Moderator
Avatar użytkownika

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

north napisał(a):
ale ich strukturę mam już rozpracowsną,

... a no to już dużo lepiej - jak mówię - poszukać czy uda się ją że tak powiem "łapać" za pomocą znaczników STARTU i KOŃCA ramki na przykład. Albo będzie trzeba też może kombinować inne metody ..

_________________
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: 6 mar 2017, o 19:48 
Offline
Użytkownik

Dołączył(a): 23 cze 2014
Posty: 54
Pomógł: 0

Dzięki za podsunięcie asyncpro. Z dokumentacji wynika że to jest dokładnie to, czego potrzebuję, niestety nie chce się skompilować przy instalacji komponentu w Delphi Berlin starter ani na win 10, ani na win 7. Czy ktoś kojarzy czy jest możliwość instalacji w nowym Delphi takiego nieco starszego komponentu ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 mar 2017, o 20:03 
Offline
Moderator
Avatar użytkownika

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

north napisał(a):
niestety nie chce się skompilować przy instalacji komponentu w Delphi Berlin starter ani na win 10,

Jak to się nie chce - a co ja pokazuję w poradnikach o Delphi ? toż dokładnie to pokazywałem i wszystko śmiga - może trza obejrzeć?

_________________
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: 6 mar 2017, o 21:01 
Offline
Użytkownik

Dołączył(a): 23 cze 2014
Posty: 54
Pomógł: 0

Mirku oglądałem kilka razy, są świetnie przygotowane, Według nich instalowałem comport I mkusb i asyncpro, którego potem zgodnie z poradnikiem odinstalowałem :). Tego próbowałem zainstalować ze strony developera, ale teraz sprawdziłem że to jest właśnie ten sam komponent :). Dzięki za podpowiedź, walczę dalej.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 mar 2017, o 13:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2014
Posty: 279
Lokalizacja: Kraków
Pomógł: 4

Oj Mirku, bardzo się przydadzą te delphiniarskie poradniki!
Oby takich więcej powstało!

_________________
http://forum.atnel.pl/topic15633.html



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 mar 2017, o 13:45 
Offline
Moderator
Avatar użytkownika

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

Będą będą powstawać bo widzę, że zainteresowanie rośnie - szczególnie gdy wiele osób zobaczyło w jak MEGA PROSTY i szybki sposób można budować swoje własne aplikacje w defiaczku ;)

_________________
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: 14 mar 2017, o 14:13 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 16 mar 2014
Posty: 745
Lokalizacja: Warszawa
Pomógł: 32

mirekk36 napisał(a):
wiele osób zobaczyło w jak MEGA PROSTY i szybki sposób można budować swoje własne aplikacje w defiaczku
No jestem wręcz porażony ogromem wiedzy, jaką przekazałeś Mirku w poradnikach :-)
Ja nadrabiam teraz wiedzę z zakresu ATNEL-WiFi232-T i już mi całe tabuny pomysłów kłębią się w głowie jakie to super aplikacje można sobie stworzyć w delfiaczku do sterowania tymi zacnymi modułami :-)
Może właśnie w którymś odcinku udałoby się pokazać jakiś fajny przykład z wykorzystanie właśnie ATNEL-WiFi232-T ??? :-)

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 mar 2017, o 16:34 
Offline
Moderator
Avatar użytkownika

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

MikieMan napisał(a):
Może właśnie w którymś odcinku udałoby się pokazać jakiś fajny przykład z wykorzystanie właśnie ATNEL-WiFi232-T ???

Ba, no pewnie że o tym będzie ale do tego się specjalnie przygotowuję bo tu będzie mam nadzieję niemała niespodzianka ;)

_________________
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: 14 mar 2017, o 19:33 
Offline
Użytkownik

Dołączył(a): 23 cze 2014
Posty: 54
Pomógł: 0

Poradniki polecam, podoba mi się pomysł z płatnymi paczkami projektów, plików, jest to dobra alternatywa dla wsparcia przez firmy zamiast patronite, gdzie nie ma możliwości otrzymania faktury. Ja z odbiorem binarek sobie poradziłem, użyłem komponentu communicationlab firmy mitov i buforów danych. Nieocenione usługi w programie oddaje mi komponent atnelowski mkusbcalculator. Program na ukończeniu, działa. Odczytuje i przekodowuje sektory kart mifare. W ten sposób ułatwiełem sobie pracę, nauczyłem się odrobinę Delphi. Rozważam zakup Delphi do celów komercyjnych, bo pisze mi się w nim łatwiej niż w visual studio, ale to moja subiektywna opinia. W każdym razie to był mój pierwszy program w Delphi i na pc , bo w vs nie udało mi się tego osiągnąć- na pewno da się to zrobić w vs, ale mam za mało wiedzy, a w Delphi dzięki min poradnikom Mirka udało mi się to zrobić po paru popołudniach.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 mar 2017, o 22:08 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 16 mar 2014
Posty: 745
Lokalizacja: Warszawa
Pomógł: 32

mirekk36 napisał(a):
MikieMan napisał(a):
Może właśnie w którymś odcinku udałoby się pokazać jakiś fajny przykład z wykorzystanie właśnie ATNEL-WiFi232-T ???

Ba, no pewnie że o tym będzie ale do tego się specjalnie przygotowuję bo tu będzie mam nadzieję niemała niespodzianka ;)
To wspaniała wiadomość Mirku :-)
Moje marzenia zaczynają nabierać realnych kształtów :-)

_________________
.



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: 14 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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