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 13 lip 2025, o 08:44


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 
    Autor Wiadomość
     Tytuł: Usypianie STM32
    PostNapisane: 9 wrz 2016, o 20:18 
    Offline
    Użytkownik

    Dołączył(a): 23 sty 2014
    Posty: 1085
    Pomógł: 73

    Witam,
    Koledzy jak w temacie, możecie coś podpowiedzieć jak wprowadzić mikrokontroler STM32L051 w stan obniżonego poboru prądu? Korzystam z CubeMX-a ale nie widziałem nigdzie konfiguracji takiego trybu. Podpowiecie coś?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 wrz 2016, o 22:32 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 291
    Lokalizacja: okolice Opola
    Pomógł: 20

    Tak podpowiem - w Reference Manual strona 144 rozdział 6.3 "Low-power modes"
    Chociaż wiem, że ryzykuję zlinczowaniem bo nastały takie czasy, że nikt już bez biblioteki HAL nawet diodą nie zamiga, a odpalenie jakiegoś peryferia bez tej śmiesznej stm-owskiej zabawki jaką jest CubeMX, jest w ogóle abstrakcją.

    Przepraszam cię od razu za moją uszczypliwość, bo oczywiście to nie twoja wina - skoro wokół każda książka jest oparta o biblioteki stm-a to też trudno popatrzeć na to z innej strony.


    Autor postu otrzymał pochwałę

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 wrz 2016, o 00:55 
    Offline
    Użytkownik

    Dołączył(a): 29 lip 2014
    Posty: 195
    Pomógł: 44

    Witam,
    Zajrzyj do biblioteki: STM32xxx_HAL_Driver, w pliku stm32fxxx_hal_pwr.c masz wszystkie potrzebne funkcje. Choć Bogiem, a prawdą te funkcje są tak proste, że muszę się zgodzić z kolegą krafin.

    Pozdrawiam, QuadMan.

    P.S. Trochę z przekorą: ja tam sobie tego CubeMX nawet cenię, w repozytoriach mam wszystkie biblioteki od ST, które z kolei często mi się przydają jako uzupełnienie DS ;-). No i drzewko zegarów i jeszcze "pinologia" - szybciej można znaleźć konfigurację AF dla poszczególnych pinów.


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 wrz 2016, o 05:06 
    Offline
    Użytkownik

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

    krafin napisał(a):
    Chociaż wiem, że ryzykuję zlinczowaniem bo nastały takie czasy, że nikt już bez biblioteki HAL nawet diodą nie zamiga, a odpalenie jakiegoś peryferia bez tej śmiesznej stm-owskiej zabawki jaką jest CubeMX, jest w ogóle abstrakcją.


    w sumie Cube nie używam , bo mnie jakoś mierzi ...
    ale czasy sa takie że trzeba iść do przodu i zycie sobie ułatwiać
    zauważ że nikomu nie potrzeba rejestrowych grzebaczy
    ze względu na nie przenośność kodu -- kody oparte o HAL
    są całkowicie przenośne między platformami sprzętowymi róznych dostawców krzemu
    a co za tym idzie , koszty oprogramowania są niższe i koszty zmian w EUA też są niższe
    dzieki czeku End User dostaje lepszy sprzet za te same lub niższe pieniądze

    Dlatego linczu się bać nie musiusz bo go nie będzie , nadmieniam tylko że należy mieć szerokie horyzonty
    i siedzieć do czego i w jakim celu powstały Biblioteki HAL i CMSIS , a nie jęczeć ze dłutem w skale jest lepiej
    jest owszem , ale nie do końca i nie zawsze taki programista jak ty jest komuś potrzebny :)

    teraz żebyś nie zrozumiał źle ....
    chodzi o to że twój kod jest sprawniejszy , ale jest zamkniety i ograniczony do 1 procesora
    wszelkie zmiany są skomplikowane i kłopotliwe co pochłania czas a to sa koszty ...

    Wiele firm wręcz nie interesuje jakim jesteś wymiataczem w programowaniu bezpośrednim
    a twoja znajomość i umiejętność pracy z CMSIS .

    Takie sa to czasy , sam musiałem się przestawić ... i tez jęczałem jak wszyscy że std to szajs , hal to badziewo
    tak jak niektórzy tutaj ... ale gdy zrozumiałem istotę okazało się że to słuszna i wygodna droga

    zrozum to ...


    Autor postu otrzymał pochwałę

    _________________
    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 wrz 2016, o 13:19 
    Offline
    Użytkownik

    Dołączył(a): 23 sty 2014
    Posty: 1085
    Pomógł: 73

    Panowie, dziękuję za zainteresowanie tematem, bardzo mi pomogliście :) w dyskusję na temat HAL, SPL i rejestrów nie wchodzę bo jak Internet długi i szeroki to można o tym czytać :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 11 wrz 2016, o 11:43 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 03 lip 2012
    Posty: 238
    Pomógł: 5

    Dodam że postęp w bibliotekowaniu ;) funkcyjności mikrokontrolerów doszedł już do etapu w którym to możemy już rzeźbić programy w C# , Visual Basic, tworząc całkowicie przenośny kod - głównie dodatkowe klasy o które jest oparty projekt.

    Oczywiście nie uruchomimy takiej kobyły (ale się zrymowało) na mikrokontrolerze wyposażonym w kilka kilobajtów RAM FLASH, ale w dzisiejszych czasach powiedzcie sami, kogo to interesuje czy mikrokontroler ma 80kb RAM czy 2mb? Ważna jest elastyczność i funkcjonalność oraz możliwość łatwej i szybkiej aktualizacji firmware a to umożliwiają właśnie te kobyły. Należy dodać że pisząc w takim Net Micro Framework nadal możemy bez problemu sięgnąć do rejestrów a na upartego napisać coś w czystym C. Można by pomyśleć że olbrzymią funkcjonalność ma RasperyPI , tylko ma jedną wadę :) pomiędzy sprzętem a aplikacją już jest OS i to w dodatku linux, i tu urządzenie żyje sobie własnym życiem co jest nie wskazane w używaniu takiej płytki w urządzeniu przemysłowym czy automatyki domowej np :)

    XBary



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 11 wrz 2016, o 14:40 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 291
    Lokalizacja: okolice Opola
    Pomógł: 20

    Tylko mam pytanie - w jakim stopniu stm-owski HAL jest przenośny na przykładowo procesory NXP czy Freescale.
    I nie chodzi mi wcale o CMSIS który jest uniwersalny i w pełni przenośny, tylko samą bibliotekę HAL?

    Bo jeżeli tym samym lub przynajmniej podobnym kodem obsłużymy I2C w zarówno stm32f051 jak i np. LPC1788 to obiecuję więcej złego słowa na HAL-a nie powiedzieć.

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 wrz 2016, o 08:02 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2015
    Posty: 140
    Zbananowany użytkownik

    Pomógł: 18

    Biblioteka HAL została stworzona wyłącznie dla procesorów marki ST. Nie zapewnia przenośności na mikrokontrolery innych producentów.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 wrz 2016, o 14:25 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 291
    Lokalizacja: okolice Opola
    Pomógł: 20

    I o tym właśnie mówię. Zapewnia przenośność tylko pomiędzy procesorami ST, w przeciwieństwie do CMSIS które jest uniwersalne i jednolite. Dla tego ja w ogóle nie potrafię dostrzec sensu używania jej bo raz trzeba się jej dodatkowo uczyć po czym i tak zazwyczaj trzeba przejrzeć RM procesora, bo i tak są pewne różnice.

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 wrz 2016, o 18:54 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 12 sie 2013
    Posty: 230
    Lokalizacja: Zabrze
    Pomógł: 17

    Wyobraź sobie, że podejmujesz pracę i musisz poprawić/naprawić/zmodyfikować programy innych programistów (np. tych co wcześniej pracowali na twoim stanowisku). Gdy używali bibliotek HAL stosunkowo łatwiej to zrobić, szczególnie, jeżeli programy tyczą kilku różnych uC STM-a, niż gdy kodowali bezpośrednio rejestry. Zatem jest oszczędność czasu i tym samym pieniędzy. Inny przykład: program przekracza dostępną ilość pamięci w danym STM-ie lub nachodzi potrzeba użycia dodatkowego peryferia, którego nie ma w danym STM-ie (a program jest już na ukończeniu) - znowu HAL zapewnia przenośność i szybkość, niż kodowanie bezpośrednie na rejestrach. Dla mnie jednak zaletą jest to, że analizując/poprawiając program, gdzie któreś peryferia nie działają, w przypadku HAL widzę od razu co jest jak ustawione. Przy drugim sposobie (kodowanie na rejestrach) muszę jednak sięgać częściej do dokumentacji - szczególnie, gdy dany procek jest mi nieznany.
    Oczywiście to jedna ze stron pozytywnych użycia HAL. Aby jednak nie było tak fajnie to są i wady (narzut na RAM, na czas działania itp. - niestety HAL nie jest naszym osobistym produktem i nigdy nie wiemy, czy nowsza wersja nie wniesie jakiś niedoróbek, czy innych wad).
    Powyższe jest oczywiście próbą wyjaśnienia sensu używania HAL, czy innych bibliotek producenta uC.

    _________________
    40-32:2=4!



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 wrz 2016, o 19:12 
    Offline
    Użytkownik

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

    Sparrow-hawk napisał(a):
    Biblioteka HAL została stworzona wyłącznie dla procesorów marki ST.


    Nie do końca tak jest .... oczywiście SPL ewoluowały do HAL ale ,
    jest to tylko Hardware Abstraction Layer --- i bynajmniej nie dotyczy to tylko STM ale i innych dostawców krzemu
    HAL -- dostarcza producent mikrokontrolera spełniając określone zasady , dziękiczemu pracując z CMSIS i HAL
    oprogramowanie jest przenośne między różnymi producentami ... zmiany polegają na podmianie HAL jednej firmy na
    dostarczony przez INNĄ

    _________________
    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: 13 wrz 2016, o 07:41 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2015
    Posty: 140
    Zbananowany użytkownik

    Pomógł: 18

    Na chwilę obecną nie znam innych producentów, którzy dostarczają równie funkcjonalne i pełne biblioteki jak ST.

    Być może nie precyzyjnie napisałem, ale wydaje mi się, że biblioteka HAL firmy ST będzie działać, wyłącznie z mikrokontrolerami tej marki. W takim też kontekście wydaje mi się było zadane pytanie przez kolegę krafin.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 wrz 2016, o 19:19 
    Offline
    Użytkownik

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

    Sparrow-hawk napisał(a):
    Na chwilę obecną nie znam innych producentów, którzy dostarczają równie funkcjonalne i pełne biblioteki jak ST.


    NXP, Texas Instruments, Renesas

    to że kolega nie zna i niema może dostępu nie znaczy że istnieje tylko HAL dla STM32 prawda??
    Dlatego należy precyzyjnie opisywać stosując właściwe nazewnictwo , bo niepotrzebnie się sieje zamęt
    u początkujących i tak powstają mity i legendy o ARM potem ...



    ale wracając do tematu HAL w/w dostawców niestety ma jedną wade ... ograniczone tzw pakiet podstawowy jest słaby , a za pełne sdk trzeba zapłacić

    Sparrow-hawk napisał(a):
    ale wydaje mi się, że biblioteka HAL firmy ST będzie działać, wyłącznie z mikrokontrolerami tej marki.


    tak z mikrokontrolerami ST gdyż dostarczana jest właśnie przez ST , ale mimo to pozwala na przenośność
    miedzy wszystkimi mikrokontrolerami i rdzeniami kod ... oczywiście pod pewnymi warunkami
    np z M0 można przenosić w górę , ale z np M4 na M0 się bez przeróbek nieda ... ze względu na okrojony
    zestaw instrukcji oraz mozliwości rdzenia M0

    Dlatego że STM jako 1 na świecie wprowadził tanie zestawy developerskie zawierające Debuger SWD - seria Discovery i udostępnił wszystkim zainteresowanym najpierw SPL a potem pełną adaptację HAL
    jest naj popularniejszym dostawca tanich i wydajnych mikrokontrolerów z rdzeniem ARM ,

    Cytuj:
    W takim też kontekście wydaje mi się było zadane pytanie przez kolegę krafin.


    CO nie oznacza też że nie można mieć szerszych horyzontów i rozwijać sie w wiedzy , niż dreptać w miejscu
    wierząc że tylko STM daje hala który jest do (Y) i trzeba go omijać ...
    Umiejętne stosowanie pozwala na znacznie szybsze pisanie wydajnego kodu , który przewyższa kody pisane
    na rejestrach nie tylko czasem wykonania , ale też łatwością wprowadzania zmian i możliwości łatwej
    ewolucji na mocniejsze procki przy niewielkim wzroście kosztów produkcji jak też i utworzenie wersji tańszej
    produktu stosując mniejsze , przez co słabsze ale też i tańsze mikrokontrolery

    Co nieco tu: http://www.sunduino.pl/wordpress/cmsis-standard/
    ale nie polecam gdyż wartość merytoryczna i edukacyjna jest niewielka ...
    (tak słyszałem)

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