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



Teraz jest 16 mar 2026, o 14:09


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 
Autor Wiadomość
 Tytuł: USART
PostNapisane: 14 gru 2016, o 21:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 08 lis 2015
Posty: 26
Pomógł: 0

Witam.

Czy w Eclipse coś może być nie tak ustawione, że przykład z BB 07_UART nie chce działać? Używam też gdzieś przy okazji lekcji z ADC zapisanej prostej biblioteki do UART i śmiga jak należy. Ta sama biblioteka w innym programie daje w Putty "krzaczki". I tak samo mam z przykładem z BB - Putty daje "krzaczki".

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


Na tej samej bibliotece program dający "krzaczki:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Może to i prosta sprawa, ale gdzieś utknąłem i nie mogę znaleźć rozwiązania ( parametry w Putty zmieniałem i sprawdzałem ).



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 14 gru 2016, o 21:41 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 lis 2015
Posty: 1448
Lokalizacja: okolice Warszawa
Pomógł: 149

pierwsza rzecz która wpadła mi w oko.
Robert_C napisał(a):
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 14 gru 2016, o 21:47 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 gru 2014
Posty: 1540
Pomógł: 269

Przecież to ćwiczenie służy do kalibracji oscylatora. Odpalasz to z wewnętrznym taktowaniem czy z kwarcem?
Przestaw sobie na wewnętrzny oscylator, ustaw 9600 w putty i sprawdź jeszcze raz. ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 14 gru 2016, o 21:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 08 lis 2015
Posty: 26
Pomógł: 0

Masz rację Daro :). To po drobnych zmianach zostało - było najpierw int. Ale to nie pomaga. Nie mogę znaleźć przyczyny, że w jednym programie wszystko jest OK, a w drugim nie działa. I to taki prosty kod!

------------------------ [ Dodano po: 1 minucie ]

Jest wewnętrzne 8 MHz, Putty na 9600. Sprawdzane kilka razy. Eclipse Gadget pokazuje tez 8MHz.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 14 gru 2016, o 21:54 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 lis 2015
Posty: 1448
Lokalizacja: okolice Warszawa
Pomógł: 149

Sprawdz tak jak anshar podpowiada.
A moze nie zmieniłeś w nowym projekcie taktowania w ustawieniach i częstotliwość jest nie zbieżna z prockiem. ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 14 gru 2016, o 21:58 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 08 lis 2015
Posty: 26
Pomógł: 0

Sprawdzałem.
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 14 gru 2016, o 22:17 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 lis 2015
Posty: 1448
Lokalizacja: okolice Warszawa
Pomógł: 149

U mnie Twój kod działa.
a nie skasowałeś niechcący sei(); ?

------------------------ [ Dodano po: 19 minutach ]

co prawda trochę wzór pomieszany, ale jest na Twojej funkcji.
Zauważ że oscyl = oscyl + zmienna. (czyli odjąć 20) a potem do już odjętej - znowu dodać "-19". razem odjąć już 39 ?
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 14 gru 2016, o 23:53 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 gru 2014
Posty: 1540
Pomógł: 269

@Daro69
Zrób proszę ten test jeszcze raz, ale tym razem wyświetl sobie również to co tak na prawdę znajduje się w OSCCAL.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Z tego co widzę to odpalasz z kwarcem, a nie na wewnętrznym oscylatorze, prawda?
Tutaj chodzi o to, by go skalibrować, dlatego ustawia się widełki +/- 20 od oryginalnej wartości w poszukiwaniu tej po środku, najbardziej optymalnej.

------------------------ [ Dodano po: 7 minutach ]

@Robert_C
Moim zdaniem twój program jest źle napisany, zmieniłeś OSCCAL, który teraz jest z poza przedziału, dlatego widzisz tylko i wyłącznie krzaki.

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

Odpal putty i obserwuj co się dzieje na ekranie. W końcu zobaczysz dla jakich wartości OSCCAL będzie wyświetlać prowidłowo. Wybierz tą środkową wartość i wpisz ją do OSCCAR: np: OSCCAR = 171;
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Następnie zobacz jak to się robi w BB, w rozdziale o którym sam przecież piszesz . Przecież masz tam eleganckie rozwiązanie. ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 15 gru 2016, o 00:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 lis 2015
Posty: 1448
Lokalizacja: okolice Warszawa
Pomógł: 149

Tak sprawdziłem - :)
na przedstawionym kodzie fajnie pokazałeś mi porównanie uint8_t z int_8t. :)
przy okazji troszkę zmieniłem żeby było po kolei. :D
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Tylko dlaczego koledze "Robert_C" to nie śmiga ? :?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 15 gru 2016, o 00:41 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 gru 2014
Posty: 1540
Pomógł: 269

Daro69 napisał(a):
Tylko dlaczego koledze "Robert_C" to nie śmiga ? :?

Rozkalibrował na maksa i ma teraz krzaki na krzakach. ;)
Musi znaleźć prawidłową wartość, wpisać ją do OSCCAL i ruszy.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 15 gru 2016, o 09:39 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 09 gru 2016
Posty: 2
Lokalizacja: Kraków
Pomógł: 0

Robert_C napisał(a):
To po drobnych zmianach zostało - było najpierw int.


I po takich małych zmianach często się wszystko sypie :P



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 15 gru 2016, o 21:25 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 08 lis 2015
Posty: 26
Pomógł: 0

Dzięki Koledzy za pomoc.

Działa mi dzisiaj, ale przy okazji mam pytanie do Was, jako doświadczonych. Żaden z programów podesłanych przez Was nie chciał działać, aż w końcu sprawdziłem AVRa przy pomocy mkAVRCalculator. Zegar pokazało mi w zakładce Fusy uproszczone 1MHz. I teraz pytanie - Eclipse Gadget pokazywał 8MHz i ustawienia w Eclipse były na 8MHz (zrzut ekranu podsyłałem) . W programie, który pokazywałem jako dobrze działający miałem procesor ustawiony na 8MHz i UART pokazywał co trzeba. Na tym samym procesorze w ATB1.04 mam sprawdzone inne programy na 8MHz i działają dobrze. Czy mogłem gdzieś zegar w procesorze przypadkowo przestawić? Eclipse nie jest jeszcze na pewno moją mocną stroną :).
Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: USART
PostNapisane: 15 gru 2016, o 21:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 lis 2015
Posty: 1448
Lokalizacja: okolice Warszawa
Pomógł: 149

a bo Eclipse Gadget wskazuje ustawienia w eclipse (programu) a nie procesora. ;)
Zmień w projekcie częstotliwość w ustawieniach to i zmieni się w Eclipse Gadget, pomimo że uC nadal jest taktowany poprzednią częstotliwością. :)

------------------------ [ Dodano po: 1 minucie ]

ustawienia uc pokazuje mkAVRCalculator .



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

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