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



Teraz jest 26 lis 2024, o 22:30


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 56 ]  Przejdź na stronę Poprzednia strona  1, 2
Autor Wiadomość
PostNapisane: 16 mar 2014, o 11:44 
Offline
Nowy

Dołączył(a): 12 mar 2014
Posty: 6
Pomógł: 0

Cały terminal mam, z tego forum (topic2232.html), więc działa.
Dołożyłem do niego obsługę protokołu UDP którym dostaję dane z innej aplikacji i to tez się udało - stąd mam wartości 0-1 lub 0-8000.
Dane UDP mają być wysyłane do AVR na konkretne zapytanie. Nie mam przy sobie procka dlatego zapytanie od AVR wysyłam sobie sztucznie z terminala (z pola tekstowego) i dzięki ECHO na kablu RS232 automatycznie odbieram tą samą aplikacją, jakbym otrzymał od AVR.

Zacząłem się mieszać przy tym, że procek AVR wysyła 10-15 zapytań jedno po drugim i mam odesłać w odpowiedniej kolejności wartości do każdego pytania. Nie wiem jak rozpoznać koniec pytania, wysłać odpowiedź i znowu czytać pytanie. Całość się później powtarza.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 12:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2011
Posty: 8587
Pomógł: 337

Spróbuj sobie uprościć życie wysyłając ramkę np:

pyt1,pyt2,pyt3,...........,pyt22[cr]

i po prostu przechwytuj całą ramke , a następnie pobieraj określoną ilość bitów ....
metod jest naprawdę wiele

_________________
Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 12:57 
Offline
Nowy

Dołączył(a): 12 mar 2014
Posty: 6
Pomógł: 0

Nie zrozumcie mnie źle, ale jutro muszę to przetestować z prockiem, a jak napisałem nie umiem C# więc mi nie pomagacie.
Całej ramki pytań nie chcę w tej chwili, bo nie robię projektu AVR tylko drugą część i mam takie wytyczne.
Moja rola to:
- odebrać na porcie "T1" i odpowiedzieć "20"
- widzę następne pytanie "T2" i odpowiadam "210"

Podrzućcie coś z kodem bo nie nauczę się do jutra a zrobić muszę. Dzięki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 13:09 
Offline
Moderator
Avatar użytkownika

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

mtr3 napisał(a):
Doszedłem do etapu, dzięki Waszym poradnikom, że potrafię wysłać terminalem tekst oraz odebrać go i wyświetlić w tej samej aplikacji dzięki zrobionemu ECHO na RS232.


mtr3 napisał(a):
a jak napisałem nie umiem C# więc mi nie pomagacie


Koledzy - no jak tak można ? ... chyba "powinniście przeprosić" teraz kolegę mtr3 za to że nie pomagacie!

mtr3 napisał(a):
Podrzućcie coś z kodem bo nie nauczę się do jutra a zrobić muszę


No właśnie - rzućcie wszystkie swoje obowiązki, rodziny i dawajcie tu wszyscy - nie widzicie ? trzeba za kolegę na jutro zrobić coś - wprawdzie nie wiadomo nawet dokładnie z pytań co - no ale to NIE WAŻNE, trzeba zrobić - więc nie zajmujcie się teraz po domach bzdetami - tylko hajda wszyscy do tego wątku - no bo przecież kolega "musi!" i co go to obchodzi - czy wy akurat możecie czy nie - po prostu wy też MUSICIE!

Przykro mi - ja mam tylko jedno określenie na takie zachowanie - ZGROZA!

_________________
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: 16 mar 2014, o 13:25 
Offline
Nowy

Dołączył(a): 12 mar 2014
Posty: 6
Pomógł: 0

Oj tutaj się zdenerwowałem Panie Mirku. Z całym szacunkiem, prosiłem tylko o pomoc, OK może o trochę gotowca, ale TYLKO prosiłem.

Nikogo nie zmuszam do tego, żeby robił coś dla mnie kosztem własnej rodziny, wystarczy, że sam jestem do tego zmuszany. Takie życie. Życzę miłej niedzieli i temat można uznać za zakończony. GRRR.


PS. Wykorzystania Waszego terminala nie ukrywam bo chciałem być uczciwy, a nie bezczelny (tak to Pan chyba chciał przedstawić). Praca nie będzie wykorzystana komercyjne.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 13:33 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 13 maja 2012
Posty: 174
Lokalizacja: Gliwice
Pomógł: 19

Dopisz sobie do funkcji która obiera dane kilka warunków.

Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 13:45 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2011
Posty: 8587
Pomógł: 337

