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



Teraz jest 14 sty 2025, o 16:21


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 30 cze 2015, o 13:15 
Offline
Użytkownik

Dołączył(a): 24 cze 2014
Posty: 113
Pomógł: 1

Witam,

temat już był nie raz poruszany na tym forum ale ja jako mocno początkujący nadal nie panuję w pełni nad kodem.
Mianowicie w projekcie chcę użyć bibliotek P. Mirka MK_TERMINAL. I to nie pierwszy raz - większość projektów testuję z użyciem terminala, bo to metoda genialna jak nie ma się wystarczająco "obfitego" wyświetlacza.
Jednak od kilku już dni nie mogę sobie z tym poradzić, a zachowanie układu po wgraniu wsadu doprowadza mnie do rozpaczy.
Poniżej prosty i oczywisty - tak mi się wydaje - kod:

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


No i problem polega na tym, że kiedy używam tylko przerwania INT0 (przełączenie przekaźnika - taki debuger zamiast diody) to wszystko ładnie działa. Ale jak tylko dodam inicjalizację UART - USART_Init( __UBRR ), to blokują mi się przerwania od INT0. Dodatkowo na terminalu nie wyświetla się tekst ale ekran się czyści.
Co ciekawe... co jakiś czas jak zakomentuję inicjalizację UART-a to nadal mam zablokowane INT0. Pomaga tylko przekopiowanie do nowego projektu.
Próby wykonywałem na docelowym układzie, który już wielokrotnie dobrze działał z innym bardzo podobnym kodem ale też testuję na zestawie ATB rev. 1.04
Wiem, że takie efekty pojawiają się kiedy używamy przerwanie w przerwaniu, a biblioteki z książki do UART są o nie oparte. Jednak ja tutaj tylko ustawiam flagę w przerwaniu, a resztę operacji wykonuję w pętli while(1).
Nie potrafię doszukać się miejsca w którym popełniam błąd - może ktoś z szanownych Forumowiczów pochyli się nad moim problemem i nakieruje mnie na właściwe tory.

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 cze 2015, o 13:40 
Offline
Użytkownik

Dołączył(a): 25 lut 2015
Posty: 252
Lokalizacja: Lublin
Pomógł: 23

Z tego co kojarzę na PD2 jest konfigurowany w UART RS485.
Masz zakomentowany ten RS?


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 cze 2015, o 13:46 
Offline
Użytkownik

Dołączył(a): 24 cze 2014
Posty: 113
Pomógł: 1

No i dokładnie to był ten problem :) Kompletnie o tym zapomniałem, że trzeba pozbyć się tego RS485.
Dziękuję za szybką i rzeczową pomoc.

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 cze 2015, o 13:49 
Offline
Użytkownik

Dołączył(a): 25 lut 2015
Posty: 252
Lokalizacja: Lublin
Pomógł: 23

Superbomba, bombiaście :)



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

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