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 6 maja 2025, o 06:37


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 
    Autor Wiadomość
     Tytuł: STM32F302 UART
    PostNapisane: 6 lis 2020, o 18:34 
    Offline
    Użytkownik

    Dołączył(a): 30 paź 2016
    Posty: 45
    Lokalizacja: Poznań
    Pomógł: 0

    Cześć,

    Chciałem sobie wysłać jedną literkę np "s" przez USART w tym STM`ie.
    Zerknijcie proszę n kod i podpowiedzcie czego tam brakuje. bo nic na port nie wychodzi.
    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  
    PostNapisane: 6 lis 2020, o 20:38 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 19 lis 2015
    Posty: 219
    Pomógł: 20

    Ustaw jeszcze funkcje alternatywna dla pinu tx



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 lis 2020, o 21:53 
    Offline
    Użytkownik

    Dołączył(a): 30 paź 2016
    Posty: 45
    Lokalizacja: Poznań
    Pomógł: 0

    No jest. Piąty bit w GPIOA MODER
    Czy źle to czytam?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 lis 2020, o 22:34 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 19 lis 2015
    Posty: 219
    Pomógł: 20

    Musisz pod pin podpiac uart.
    Zobacz do na rejestry GPIOx_AFRL i GPIOx_AFRH



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 lis 2020, o 23:17 
    Offline
    Użytkownik

    Dołączył(a): 17 mar 2020
    Posty: 70
    Pomógł: 5

    dokładnie - włączyłeś tryb alternatywny, ale nie ustawiłeś dobrze jaki to tryb - czasem fartem akurat na "0" jest to co się chce i nie zauważa się wtedy tego błędu.


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 lis 2020, o 07:54 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 19 lis 2015
    Posty: 219
    Pomógł: 20

    GPIOx_AFRL i GPIOx_AFRH znajdziesz w RM mikrokontrolera a w DS znajdziesz tabelke z ktorej odczytasz jaka funkcja alternatywna (AFx) podpina TX pod dany pin.

    Obrazek



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 lis 2020, o 18:22 
    Offline
    Użytkownik

    Dołączył(a): 30 paź 2016
    Posty: 45
    Lokalizacja: Poznań
    Pomógł: 0

    Dzieki Jeżu !

    Czyli musze w AF7 włączyć pin 2 poru A.
    AF7 ma cztery bity. Wpisuje tam numer pinu?
    Brakuje mi w dokumentacji objaśnienia tej tabeli .



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 lis 2020, o 21:03 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 19 lis 2015
    Posty: 219
    Pomógł: 20

    Taki przykład dla lakiegoś uc.

    Obrazek

    Na pinie PA2 możesz mieć kilka funkcji. między innymi USART2_TX. Więc musisz dla tego pinu wybrać funkcje alternatywną AF7

    Masz 2 rejestry: GPIOA_AFRL (dla pinów 0 - 7) i GPIOA_AFRH (dla pinów 8-15)

    więc wpisujesz

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    - Do AFR2 wpisujesz 7 - funkcja alternatywna nr 7 dla pinu 2 portu A

    Lepiej będzie jak będziesz korzystał z plików CMSIS bo kod jest bardziej czytelny


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 lis 2020, o 21:18 
    Offline
    Użytkownik

    Dołączył(a): 29 gru 2013
    Posty: 82
    Pomógł: 3

    Numer funkcji alternatywnej dla danego pinu z podziałem na porty znajduję się w Datasheet'cie procka. Szukaj pod: Alternate functions selected through GPIOX... :)

    EDIT: w sumie widać to u Jeża na screenie :)


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 lis 2020, o 21:50 
    Offline
    Użytkownik

    Dołączył(a): 30 paź 2016
    Posty: 45
    Lokalizacja: Poznań
    Pomógł: 0

    OK.
    Ustawiłem AFR tylko nie (7<<11) a (7<<8)
    Jednak czegoś nadal brakuje w moim kodzie bo nie działa. Czegoś jeszcze nie włączyłem.
    ...a zegar? ten wpis do BRR wystarcza ?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 lis 2020, o 22:14 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 19 lis 2015
    Posty: 219
    Pomógł: 20

    BRR ustawiasz dla usart1 a pozniej CR1 dla usart2.


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 lis 2020, o 10:01 
    Offline
    Użytkownik

    Dołączył(a): 30 paź 2016
    Posty: 45
    Lokalizacja: Poznań
    Pomógł: 0

    Dzięki, teraz działa, ale jednak <<8 :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 lis 2020, o 12:29 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 19 lis 2015
    Posty: 219
    Pomógł: 20

    Cytuj:
    ale jednak <<8

    Dlatego warto korzystac z definicji CMSIS. Mozna uniknąć takich pomyłek. Pozs tym latwiej sie czyta kod niż dekodowanie zapisów (1<<17)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 lis 2020, o 14:37 
    Offline
    Użytkownik

    Dołączył(a): 30 paź 2016
    Posty: 45
    Lokalizacja: Poznań
    Pomógł: 0

    Może i się czyta łatwiej, ale jak mam pisać, to wolę w ten sposób ;)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 lis 2020, o 14:40 
    Offline
    Użytkownik

    Dołączył(a): 17 mar 2020
    Posty: 70
    Pomógł: 5

    tylko że napiszesz to raz, a czytać w przyszłości będziesz kilkanaście + potencjalnie też inne osoby - więc chyba to czytelność warto optymalizować



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

    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