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? 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 2 cze 2025, o 06:15


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
    Autor Wiadomość
    PostNapisane: 5 paź 2017, o 23:31 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 cze 2012
    Posty: 414
    Lokalizacja: Oborniki
    Pomógł: 5

    Witam ;)

    Ostatnio męczę 3 zakupione zestawy NUCLEO, jednym z nich jest płytka Nucleo 144 w wersji F767ZI. Zawiera ona mikrokontroler STM32 z rdzeniem Cortex-M7. Na płytce znajduje się również zintegrowany moduł ethernet. Chciałbym zacząć przygodę z tym rodzajem komunikacji, aczkolwiek nie mogę się doszukac jakichkolwiek przykładów. Przynajmniej na pewno nie takich dotyczących obsługi przez biblioteki HAL generowane w CubeMX.

    Udaje mi się ustawić interfejsy i zegary, ale nie mam pojęcia jak nawiązać jakąkolwiek komunikację za pomocą tego portu, a tym bardziej jak obsługiwać np stos TCP/IP.

    Pytanie też się nasuwa, czy warto/czy konieczne jest używanie FreeRTOS? Nie mam z nim doświadczenia, być może warto się go nauczyć, ale chyba wolałbym na początek działać chociazby za pomocą pętli blokujących lub ręcznie obsługując przerwania.

    Liczę na każde wskazówki :) pozdrawiam!
    Mikołaj

    Wysłane z mojego Redmi Note 4 przy użyciu Tapatalka

    _________________
    Pozdrawiam:
    Mikołaj



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 paź 2017, o 08:48 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 lut 2017
    Posty: 368
    Lokalizacja: Gliwice
    Pomógł: 34

    Ja również dołączam się do pytania, z tym że chyba poszło nie na ten dział forum co trzeba



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 paź 2017, o 10:29 
    Offline
    Użytkownik

    Dołączył(a): 15 lut 2012
    Posty: 344
    Lokalizacja: Bydgoszcz
    Pomógł: 11

    https://stm32f4-discovery.net/2015/02/l ... stm32f4xx/ - co prawda jest to opis dotyczący STM32F429 ale być może jakoś nakieruje na właściwe tory ;) .



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 paź 2017, o 12:56 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    https://github.com/cnoviello/stm32-nucleo144-f7

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 paź 2017, o 13:54 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 cze 2012
    Posty: 414
    Lokalizacja: Oborniki
    Pomógł: 5

    Dziękuję Wam za odnośniki. Zapoznam się z nimi w wolnym czasie :)

    Jeszcze takie pytanie - czy warto używać FreeRTOS?
    Projekt który planuję wykonać na STM32 to interfejs między TCP, a USART. To tak z grubsza :) reszta to obsługiwanie ramek i funkcje pośredniczące wymianie danych.

    _________________
    Pozdrawiam:
    Mikołaj



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 paź 2017, o 16:53 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    Powiem tak ...
    i tak i nie ... ale to zależy co ci jest potrzebne

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 paź 2017, o 18:10 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 cze 2012
    Posty: 414
    Lokalizacja: Oborniki
    Pomógł: 5

    No dobra, więc są postępy.

    Udało mi się skompilować standardowy projekt wygenerowany w STM32CubeMX pod moją płytkę (Nucleo 144 F767ZI).
    Płytka daje się pingować dopiero jak w pętli głównej umieszczę procedurę "MX_LWIP_Process();".
    Podczas próby kompilacji pojawia mi się kilka błędów:

    Obrazek

    Wygląda na to, że biblioteka poszukuje stałej:
    Obrazek

    tymczasem Cube generuje takie stałe:
    Obrazek

    Tymczasowo problem rozwiązuje dodanie na początku każdego pliku z nagłówkami definicji:
    Obrazek
    Czyli w stałych generowanych przez Cube nie powinno być członu "NUM_".


    Czy ktoś wie lub domyśla się gdzie popełniam błąd? Sprawdzałem jeszcze na innym komputerze, aby wyeliminować nieprawidłową instalacją CubeMX, problem pozostał. Wygląda, jakby CubeMX albo nie dołączało jakiegoś istotnego pliku, albo producent popełnił jakiś błąd.

    Proszę o pomoc :)
    Pozdrawiam:
    Mikołaj

    _________________
    Pozdrawiam:
    Mikołaj



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 paź 2017, o 14:11 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 cze 2012
    Posty: 414
    Lokalizacja: Oborniki
    Pomógł: 5

    Udało się.

    Generalnie jakby ktoś szukał przyczyny takich objawów, to nie ma błędu w bibliotece STM32, tylko jest to problem z ECLIPSE. Autor biblioteki lwIP użył różnych makr i stałe w stylu "MEM_TCP_PCB" nie są ustalane dosłownie tylko za pomocą makr #define . Tak naprawdę errory pojawiają się w edytorze Eclipse, ale kompilator radzi sobie z nimi bez problemu. Po prostu nie jest w stanie ich zindeksować.

    Biblioteka działa ;)


    Jak narazie mam jeszcze problem z wyciekiem pamięci, gdyż po wysłaniu kilku wiadomości do i z zestawu uruchomieniowego, transmisja się rozłącza i nie daje się nawiązać połącznenia ponownie. No, ale to już w dalszych testach :)

    _________________
    Pozdrawiam:
    Mikołaj



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 mar 2018, o 15:50 
    Offline
    Nowy

    Dołączył(a): 26 mar 2018
    Posty: 1
    Pomógł: 0

    Jest przykładowy projekt FreeRTOS+LWIP+ETH w firmware:

    Cytuj:
    ~/STM32Cube/Repository/STM32Cube_FW_F7_V1.11.0/Projects/STM32F767ZI-Nucleo/Applications/LwIP/LwIP_HTTP_Server_Netconn_RTOS/


    Użycie RTOS pozwala spawnować wątki. W moim projekcie komunikuję się z kilkoma urządzeniami więc to przydatne. Ten przykładowy projekt zawiera poprawną inicjalizację (GPIO, to co wygenerowałem w CubeMX miało błędy, chyba dlatego, że zmieniałem tryb z MII na RMII i ponawiałem generację), trochę musiałem poprawić pod tym kątem projekt CubeMX, a bezpośrednio użyć tego projektu z firmware nie mogłem, bo ma coś nie tak z adresami w skrypcie LD i działa tylko w trybie debug. Płytka odpowiada na pingi i działa serwer http (w swoim wątku).


    Chcę wysyłać pingi. Przykład w LWIP (w pakiecie/katalogu contrib) wymaga LWIP_RAW==1 w opcjach, ale to dziwne, powinno wystarczyć samo LWIP_ICMP==1 ? Wie ktoś?



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

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