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



Teraz jest 28 mar 2024, o 21:33


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 
Autor Wiadomość
PostNapisane: 23 maja 2017, o 21:42 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 18 lip 2014
Posty: 6
Pomógł: 0

Witam, kilka razy do roku zdarza mi się coś naskrobać w C. Ostatnio padło na komunikacje między dwoma atmegami 8. Biblioteka pochodzi z projektu z BB jak dobrze pamiętam. (te akurat miałem na dysku, płytki od GB nie mam pod ręką)

Inicjalizacja przebiega standardowo.

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


Później wiadomo inicjalizuję komunikację w pętli głównej:

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


W dalszej części pętli while(1) używam takich funkcji jak np.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Właśnie po użyciu np. funkcji uart_puts program zawiesza się na dłuższą chwilę. Po uarcie nic nie leci ani nie reaguje na odebrane wartości.

W pętli dioda ma migać co 200ms, robi kilka mignięć a później następuje przycięcie, miga dopiero po jakimś czasie. Nic takiego się nie dzieje do póki funkcję z biblioteki od uarta zostawię w spokoju. Tylko inicjalizacja jakoś przechodzi.

Jak to jest, że kopiując te same biblioteki i używając tych samych funkcji w jednym projekcie to może działać a w innych już nie? Nawet użyłem funkcji i konfiguracji z noty katalogowej i tam normalnie te procki przesyłają dane.

Może ktoś z was sprawdzić tą inicjalizację bo ręce mi już opadają.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 maja 2017, o 06:41 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lis 2012
Posty: 283
Lokalizacja: Warszawa
Pomógł: 17

Jesteś na forum 3 lata i nie wiesz, że kodów z książki się nie publikuje????????

_________________
Pozdrawiam
Grzegorz



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 maja 2017, o 07:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 cze 2014
Posty: 855
Lokalizacja: pod Warszawą
Pomógł: 58

cześć
Nie ma możliwości żeby biblioteki z BB lub GB nie działały.
Przyczyn może być wiele od złych połączeń, złego taktowania procesora, nieprawidłowo ustawionego bitrate lub prostego "babola" w kodzie. Piszesz o miganiu diody - a nie używasz czasem "delay_ms"?
Poświęć trochę czasu i obejrzyj poradniki P.Mirka na temat Uart-a i RS232 a gwarantuję Ci, że problemy się skończą

_________________
Pomóżcie mi stanąć na nogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 maja 2017, o 08:21 
Offline
Moderator
Avatar użytkownika

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

proponuję sobie obejrzeć to:

https://www.youtube.com/edit?o=U&video_id=IrtEPz0ftz0
https://www.youtube.com/edit?o=U&video_id=2LJ7Q6XE8Lk
https://www.youtube.com/edit?o=U&video_id=eqgrR-XbvIc
https://www.youtube.com/edit?o=U&video_id=a0IOBtia8DY

to dowiesz się gdzie babola robisz ...

a nawiasem mówiąc używanie biblioteki z BB zamiast z GB .... no to troszkę dziwne ;) toż w GB jest już w pełni pokazane nie tylko wysyłanie ale i odbiór na zdarzeniach pięknie

_________________
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: 24 maja 2017, o 14:26 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 18 lip 2014
Posty: 6
Pomógł: 0

buz11 napisał(a):
Jesteś na forum 3 lata i nie wiesz, że kodów z książki się nie publikuje????????


To tylko inicjalizacja którą możesz znaleźć w większości w nocie katalogowej a reszta nie raz widniała choćby w poradnikach.

Tak używam bibliotek z BB ponieważ tą miałem na dysku. Płytek od książek niestety nie mam teraz przy sobie a wystarczy mi odbiór i nadanie pojedynczych znaków.

Tak, używam w pętli głównej delaya ale z tym czy bez niego jest to samo. Inicjalizacja i odbieranie danych z noty katalogowej działa bez problemowo. Nie wiem po prostu co z tą biblioteką, że w jednym projekcie działa bez problemu a w programach na kilka linijek nie chce. Połączeń tam praktycznie nie ma, zasilanie, dioda i wyprowadzenia do przejściówki rs232 pod usb. Taktowanie mam dobre, próbowałem na wewnętrznym jak i zewnętrznym kwarcu.


//Edit

Już wiem co było nie tak. Brakowało mi zezwolenia na przerwanie.

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


Zgłaszam temat do moderatora. Jeśli kogoś razi ten fragment biblioteki to proszę wyrzucić do kosza ;)

//Edit2

Jeśli te linki były do poradników "rs-232 dla początkujących" to tam nie było rozwiązania problemu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 maja 2017, o 16:03 
Offline
Moderator
Avatar użytkownika

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

Spanish_Inquisition napisał(a):
Jeśli kogoś razi ten fragment biblioteki

z takim fragmencikiem nie ma problemu

_________________
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  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 8 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