Masz serię artykułów w EP z ostatnich 2 lat o programowaniu bez SPL w Keilu - wystarczy poczytać, archiwalne numery są dostępne za darmo. Marudzisz, że nie działa, ale ani nie pokazałeś kodu, ani nie napisałeś, co to znaczy że "nic nie rusza", więc jak niby mamy Ci pomóc, hę?
https://obrazki.elektroda.pl/9151185000_... Druga część artykułu o najtańszych nowych mikrokontrolerach z roku 2017. Ekosystem developerski Środowisko developerskie mikrokontrolera ma ogromny wpływ na jakość pracy z nim i w konsekwencji - na produktywność. Na to składają się różne czynniki – jakość IDE, dostępne biblioteki, płytki...
Poradnik dla początkujących, ale jedyne czego w nim brakuje to opisu jak z konfigurować środowisko do pisania na rejestrach. W sumie to masz już środowisko i tak naprawdę nic nie musisz konfigurować aby programować używając rejestrów. W CubeIDE masz przynajmniej pewność, że wszystkie pliki CMSIS są aktualne. Jak zrobić projekt bez HAL: 1. Wygenetuj...
Witam, Zagłebiam się powoli w procesor STM32F107 i widzę, że nie będzie łatwo :-) Pamiętam wcześniejszą dyskusję o nieużywaniu biblioteki "Standard Peripherals Library". OK To jak w takim razie zrealizować cos takiego, znanego z innych procesorów: np. GPIOA_CRL = 0x44444444; W pliku STM32F1x.h nie widzę adresów poszczególnych rejestrów np. GPIOA-G,...
Cześć jakiś czas temu spotkałem się z takim zapisem mapowania rejestrów: C gives no guarantee of the ordering of fields within machine words , więc może być problem z portowaniem. Nie mam zamiaru "wynajdywać koła na nowo" tak pytam się z ciekawości o wasze opinie. Ewentualnie tak myślę że dałoby rade to zrobić też w C++ z template w taki sposób żeby...
Witam. Przeglądając dokumentację uC STM32F10x natrafiłem na rejestr: AFIO_EVCR (Event control register) Zastanawia mnie do czego on dokładnie służy. Według dokumentacji jest to rejestr kontrolny zdarzeń (lub jakoś podobnie). Ustawia się w nim bit "EVOE", oraz poszczególne porty i piny. Czy ma on jakiś związek z przerwaniami EXTI? Dlaczego znajduje się...
Piszę program do sterowania wyświetlaczem LCD cyfrowym i muszę ustawić 0 i 1 bezpośrednio na rejestrach. Mikrokontroler jest taktowany z 1MHz żeby obniżyć pobór energii i ustawiając poszczególne bity w bibliotece HAL poleceniem: [syntax=c]HAL_GPIO_WritePin (A1_GPIO_Port, A1_Pin, GPIO_PIN_SET);[/syntax] powoduje to takie opóźnienie że zamiast prostokąta...
Witam Nie mogę porodzić sobie z banalnym problemem. Jak elegancko zapisywać bez biblioteki spl rejestry FSMC. metoda: [syntax=c] FSMC->BTR1 = (0x5<<8) | // DATAST = 0x5 (1<<0) ; // ADDSET = 0x1 [/syntax] nie działa no i nie może bo w stm32f10x.h są tylko definicję dostępu bitowego: [syntax=c] /****************** Bit definition for FSMC_BTR1...
Witam. Od niedawna uczę się pracy na STM32. Programy piszę bez wykorzystania bibliotek, opieram się na poradnika tutaj z elektrody. Zauwazyłem, ze w sieci istnieje wiele bibliotek np. do LCD HD44780. Biblioteki te są pisane z wykorzystaniem biblioteki StdPeriph. Chciałbym zapytać jak to pogodzić, zeby móc pisać dalej na rejestrach ale wykorzystywać...
Tablicami NVIC się nie przejmuj. Korzystaj z funkcji dostarczonych przez CMSIS, w tym przypadku nie warto stosować rejestrów wprost. Konfiguracja Timera OK, choć kolejność nie należy do poprawnych. Przyjrzyj się jeszcze rejestrowi EGR. Przerwanie? Brak kasowania flagi skutkuje ciągłym jego wywoływaniem. Flagę kasuje się na początku przerwania. I taka...
Hej, Chcę zacząć programować mikrokontrolery STM32 na rejestrach. Mam płytkę Nucleo-f103 i usiłuję uruchomić jakieś środowisko programistyczne. Na początku skupiłem się na Eclipse system workbench for stm32. Niestety ciągle mi coś nie wychodzi. Nie mogę wgrać do płytki żadnego programu. Może źle zacząłem szukać środowiska. Są stare poradniki i możliwe,...
Teraz moje pytania którą bibliotekę lepiej poznawać czy może one są praktycznie takie same? "Biblioteki" te lekko się od siebie różnią, ale obydwie są równie beznadziejne (; Czy na armach mogę sobie programować tak jak na avr?tzn dodam sobie jakiś plik nagłówkowy jak to tam było avr/ io.h z definicjami rejestrów wejść/wyjść i mogę operować bezpośrednio...
Chcesz mieć kłopoty i długi kod, wydaje Ci się, że można programować mikrokontroler nic o nim nie wiedząc, a program, który piszesz, ma tylko błyskać diodą - używaj bibliotek. Chcesz, żeby działało i chcesz wiedzieć, jak działa - pisz kod działający na rejestrach. Oczywiście bez przesady. Pewnie nie ma sensu pisać własnego stosu USB czy TCP/IP, ale...
Malina zero bez wifi kosztuje 26zł na botlandzie A więc po co wcześniej przedstawiałeś te "wypasione" wersje z wifi/ethernet/bt? W czym jest lepsza Rasp Zero od Arduino z punktu widzenia laika? Poza tym nikt nie karze korzystać z pulpitu. Aplikacje można pisać własne. Sterowniki też. Pisanie aplikacji na gołe CPU przez kogoś kto zaczyna? Słaby pomysł....
No i masz dla przykładu stronę 714, gdzie masz mapę wszystkich rejestrów. Tak praktycznie każdy bit odpowiada za sterowanie peryferium, jest dość skomplikowane urządzenie, ale pozwala na wiele. Myślę, że przyda się Tobie taki poradnik: https://forbot.pl/blog/stm32-praktyce-1-...
Temat rozwiązany. Problemem było to, że były zworki w Nucleo i programowałem Nucleo a nie docelowy STM32.
Może wbiję kij w mrowisko: Po co właściwie Ci ten bitbanding? Programuję Cortexy na codzień i nie zauważam praktycznej potrzeby użycia BB. Nie to, żeby w ogóle jej nie było, ale jest ona tak marginalna, że nie opłaca się w to bawić. Tam, gdzie są potrzebne operacje bitowe, są one zaimplementowane w sprzęcie lepiej i bez potrzeby użycia BB i szybciej...
Zastanawiam się tylko po co sprawdzać to: [syntax=c]USART3 -> CR1 & USART_CR1_TCIE[/syntax] nie rozumiem powodu. Przecież to jest "This bit is set and cleared by software." Programista nie wie czy ustawił to przerwanie czy nie? Dodatkowo ten zapis: [syntax=c]if(( USART3 -> CR1 & USART_CR1_TCIE) && (USART3 -> SR & USART_SR_TC ))[/syntax] wygląda dość...
Dzieki Panowie, udało mi sie uzyskać zamierzony efekt kierując sie zaleceniami kolegi Sareph , dobrze wiedzieć jak sie ustawia poszczególne bity rejestrów, jednak mam pytanko: https://obrazki.elektroda.pl/4282252600_... właśnie zrobiłem to w taki sposób jak powyżej, bo nie wiem jak ustawić bit25 jeżeli pod nazwą SWJ_CFG Piotrus_999...
STM32 to Very Low Cost Platform więc i wymagać za dużo nie można. Natepny cytat miesiąca. Zrozumcie - bez rozumienia jak to działa nie da się programować uC. Żadne magiczne "wyklikiwacze" w tym nie pomogą. Szanowny forumowy kolego. Naprawdę szanuję Twoje umiejętności i wiedzę, cieszę się, że dla Ciebie to wszystko to jest "pestka". Dla mnie to wszystko...
Chciałbym też pobawić się obsługą kart mmc, do których z powyższych programów łatwiej zdobyć w internecie odpowiednie biblioteki i je dołączać? (Nauczyłem się programować przy użyciu rejestrów i niechętnie widziałbym SPLe)
Niby nie, a mamy szybszą drogę upewnienia się, że wszystko jest jak być powinno z tym zegarem? Niczego i tak nie możesz być pewny - przecież ta funkcja nie wylicza ani nie mierzy częstotliwości, tylko zapisuje do zmiennej to co wynika z definicji wygenerowanych w jakimś tam pliku przez CubeMX. Które mogą być błędne, w efekcie zmienna będzie miała wartość...
Cube tworzy projekt z bibliotekami HAL. Ja chciałbym użyć SPL ponieważ mam książki o stm32 wykorzystujące właśnie SPL. Na początek z stm32 chciałbym wspomagać się książką, może później spróbuję programować bezpośrednio na rejestrach....
Cześć wszystkim. Poradnik choć napisany w wielu miejscach nietechnicznym językiem, jednak wart uwagi. Autor zawarł w nim sporo ciekawych informacji na temat programowania STM32. Ogólnie w sprzedaży ubogo w literaturę o stm32, jest w zasadzie pozycja oparta o przestarzałe standard peripheral library, a zagłębiających się programowanie "po rejestrach"...
(at)Karaczan - to nie kwestia tworzenia średnio optymalnego kodu - bierzesz mbed, spl, hal do ARM i głupie miganie diodą jest w stanie zeżreć 1k RAM i FLASH ;) A jedziesz bezpośrednio na dokładnie tych i tylko tych rejestrach peryferiów, których w projekcie używasz i masz 10x mniej kodu. To kwestia inicjalizacji/konfiguracji wielu rzeczy, które Arduino...
(at)PDT - no a nie prościej, zamiast dorabiać SPL/HAL, przerobić projekt na "SPL/HAL free"? Żeby napisać własne odpowiedniki i tak będziesz musiał przebrnąć przez dokumentację mikrokontrolera i programowanie "na rejestrach" - to czemu nie użyć tego od razu w projekcie?
No to w takim razie polecam STM32L1XX reference manual http://www.st.com/content/ccc/resource/t... Tam sobie wszystko znajdziesz, rejestr po rejestrze... Bez bibliotek :D Życzę miłej lektury :)
Witam wszystkich Jestem w trakcie realizacji projektu STM32 F4 + kamera MT9D111, który zakłada odczyt ramki z kamery i zapis na kartę SD. Rejestry kamery programuje się poprzez interfejs I2C. Chciałbym sprawdzić czy mam dobrze ustawioną tą komunikację i w związku z tym mam pytanie czy bez DCMI oraz DMA da się ustawić rejestry kamery tylko podłączając...
Zazwyczaj najwygodniej uczyć się języka C na desktopie, czyli swoim PC-cie. Programując STM32 lub AVR-ki używa się języka w ten sam sposób, ale zwykle nie mamy dostępu do pewnych bibliotek standardowych, które na desktopie są od razu, bo komputer ma monitor, klawiaturę, dysk twardy itp.. W mikrokontrolerach tego nie mamy, więc użycie printf(), getch()...
Witam. Na temat programowania STM32 prawie nie ma literatury. Te książki które są na rynku są mało wartościowe. Dlaczego nikt nie przetłumaczy RM0008 Reference manual? To byłoby idealne. Na temat AVR jest kilka pozycji z dokładnym opisem procesora rejestry itd. Na STM32 nie. Autorzy skupiają się tylko na bibliotece do STM i programowaniu w C.
Aha, więc jednak to GPIO_Remap_SWJ_Disable... Zaraz sprawdzę czy działa. Dodano po 31 Niestety po tym zabiegu JTAG nie działa, i trzeba programować przez RSa. Trochę to dziwne bo faktycznie po resecie powinien być włączony. Wygląda to tak jakby najpierw były włączane peryferia wg aktualnego programu, a dopiero potem możliwość programowania. Bo rejestry...
BlueDraco, dziękuję za pokazanie sposobu obsługi nadchodzących danych. Mam trochę inny mimo że w HALu ;) Obecnie zaczynam naukę programowania STMów i dokończę już całkiem rozbudowany program napisany w HALu. Potem zapewne przejdę do nauki programowania przez rejestry :) Ale dlaczego w kodzie HALa zrobił się problem z ponowną inicjacją przerwania?
Witam ponownie Napisałem program na nowo i - z wykorzystaniem Twoich funkcji - wszystko działa prawidłowo (prawie wszystko - gdy odczytuje dane z jednego rejestru, np. położenie X, to wszystko jest OK, ale gdy odczytuje dane o położeniu X, Y, Z to dane te są "wymieszane" - ale to nie jest wielki problem). Chciałbym jeszcze móc wysyłać dane do rejestru...
AVE... Problem z STM32 i ogólnie z układami mającymi więcej niż 8 bitów jest taki, iż są one sporo trudniejsze w użyciu, niż ośmiobitowce. Tyle że ośmiobitowe BasicStamp i Arduino uczyniły programowanie mikrokontrolerów jeszcze prostszym. Tak prostym, że nie potrzeba ani noty katalogowej układu, ani wiedzy o bitach konfiguracyjnych, przerwaniach, czy...
Głownie na bibliotekach HAL, bo to jest najłatwiejsze do przyswojenia dla początkujących. Ale rozpoczął cykl kursów na rejestrach w formie webinarów na yt. W ofercie są kursy języka C, STM32 i RTOS. Jeśli chodzi o mirka, to dawno temu zaczynałem od bluebooka, książka fajna ale nie zachęciłem się wtedy do AVR, trochę ciężko było z kontaktem na forum,...
jaki sprzęt oraz język programowania jest najbardziej przyszłościowy? Krótka odpowiedź: żaden. Po prostu rynek się zmienia baaardzo dynamicznie. To nie są lata 80-90 gdzie 8051 i długo, długo nic. Teraz na topie wydają się STM32*(czyli ARM), z chińskich to masz ESP32, 82*, zaczyna być coraz więcej kości z RISC-V. Języki programowania to wiadomo 1....
http://obrazki.elektroda.pl/9377221800_1... W dziale mikrokontrolery ARM znajdziecie bezpłatny (do osobistego użytku edukacyjnego) poradnik STM32 przygotowany przez szczywronek . Materiał dostępny jest w temacie: techekspert: Do kogo kierowany jest poradnik, jakie podstawy powinien mieć opanowane czytelnik? Czy znajomość określonej...
Ale wciąż czekam na opinie! kogoś kto zrobil coś duzego na tych bibliotekach! Ale co według Ciebie znaczy "duże"? Ja robiłem może nie coś ogromnego w sensie objętości we Flashu, ale ze skomplikowanymi zależnościami czasowymi na STM32F103VD/VE. Używałem przerwań i robiłem rekonfigurację różnych bloków układu w tych przerwaniach. I to działało z użyciem...
Witam, początkowo zacząłem programować mikrokontroler stm32f103RBT6 wykorzystując bibliotekę standardową, ale zachęcony przeczytanymi postami na elektrodzie zacząłem programowanie wykorzystując tylko definicje rejestrów zawarte w pliku stm32fx.h. Chciałem włączyć jakiekolwiek przerwania (np. od timera 4) niestety wogóle nie wiem jak do tego się zabrać....
Cześć :) W związku z tym, że w miejscu w którym pracuję istnieje potrzeba programowania pamięci SPI których wsad jest taki sam, stwierdziłem że zbuduję urządzenie, które będzie kopiowało zawartość jednej kości do drugiej. Niby nic, ale z czasem chciałbym zająć się zawodowo projektowaniem oraz programowaniem mikrokontrolerów, więc jako pierwszy projekt...
Mnie tym razem forma i treści od Kolegi Piotra nie satysfakcjonuje - szczególnie w kontekście innych wpisów na elektrodzie. Nie mogę zrozumieć czemu ta prezentacja miałaby służyć. Brakuje ewidentnie konkretnych walorów edukacyjnych, na pewno dla takiego amatora jak ja, być może jest to dobra inspiracja zaawansowanych użytkowników, ale szczerze wątpię....
Witam Mam pytanie wydrukowałem sobie cały poradnik kolegi z forum chodzi o wiadomy kurs bez bibliotek. Mam pytanie odnośnie IDE, używam tego [url=http://forbot.pl/blog/artykuly/prog... Czy sposób zakładania projektu będzie odbiegać od tego, jeżeli nie piszę przy użyciu bibliotek tylko...
BlueDraco, przejście na programowanie za pomocą rejestrów dawno mnie pociągało, ale w zasadzie trzeba by było zaczynać naukę od zera (szczególnie dla każdego nowego procesora). Czy gdyby dalej pisać w HAL, ale ważniejsze czasowo fragmenty tylko na rejestrach, to szybkość ich byłaby porównywalna? Czy jednak pozostałe fragmenty kodu w HAL akurat niezwiązane...
Witam, Do Eclipse (kepler) chce spiąć sobie wszystko co potrzebne aby programować stm32. Uruchomiłem już kompilator (bleeding-edge-toolchain od Freddie Chopin), podpiąłem OpenOCD ale utknąłem na debugerze. Podczas próby połączenia się nim z OpenOCD zwraca: Bogus trace status reply from target: qTStatus Bogus trace status reply from target: qTStatus...
Żeby było wydajniej to powinieneś w ogóle wywalić ten shit (tą bibliotekę). A co do zmiany wypełniania to najwydajniej operować na samym rejestrze TIM3_CCR1. Nie używam tej biblioteki ale zaglądałem do jej źródeł i nie przypominam sobie aby była jakaś "funkcja" do zmiany tylko jednego rejestru, zatem i tak musisz operować bezpośrednio na tym rejestrze....
Użycie operacji logicznych na BSRR jest błędem, i to podwójnie. Nie ma to nic wspólnego z "ostrożnością". Oczywiście nie ma to nic wspólnego z ostrożnością, ale jak dopiero zaczynałem programować i kilka razy nadpisałem sobie ważne rejestry, to wszędzie wstawiałem "|=". Zadziałało i przynajmniej się nauczyłem :> W sensie logicznym błąd, ale czy w sensie...
Ja potwierdzam opinię, że dobrze zacząć od czegoś prostrzego jak AVR, na studiach, gdzie przez 2 lata programowaliśmy tylko obiektowo praktycznie nagle przyszedł przedmiot Embedded Systems na... ARM9, programowanie po rejestrach. Wykładowca zdający się nienawidzić studentów i ten przedmiot stał się piekłem dla większości, fart, że znałem właśnie AVR...
Spróbuję jutro ustawić eclipsa, chociaż opisy w necie są strasznie pogmatwane, chciałem używać coocoxa ponieważ tam tylko ustawia się patha do toolchaina wybiera programator i można działać. Czytałem także o True Studio i System Workbench, ale to są środowiska raczej nastawione na używanie biblioteko ile się nie mylę? Poniekąd można tak pomyśleć, chyba...
I dobrze mówisz: Sprawa wygląda inaczej, bo podstawą jest tutaj JTAG i z tej racji przeraża to czasem miłośników AVRa. To właśnie jest to czego najbardziej się do tej pory obawiałem. Powiem szczerze: byłem święcie przekonany, że dla każdego producenta ARM będę musiał posiadać osobny programator. Polałeś miód na moje uszy. :) Jeżeli rzeczywiście jest...
Zapewne w tym co wkleił simw wyżej jest jakaś drobna literówka czy coś takiego. No w tym wypadu nie ma literówek, przykład na bieżąco kompilowałem, wgrywałem do uK. Raczej to kwestia wersji CMSIS z Cube. Ok, dzięki za odpowiedź. Proszę jeszcze o wyjaśnienie kwestii litery 'U' przy przesunięciu bitowym: Te wartości to to kopiuj-wklej z nagłówków CMSIS,...
Witam, mam ogromną prośbę. Prześledziłem dużo tematów ale nigdzie nie znalazłem odp na moje pytania. A mianowicie w starterkicie STM32L-Discovery próbuję uruchomić SPI2. Nidzie nie mogę znaleźć dokładnej instrukcji jak uruchomić funkcje alternatywne dla tego SPI i jak to wszystko potem skonfigurować. Chciałbym odbierać dane z akceleromeru Boscha BMA180...
Witam dziękuję za odpowiedź. A więc tak po następnym uruchomieniu code blocksa już pamiętał ustawienia, więc nie wiem czym mogło być to spowodowane. (między czasie mógł być restart więc może to pomogło) Co do Ustawienia kompilatora i flag to kolega wcześniej miał rację nie mam ustawionych ani flag ani linkiera. Chcę programować procesor STM32F767ZI...
Tak jak pisałem, chciałem programować bez kupna zbędnych płytek startowych, jedynie procesor, samemu sobie zaprojektować układ z rzeczami które mam na stanie i zacząć się bawić. Ja zaczynałem tak: [url=http://www.elektroda.pl/rtvforum/vi... - Cortex-M3. JTAG, na sam start nie jest głupim pomysłem, a nawet...
To jest stary cod z Atmegi której funkcjonalności nie nie rozbuduje bo nie pozwala na to PCB. Po drugie przy większym obciążeniu obliczeniami pomiarów prądów i napiec stabilność odczytów pozostawia trochę do życzenia. Soory ja potrzebuje sterownik a nie kurs migania diodą. !(at) lat to sporo więc wiedza już wyparowała i się zdezaktualizowała. Dlaczego...
PS. Jak załadować program za pomocą BootLoadera po RS232? Szukam i szukam w necie i nie widzę. Dokładnie to chodzi mi o to jakim programem. Program nazywa się Flash Magic http://www.flashmagictool.com/ Jak by jakiś pin był podłączony do GND a ja na nim bym wymuszał stan niski (a raczej próbował wymusić) i procesor by się palił to bym zrozumiał. Akurat...
Moc obliczeniowa nadal bardzo mała, a przy falownikach, sterowaniu silników czy SMPS jest bardzo potrzebna. Ja od siebie dodam, że spotkałem sterowniki falowników w ciut nowocześniejszych trolejbusach (na silnikach asynchronicznych) działające w oparciu o klona C251. Czyli też nie jakiś demon prędkości (ale za to 16bit native) Jeśli nie bawimy się...
rejestr stm32 stm32 rejestr programować stm32
peugeot oprogramowanie samsung nagrywanie przeliczanie napięcia
Spadek napięcia na lampie prostowniczej 6D22C Żelazko Braun TexStyle 7 - odklejająca się stopa grzewcza