Ale w czym kolega ma kłopot ??
ładujesz dane wejściowe do bufora , a potem sprawdź sobie czy przyszłą np to kolegi T1 :

nawet tak mało elegancko jak przedstawiłem wyżej :

Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


oczywiście musisz tu pilnować znaku CR , można to zrobić na milion różnych sposobów np wrzucając wszystkie [pytania jako jedną ramkę z procka o konstrukcji :

$T1,T2,T3, .......... T20[CR]

gdzie $ oznacza początek ramki a CR koniec
następnie jak masz ją w buforze odbiorczym to sobie odliczasz ilość danych do przecinka i odpowiadasz albo tez wysyłasz ramkę np : $TEMP,20,A,30,B,50,C,....................80[CR]

i tez wystarczy odliczać ilość bitów do przecinka itd ....

np :

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


miłej zabawy, natomiast co do roszczeń i wymagań ... proponuję napisać w dziale rybnym ..

_________________
Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



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

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

mtr3 napisał(a):
Oj tutaj się zdenerwowałem Panie Mirku. Z całym szacunkiem, prosiłem tylko o pomoc, OK może o trochę gotowca, ale TYLKO prosiłem.


Ja również z całym szacunkiem - nie na darmo przytoczyłem 3 cytaty ... myślę, że po prostu warto czasem precyzyjniej pisać o co chodzi no i podstawa - na prawdę nie stosować postawy roszczeniowej na forum. Tylko i wyłącznie to miałem na myśli. Również pozdrawiam i życzę miłej niedzieli.

_________________
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: 22 mar 2014, o 18:48 
Offline
Nowy

Dołączył(a): 12 mar 2014
Posty: 6
Pomógł: 0

Minęło troszkę czasu, odświeżam tylko po to, aby podziękować za pomoc. Zadanie zostało wykonane na czas. Teraz trwa nauka dlaczego tak :)

Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 wrz 2015, o 08:03 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 sty 2013
Posty: 80
Lokalizacja: Trzciniec
Pomógł: 0

Witam.
Bardzo dziękuję za przykład obsługi com.
Mam pytanie: Czy jest sposób w C# na znalezienie nazwy urządzenia podpiętego do portu COM?
Mam to opracowane dla FTDI ale używam też innych urządzeń.
Proszę o podpowiedź, bo po googlowaniu straciłem nadzieję na rozwiązanie problemu.

ps. Jak jest potrzeba, mogę podpowiedzieć jak to zrobić dla FTDI.

_________________
Zło dobrem zwyciężaj.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 wrz 2015, o 11:12 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

To podpowiedz ;) bo az mnie to ciekawi


Sent from my iPhone using Tapatalk

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 wrz 2015, o 18:39 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2011
Posty: 8587
Pomógł: 337

ja sobie szukam po VID , PID ... co bardzo lubię robić dla programów używających MCP2200 lub 2210 , dla FTDI też bez problemu po VID, PID , ale mozna tez sobie załadować z rejestru description name dla danego urządzenia

_________________
Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 wrz 2015, o 07:34 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 sty 2013
Posty: 80
Lokalizacja: Trzciniec
Pomógł: 0

Dla FTDI
W referencjach dodajemy FTD2XX_NET.dll ze strony http://www.ftdichip.com/Support/SoftwareExamples/CodeExamples/CSharp/FTD2XX_NET_v1.0.14.zip

Jest tam kod do pobrania dla C#

U mnie wygląda to tak:
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Bardzo przydatne jest wykrywanie zmian na portach com przez system:
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Działa, ale tylko z FTDI .

Dzięki Sun, zaraz biorę się za analizę Twojej podpowiedzi. :)

_________________
Zło dobrem zwyciężaj.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 wrz 2015, o 19:01 
Offline
Użytkownik

Dołączył(a): 16 maja 2012
Posty: 349
Lokalizacja: Legnica
Zbananowany użytkownik

Pomógł: 23

HI !
Tutaj kol.RafalJ pokazał również kawałek kodu. Myślę, że interesujący.
http://forum.atnel.pl/topic3694.html#p48901

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2015, o 10:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 sty 2013
Posty: 80
Lokalizacja: Trzciniec
Pomógł: 0

Dzięki Sun za naprowadzenie.
Odczytuję sobie w C# nazwy portów z rejestru z SYSTEM\CurrentControlSet\Enum wg VID , PID.
Gdzie mogę znaleźć informacje o fakcie podłączenia lub odłączenia urządzenia?
Mogę to zrobić przez sprawdzenie nazw portów z rejestru z nazwami z SerialPort.GetPortNames(), ale może da się inaczej (prościej, ładniej, szybciej).

