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



Teraz jest 19 kwi 2024, o 02:00


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 82 ]  Przejdź na stronę Poprzednia strona  1, 2, 3
Autor Wiadomość
PostNapisane: 1 wrz 2013, o 15:25 
Offline
Moderator zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 18 lip 2012
Posty: 3187
Lokalizacja: Kraków - obok FAB5 ATMEL'a
Pomógł: 89

http://msdn.microsoft.com/pl-pl/library/bb397679.aspx



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 wrz 2013, o 08:02 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 57
Pomógł: 5

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

gdzie int przed parse pokazuje do jakiego typu ma być konwersja, może być też double .
Dla początkującego problemem może być to, że funkcja zwraca wyjątki, ale jak ktoś nie umie ich łapać, to może skorzystać z funkcji

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


wynik mamy w num2, a funkcja zwraca true albo false jeżeli udało się przekontrastować stringa



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 wrz 2013, o 10:03 
Offline
Użytkownik

Dołączył(a): 16 mar 2013
Posty: 157
Pomógł: 6

Mój problem polegał na tym, że chciałem do typu double przekonwertować stringa postaci "15.5" i C# wywalał komunikat o błędzie. Pozmieniałem kilka rzeczy i stringa otrzymywałem w postaci "15,5" i problem zniknął. Zwykłe:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
zadziałao. Tak jak pisze BARTB to właśnie był wyjątek i nie chciało działać.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 paź 2013, o 15:25 
Offline
Użytkownik
Avatar użytkownika

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

Cześć Panowie, mam jedno pytanie odnośnie portów COM. Kolega Michał pokazał bardzo fajny sposób na pokazywanie dostępnych portów:
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


a czy jest jakiś sposób aby zobaczyć nie tylko numery dostępnych portów COM ale również nazwę urządzenia podpiętego do danego portu?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 paź 2013, o 15:46 
Offline
Moderator
Avatar użytkownika

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

sz4t4n napisał(a):
a czy jest jakiś sposób aby zobaczyć nie tylko numery dostępnych portów COM ale również nazwę urządzenia podpiętego do danego portu?


Nie, ponieważ numerek portu nie jest związany w Windowsie z konkretnym urządzeniem ... tzn idąc od strony comportu.

_________________
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: 17 paź 2013, o 17:14 
Offline
Użytkownik
Avatar użytkownika

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

mirekk36 napisał(a):
Nie, ponieważ numerek portu nie jest związany w Windowsie z konkretnym urządzeniem ...


właściwie to jest ... i dokąd nie odinstalujesz sterowników dla urządzenia na porcie COM4 i go nie odłączysz to port zawsze jest przypisany do tego urządzenia ... a można je sobie m MU podglądnąć -- patrząc jakie sterowniki na nim wiszą ....
szkoda ... bo moim zdaniem powinny byc porty COM uwalniane gdy urządzenie jest odłączone ...
przez co niestety często trafia człowieka gdy podłącza coś do USB to się pojawia na COM160 , a oprogramowanie widzi tylko pierwsze 4 comy
i teraz kombinuj .... z zamianą numerów portów ...

No ale to tylko winzgroza z microshita ....

_________________
[b]San Escobar! Patria mia! Tu eres como la salud.[/b]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 paź 2013, o 18:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 24 cze 2012
Posty: 414
Lokalizacja: Oborniki
Pomógł: 5

SunRiver napisał(a):
mirekk36 napisał(a):
Nie, ponieważ numerek portu nie jest związany w Windowsie z konkretnym urządzeniem ...


właściwie to jest ... i dokąd nie odinstalujesz sterowników dla urządzenia na porcie COM4 i go nie odłączysz to port zawsze jest przypisany do tego urządzenia ... a można je sobie m MU podglądnąć -- patrząc jakie sterowniki na nim wiszą ....
szkoda ... bo moim zdaniem powinny byc porty COM uwalniane gdy urządzenie jest odłączone ...
przez co niestety często trafia człowieka gdy podłącza coś do USB to się pojawia na COM160 , a oprogramowanie widzi tylko pierwsze 4 comy
i teraz kombinuj .... z zamianą numerów portów ...

No ale to tylko winzgroza z microshita ....


Racja, przydałoby się ustawianie pamięci czy cos, bo mnie często się taka opcja przydaje, jak np pisze na szybko program, to nie muszę robić obsługi kilku COM:) ale fakt, że często może to bardziej denerwować niż pomagać:)

Wysłane z mojego GT-I9500 przy użyciu Tapatalk 4

_________________
Pozdrawiam:
Mikołaj



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sty 2014, o 14:05 
Offline
Nowy

Dołączył(a): 21 kwi 2013
Posty: 11
Pomógł: 0

Witam serdecznie.
Chciałbym aby kontrola numericUpDown1 zmieniała wartość po odczytaniu danych z portu serialPort.:

epromout
god1120min1150okr1150god2123min2159okr2159god3123min3159okr3159
god1223min1259okr1259god2223min2259okr2259god3223min3259okr3259
//...
endep

W tym celu w zdarzeniu private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e) inicjuje zmienne typu:

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



