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

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 13 mar 2025, o 21:04


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
    Autor Wiadomość
    PostNapisane: 10 kwi 2015, o 11:03 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 02 kwi 2015
    Posty: 450
    Pomógł: 3

    Witam!
    Bardzo proszę o pomoc w pokazaniu struktury najprostszego programu zawierającego wszystkie elementy konieczne do obsługi UART z przerwaniami. Zgłębiłem kilkakrotnie rozdział o UART z BB. Rozumiem ideę bufora cyklicznego i jego działanie. Rozumiem jak działają funkcje uart_getc() oraz uart_putc. Rozumiem jak wywoływane są przerwania i co robią (ISR(USART_RXC_vect) oraz ISR(USART_UDRE_vect)). Korzystam z biblioteki mkuart.h. Problem w ogarnięciu całości kompleksowo - struktura programu. Postanowiłem w pętli głównej programu włączać i wyłączać diodę LED. W międzyczasie nie przeszkadzając programowi głównemu wysyłać do terminala a i natychmiast odbierać [a]. Gdzie umieścić w/w funkcje, a gdzie przerwania. Jak to napisać.
    Pozdrawiam serdecznie
    avrfun



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 kwi 2015, o 12:05 
    Offline
    Moderator
    Avatar użytkownika

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

    Zajrzyj do rozdziału "Wstęp do systemów czasu rzeczywistego" i tam jest opisany taki wielozadaniowy program, w którym też masz pokazane jak na dłoni jak wśród tych wielu zadań posługiwać się i wysyłaniem i prostym odbieraniem bajtów, właśnie po to aby np z terminala sterować zapalaniem diody LED. Na prawdę spróbuj to poczytać i przyjrzeć się przykładowi a potem napisz czego nie rozumiesz.

    _________________
    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: 10 kwi 2015, o 12:45 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 02 kwi 2015
    Posty: 450
    Pomógł: 3

    Bardzo dziękuję za podpowiedź. Do tego rozdziału rzeczywiście nie dotarłem - zaraz zaczynam! Problem mam w globalnym spojrzeniu na całość takiego programu. Myślę sobie tak:
    1. Pętla główna main, a w niej:
    a. inicjalizacja UART
    b. odblokowanie przerwań
    b. pętla while(1), a w niej obsługa diody LED_ON i LED_OF (i tak non-stop)
    2. Chciałbym teraz z wykorzystaniem funkcji uart_putc wysyłać dowolny znak z klawiatury do terminala w PC np. znak a
    3. Chciałby także odebrać go od razu w zmienionej postaci np. w nawiasie klamrowym np. [a]
    W której części programu użyć tych funkcji i jak?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 kwi 2015, o 13:55 
    Offline
    Moderator
    Avatar użytkownika

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

    avrfun napisał(a):
    W której części programu użyć tych funkcji i jak?

    No przecież piszę - że w książce w tym rozdziale o jakim wspomniałem masz to opisane i pokazane na przykładzie

    _________________
    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: 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