_________________
Zło dobrem zwyciężaj.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2015, o 16:02 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2011
Posty: 8587
Pomógł: 337

W przypadku serial portu to nie jestem pewien czy się da tak łatwo jak przy USB sprawdzać czy coś tam jest podłączone
ale .. mozna sprawdzić czy jest już otwarty :) co robię np w SunDebunalu :)

_________________
Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 paź 2015, o 00:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 sty 2013
Posty: 80
Lokalizacja: Trzciniec
Pomógł: 0

W przypadku serial portu można sobie odczytać z rejestru : HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM
Znajdują się tam porty aktualnie podłączone do kompa.

_________________
Zło dobrem zwyciężaj.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 paź 2015, o 10:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2011
Posty: 8587
Pomógł: 337

panbosman napisał(a):
W przypadku serial portu można sobie odczytać z rejestru : HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM
Znajdują się tam porty aktualnie podłączone do kompa.


chodziło o sprawdzenie , wyświetlenie nazwy urzadzenia podłączonego do kompa przez Serial PORT,
w przypadku USB po prostu możemy przeczytać description i name z urządzenia bo aktualne porty COM można sobie pobrać metodą GetPortNames() z clasy SerialPort, o czym pisze zresztą
w poradnikach na temat serial portu

_________________
Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 paź 2015, o 14:59 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 sty 2013
Posty: 80
Lokalizacja: Trzciniec
Pomógł: 0

chodziło o sprawdzenie , wyświetlenie nazwy urzadzenia podłączonego do kompa przez Serial PORT,
Może wykonałem za duży skrót myślowy.
Tak jak napisał SunRiver:
Aktualne porty COM można sobie pobrać metodą GetPortNames()(tylko te fizycznie podłączone) a z rejestru odczytujemy po PID VID pełne nazwy urządzeń ( wszystkich, które były lub są podłączone).
Przez porównanie mamy pełne nazwy urządzeń aktualnie podłączonych

_________________
Zło dobrem zwyciężaj.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 gru 2015, o 14:37 
Offline
Nowy

Dołączył(a): 24 lip 2015
Posty: 19
Pomógł: 0

Mam problem z przesłaniem liczb z textboxów, pojawia mi się błąd "No overload for method 'WriteLine' takes 4 arguments" dla funkcji serialPort1 Ktoś wie o co może chodzić?
Kod:
try
            {
                int a = int.Parse(textBox1.Text);
                int ilosckrop = int.Parse(textBox2.Text);
                int odstczas = int.Parse(textBox3.Text);
                int wielkosckrop = int.Parse(textBox4.Text);
            }

            catch
            {
                errodan();
                return;
            }

            serialPort1.WriteLine("Kdozuj, I{0}O S{1}D C{2}V", textBox2.Text.ToString(), textBox4.Text.ToString(), textBox3.Text.ToString());




Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 gru 2015, o 15:23 
Offline
Użytkownik

Dołączył(a): 16 maja 2012
Posty: 349
Lokalizacja: Legnica
Zbananowany użytkownik

Pomógł: 23

Na moje oko to metoda WriteLine w klasie SerialPort przyjmuje tylko jeden argument typu string. Nie ma metody przeciążonej z czterema argumentami, chyba że sobie taką stworzysz w typie potomnym.

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 gru 2015, o 13:48 
Offline
Nowy

Dołączył(a): 10 gru 2013
Posty: 17
Pomógł: 0

Czy jest równie prosta metoda jak ta:
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


która pokaże nam nie listę dostępnych portów, ale listę sparowanych urządzeń Bluetooth ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 gru 2015, o 14:16 
Offline
Nowy

Dołączył(a): 24 lip 2015
Posty: 19
Pomógł: 0

A wie ktoś jak napisać kod w C#, który będzie zczytywał serial port w tle, aż coś do niego przyjdzie? Albo chociaż co jakiś czas w tle? Tak żeby to było bez przycisku, czy jakiejś akcji. Chodzi mi o to, żeby wyświetliło komunikat jak dostanie komunikat z serialport



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 gru 2015, o 22:21 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Odbiór danych jest realizowane przez event DataReceived, więc dzieje się to w tle.

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 sty 2016, o 14:27 
Offline
Nowy

Dołączył(a): 24 lip 2015
Posty: 19
Pomógł: 0

No tak, ale jak utworzyć funkcję w winforms, która będzie wywołana, jak będzie informacja w buforze?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 sty 2016, o 17:30 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

A przecież w tym wątku masz opisane odbieranie danych wraz podanym kodem. Więc nie rozumiem czego Ci brakuje.

--
Pozdrawiam,
Robert



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: 56 ]  Przejdź na stronę Poprzednia strona  1, 2

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