gdzie 11 to indeksy tablic jakie wysyła mega32 w pętli for np.: i,j ,a ostanie 2 cyfry to wartości np.:20 - dla godz11.
Teraz, aby te wartości wydobyć ze zmiennej text = serialPort1.ReadExisting(); (typu string) i wpisać je do kontrolki numericUpDown1.Value stosuję kod:

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




Problem w tym, że program dokonuje tego czasami nawet po kilkukrotnym wciśnięciu butona odczytu danych. Proszę o radę: seb311@wp.pl lub info na forum.


PROSZĘ POPRAWIĆ KODY -- SunRiver



Ostatnio edytowano 5 sty 2014, o 21:13 przez sebolek66, łącznie edytowano 2 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 sty 2014, o 15:38 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

To po co szukasz indeksu jak z tego nie korzystasz poza sprawdzeniem czy god11 jest w odebranym tekście:
sebolek66 napisał(a):
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 sty 2014, o 20:54 
Offline
Nowy

Dołączył(a): 21 kwi 2013
Posty: 11
Pomógł: 0

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

Dlatego, że wycinam 2 litery(tak litery) z wyrazu 7 literowego(god1120) począwszy od 6-tego znaku(czyli 5 bo od 0 liczba 5 jest szóstą). Ale prawdopodobnie na początku tego ciągu znaków jest jeszcze jakiś znak (cr,lf), nie wiem jaki i to jest nie ważne. Następnie dane wycinam prawidłowo czyli jak wyżej w kodzie.
I nie szukam indeksu tylko ciągu znaków(czyt. liter). Indeks jest tworzony w ATmedze i dodawany do wartości 20(czyli aktualna godzina). Panie Krauser jak się Panu wydaje co mikro wysyła na port liczbę czy ciąg znaków ASCII?
Składnia: [ Pobierz ] [ Ukryj ]
język cpp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Szukam tylko metody, która wpisze dane do numreicUpDown1 wartość za każdym razem kiedy te dane pojawią się na porcie/w terminalu. Nie jest tak ponieważ dane w terminalu pokazują się wciąż całe i niezmienne a wartości w numericUpDown albo nie wpisują się w cale albo wpisują nieprawidłowo (zamiast 20 wpisuje się np.:12).
Spróbuję z tablicą i w pętli podobnie jak tu:
http://www.homeandlearn.co.uk/csharp/csharp_s8p4.html

Dla chcących pomóc zapraszam na film demonstrujący problem:
http://www.youtube.com/watch?v=9BPOOX-0smU&feature=youtu.be



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 sty 2014, o 18:15 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

Doszło do nieporozumienia szanowny Panie ja akurat miałem na myśli indeks w tym sensie, że jest to miejsce gdzie w odebranym stringu znajduje się god11 (text.IndexOf("god11")), a nie indeksy tablic, które wysyła atmega. Z punktu wodzenia PC ważne jest to, że otrzymujesz jakiś string np:
^@#%god1120^*&^%$
Specjalnie umieściłem jakieś tam dodatkowe znaki i teraz jak już sprawdziłeś że god11 znajduje się w odebranym stringu to żeby poprawnie wyciąć 20 należy zacząć pobierać znaki nie od 5 elementu, ale od 5 + pozycja god11. Jak god11 jest na pozycji 0, czyli nic nie ma przed to wtedy masz 5 + 0 = 5, ale jak coś jest to należy odnieść się do num1, który tą pozycję przechowuje i pobrać znaki od pozycji/indeksu num1 + 5.

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 sty 2014, o 22:09 
Offline
Nowy

Dołączył(a): 21 kwi 2013
Posty: 11
Pomógł: 0

Wszystko już działa wspaniale. Może pokuszę się w przyszłości o krótki film. Kluczem do sukcesu jest zastąpienie funkcji serial.Port1.readExisting() funkcją serialPort1.readline(). Program od strony wizualnej nico się zmienił w związku z tym odczytem, ale może to i dobrze. Uzupełniłem go również o funkcje zapisu i odczytu treści textbox1 (open,save,save as) oraz możliwości drukowania i podglądu tej treści. Dzięki wielkie krauser za zainteresowanie. Pozdrawiam wszystkich forumowiczów.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 mar 2014, o 17:08 
Offline
Użytkownik

Dołączył(a): 23 sty 2014
Posty: 111
Pomógł: 0

Witam,
Próbował już ktoś zrobićł automatyczne przesuwanie wykresu(w lewo) w C#? Takie jak w programie Speedfan?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 sie 2014, o 14:38 
Offline
Użytkownik

Dołączył(a): 07 maja 2012
Posty: 119
Pomógł: 2

Witam, bawię się trochę C# z XAML, i mam taki oto problem:
W Xamlu mam taki kod:
Składnia: [ Pobierz ] [ Ukryj ]
język xml
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

I w trakcie działania programu chcę zmienić parametr margin, próbuję zrobić 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.

ale wyskakuje błąd:
"Error 1 Cannot implicitly convert type 'int' to 'System.Windows.Thickness' "
Mniej-więcej rozumiem o co chodzi, ale nie wiem jak to naprawić.
Zamiast 1 pisałem: "1" / "1.0" / "1,0" / 1 / 1.0 / 1,0
Ale żadna z opcji nie została zaakceptowana przez kompilator.

Znalazłęm to: http://msdn.microsoft.com/pl-pl/library ... 10%29.aspx
ale niewiele mi to pomogło.

Proszę o pomoc i pozdrawiam, sosnus



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 sie 2014, o 15:46 
Offline
Użytkownik
Avatar użytkownika

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

Jesli kojarzysz aplikacje do poradnikow http://forum.atnel.pl/topic7927.html to ona jest cala w WPF i XAML :)

Ale nie odbiegajac od pytania ... wiec jak sam widzisz podales link do dokumentacji ktora opisuje dokladnie jak sie zabrac za Twoj problem :)

Przede wszystkim "Thickness" jest struktura , ktora musi zostac zainicjalizowana

wiec
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
lub
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
w zaleznosci co chcesz ustawiac [DOL,LEWO,PRAWO,GORA] jesli sie nie myle

*Wartosci dobralem sobie tak po prostu :)

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 sie 2014, o 16:02 
Offline
Użytkownik

Dołączył(a): 07 maja 2012
Posty: 119
Pomógł: 2

ok, wieelkie dzięki :D
To mam jeszcze jedno pytanie. Można jakoś pokazać/ukryć grida?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 sie 2014, o 19:45 
Offline
Użytkownik
Avatar użytkownika

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

Pytaj ! Pytaj :)

Jak juz masz "name" dla swojego Grid'a
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


To uzywajac code behind - tylko ze to pomimo , ze nie widac go to zajmuje miejsce w design
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


a uzywajac tego - masz go ukrytego bez zajmowania miejsca :)
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 sie 2014, o 20:44 
Offline
Użytkownik

Dołączył(a): 07 maja 2012
Posty: 119
Pomógł: 2

Czegoś takiego właśnie szukałem, lecz tymczasowo poradziłem sobie inaczej, mianowicie... ustalałem
AddRecordPage.Margin = new Thickness(99999); dzięki czemu grid znikał z pola widzenia :D
W każdym razie już zmieniłęm na to, co napisałeś przed chwilą.
Kurcze, C# & XAML wciąga :P



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 sie 2014, o 08:30 
Offline
Użytkownik
Avatar użytkownika

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

Jak bedziesz mial jakies pytania do spokojnie pytaj :) jak bede wiedziec chetnie Ci pomoge

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 sty 2015, o 00:37 
Offline
Nowy

Dołączył(a): 21 kwi 2013
Posty: 11
Pomógł: 0

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





------------------------ [ Dodano po: 3 minutach ]

Polecam autorski program dla programatora multitool SFAR. Jak koś chce proszę na skype: sebolek66



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 kwi 2018, o 22:15 
Offline
Nowy

Dołączył(a): 12 kwi 2018
Posty: 1
Pomógł: 0

Witam wszystkich :)

Na wstępie chciałbym zaznaczyć ze raczkuje dopiero w językach programowania i dzięki za świetny poradnik.

Mam taki problem trochę a mianowicie przeanalizowałem i zrobiłem wszystkie przykłady MichalXY oraz SunRivera w C#, zrobiłem z 3 terminale z youtuba i niby wszystko wychodzi ale nie działa mi odbiór danych na terminal przez port Com z przetwornika ADC.

Na początku myślałem ze to może przez sposób "wyrzucania" danych do USART(ze terminale w C# musza dostać kokretny typ)
i w ARMie uzywałem funkcji zarówno printf jak i io_write ale to chyba tez nie przez to.
Boud rate, parzystosc ustawione tak samo.
W terminalu Atmel studio 7 jak i innch terminalach Tera Term oraz nawet jeden w javie tutaj na forum znalazłem wszystko ładnie wyświetlają.
A przerabiane z tego forum nie. Każdy terminal jaki zrobiłem w momencie kiedy chce odbierać dane wiesza mi się i trzeba robic alt+ctr+del na kompie :D

Wydaje mi się ze coś pomyliłem z typem danych jakie terminal dostaje a jakie chce dostawać ale cały weekend(od piątku zacząłem poznawać C#) nad tym spędziłem i dochodzę do wniosku ze nie wiem jak to zmienić. Ewentualnie jakby ktoś mogł powiedzieć funkcje albo gdzie czytelnie mogę znaleść to żeby serialport chcial dostawać inne znaki niz string. (Jezeli to tu jest błąd)


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



Obrazek





PS. przepraszam za wklejenie tak kodu, pierwszy raz to robie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 kwi 2018, o 15:40 
Offline
Użytkownik
Avatar użytkownika

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

JA jednak bym radził pisanie nowych tematów ze swoim własnym problemem
gdyż tasiemca nikt nie będzie przekopywał ...

------------- TEMAT DO SPRZĄTANIA ZOSTAŁ OZNACZONY
każdy nowy post z problemem będzie kasowany ...

_________________
[b]San Escobar! Patria mia! Tu eres como la salud.[/b]



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

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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO