https://obrazki.elektroda.pl/9151185000_... Autor poniższego zestawienia jest inżynierem i konsultantem wsparcia dla systemów wbudowanych. W swojej karierze poznał on szereg różnych architektur mikrokontrolerów, różniących się wydajnością, wyborem peryferii, poborem zasilania etc. Wybór odpowiedniego układu stanowi zawsze o sukcesie...
chciałbym przypomnieć, że Arduino to nie jest platforma sprzętowa Ciekawe, bo opis ze strony głównej: Arduino is an open-source electronics platform based on easy-to-use hardware and software. Czyli jest to platforma zarówno programowa jak i sprzętowa. STM32 nie jest platformą, bo jest to goły mikrokontroler, tak jak Atmega - ale Arduino w różnych...
Zrobiłem to programowo jak bym nie kombinował sprzetowe CRC z STM'a daje wyniki nie porównywalne z niczym innym. Programowa obsługa działa jak należy. Troche szkoda ale może kiedyś coś się wyjaśni.
Dlaczego R10 ma inną wartość? Po co w ogóle te układy RC? Eliminacja drgań styków programowa i masz 6 komponentów mniej - ja na Hackathonie na jednym Arduino Mega opędzałem sprzętową eliminację drgań styków od... 6 enkoderów ;) Ja bym dodał do tego normalnego DAC-a - nie są drogie Płytkę bym zmienił na SMD Uwaga poza konkursem: dałbym jakiegoś STM32...
Może by tak te impulsy na próbę podać na zwykły licznik/timer i zobaczyc ile zliczy na sek. i czy zlicza stabilnie? Przynajmniej bedzie wiadomo czy to problem bardziej sprzetowy, czy programowy.
Ogólnie za mało danych by odpowiedzieć na pytanie. Zasadniczo przyczyna Twoich niepowodzeń może być sprzętowa lub programowa. Sprzętowa czyli...złe podłączenie tj. zły schemat lub montaż lub uszkodzony element. Programowa...zła programowa konfiguracja mikrokontrolera. By móc się wgłębić potrzebny jest schemat, może zdjęcia wykonania i kod programu....
Ale wtedy sprzętowo nie zrealizuję zmiany stanu na pinie wyjściowym i zostają mi tylko przerwania i programowa zmiana stanu, tak? Czyli nie ma odpowiednika CTC w STM? Wybacz może głupie pytania, ale w porównaniu do AVR jest tego sporo, a siedzę 3 dzień dopiero. Albo jakbym wpisywał jednocześnie do rejestru ARR i CCR te same wartości, zadziałało by to?...
Nie chce zakładać nowego tematu z I2C bo tematów jest sporo i dużo jest wałkowane o i2c w stm32. Mam procesor stm32f103 i niestety ale mam duży kłopot z tym interfejsem. Otóż problem dotyczy odczytu i czasami zapisu pamięci eeprom. Czytałem, że problem może być z zakłóceniami na szynie. Stosowałem różne metody DMA, przerwania i odpytywanie. Wszystko...
Była mowa o sprzętowej obsłudze mp3 przez ESP32. Wcześniej już kiedyś pisałem ale się powtórzę: fajny i działający projekt jest tutaj: ttps://github.com/MrBuddyCasino/ESP32_MP... Można wykorzystać wbudowanego DAC ale lepiej na zewnętrznym kodeku audio I2S. Nie sprzętowa tylko programowa :) Sprzętowo to jest na tym VS1053. Więc jak widać nawet...
Mikrokontroler, którego używam ma USB, jednak jego obsługa programowa dla mnie to jak na razie czarna magia :/. Póki co muszę zostać przy ft245. Zaznaczę że w starszych projektach dobrze się spisuje i nie miałem z nim żadnych problemów. F.
Sugestia, że oprogramowanie daje idealne odstępy czasowe, a sprzęt - nie, trąci herezją. Sprzęt zawsze gwarantuje właściwe taktowanie i równy czas transmisji bitów, oprogramowanie - tylko przy spełnieniu wielu warunków, często trudnych do spełnienia. Realizacja programowa wyklucza jakąkolwiek inną aktywność w czasie transmisji. Moje rozwiązanie z najtańszym...
No to jest CM3 a nie 0 jak napisał sulfur. Z resztą żeby nie wprowadzać ewentualnych kłótni [url=http://www.st.com/internet/mcu/prod... jest źdódło. Różne częstotliwości na kanałach jednego Timera można uzyskać tylko programowo.
Problem pojawia się na mikrokontrolerze STM32F100RB, aczkolwiek wydaje mi się, że nie ma on związku z samym mikrokontrolerem. Próbuje odczytywać dane z ultradźwiękowego anemometru, który jako jedyną magistralę cyfrową posiada RS485 (ma też wyjścia analogowe). Podłączam go do mojego sterownika przy pomocy takiego konwertera: . Jest on oparty na układzie...
Funkcja NVIC_SystemReset() z CMSIS.
a spróbuj przy odpiętym debuggerze, chyba że jest odpięty?
Witam. Zaczynam zabawę z mikrokontrolerami STM32 a dokładniej ze rdzeniem Cortex-M3. Posiadam płytkę z mikrokontroler STM32F103VBT6. Nie chcę się bawić w gotowe biblioteki tylko programować "po rejestrach" i tutaj pojawia się pierwszy problem - które środowisko wybrać. Próbowałem Atollic TrueSTUDIO wybrałem sobie Embedded C Project naładował mi tyle...
Witam, zwracam się do Was o pomoc, w jaki sposób zrealizować taki problem: Mam dwa pliki z oprogramowaniem na zewnętrzny układ. Zewnętrzny układ trzeba zaprogramować tymi firmware'ami za pomocą SPI podczas każdorazowego uruchomienia urządzenia. Docelowo będzie mikrokontroler np. STM32F103RCT6 ze względu na 256 kB pamięci FLASH. Czyli algorytm będzie...
Witam, właśnie dostałem płytki stm32fdiscovery i chciałem zacząć z nim pracować w oparciu o gcc. Sciągnąłem sobie taki szablonowy program z tej strony /usr/lib64/gcc/arm-none-eabi/4.8.1/../..... error: Libraries/libstm32f3.a(stm32f30x_ext... uses VFP register arguments, main.elf does not /usr/lib64/gcc/arm-none-eabi/4.8.1/../.....
Firma zleci wykonanie fragmentów kodu w języku C/C++ dla mikrokontrolera STM32. Wymagania dla kandydata: -Znajomość mikrokontrolerów STM32 (STM32F4 i STM32H7) -Język programowania (C/C++) -Znajomosć środowiska Atollic TrueStudio -Znajomość bibliotek HAL Opis zlecenia: -uruchomienie ADC z wykorzystaniem DMA -uruchomienie DAC z wykorzystaniem DMA -uruchomienie...
Witam. Na początek trochę poopowiadam. W pracy pewien człowiek zajmował się projektem części urządzenia tj płytki z wyświetlaczem tft , z prockiem stm32f103zet6 i pamięcią nand hynixa . Zwolnił się i ja przejąłem "robienie" tego. Wyświetlacz działa i wszystko jest ok ,umiem robić pewne potrzebne modyfikacje, ale mam pewne problemy. Do tej pory wrzucanie...
1. W jaki sposób piszecie kod do obsługi peryferiów występujących pojedyńczo w mikrokontrolerze? Np RTC, LCD, RNG, czy CRC.
Cześć, nadszedł czas zmierzyć się z linkerem i innymi cudami ;) Wybaczcie, jeśli będę pisał głupoty, dopiero próbuję to ogarnąć :D Czy możecie podpowiedzieć jak uwzględnić w Eclipse dwa warianty kompilacji i linkowania: 1. program w trybie DEBUG, który startuje klasycznie z 0x08000000 2. program w trybie RELEASE, który ma startować z 0x08002000 Odnośnie...
Zlece napisanie programu na płytkę STM32F4-DISCOVERY z FreeRTOS do płytki podłaczona karta microSD, wyjsciowe przekażniki lub LEDy. Funkcje programu 1. obsługa FAT z kartą SD 2. odtwarzanie audio WAV albo MP3 z karty SD 3. sterowanie wyjściami GPIO (8 zdefionowanych wyjsc w kodzie) 4. odczyt wejsc (4 zdefiniowane wejścia w kodzie) Zasada działania:...
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ć...
Zlecę wykonanie oprogramowania dla urządzenia elektronicznego o średnim poziomie złozoności, prace głównie dotyczą interfejsów UART, SPI oraz pomiarów na ADC, dla urządzenia wykonane jest prototypowe PCB. Mile widziana znajomość FreeRTOS, choć nie jest to warunek konieczny. Zakres prac zlecenia obejmuje wykonanie oprogramowania na STM32, który jest...
Witam Niedawno zakupiłem płytkę nucleo stm32f302r8, i pobrałem STM32CUBEIDE i próbowałem się uczyć pisać z wykorzystaniem biblioteki HAL, oglądałem kurs na YT myślę że wszyscy wiedzą jaki, ale jakoś tak tego nie czuję, wszystko jest tak jakby zbyt skomplikowane. Programowałem avr na rejestrach, a więc postanowiłem że stm też tak zrobię. Znalazłem na...
Zlecę napisanie lub kupię aplikację do wgrywania aktualizacji programu do procesora STM32. Może być użyty bootloader wbudowany, tylko nie wiem czy nie będzie potrzebna modyfikacja (nie jestem programistą). Istotne, aby działało to przez RS485 w środowisku z dużymi zakłóceniami czy też chwilowymi przerwami w połączeniu (ustawiany timeout, kontrola transmisji)....
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, posiadam kilka amperomierzy z chin widocznych poniżej, które działają w oparciu o mikrokontrolery 8S003F3P6 ( datasheet: Pytanie tylko czym to programować i czy są jakieś darmowe środowiska programistyczne oraz kompilatory do tych uC ? http://obrazki.elektroda.pl/6633453500_1...
Witam, Były tematy o bootloader ale mój problem jest trochę inny. Mam sobie soft, który standardowo jest wgrany pod adres 0x08000000. W pewnym momencie, pobieram sobie nowy plik HEX przez UART. Mój interpreter Hex dekoduje go do surowych danych. Olewam adres bazowy nowego Hexa (który również wynosi 0x0800000) i wgrywam go do 5 sektora pd adres 0x08020000,...
Witam Szukam informacji dotyczących funkcjonalności/zabezpieczeń profesjonalnego firmware-u wbudowanych urządzeń np w oparciu o mikrokontrolery STM32. Chodzi mi o funkcje jakie powinien posiadać firmware poza podstawową funkcjonalnością do której został stworzony jak np: - bootloader z szyfrowaną komunikacją lub nie - wydzielony fragment pamięci na...
Cześć, Mam takie ogólne pytanie. Chciałbym programować uC STM32 za pomocą aplikacji .NET. W grę wchodzi tutaj bezpośrednia komunikacja z urządzeniem typu HID, Uart, bądź uruchamianie procesu z parametrami. Jaki moglibyście polecić programator? Gdzie mógłbym znaleźć do niego instrukcje, komendy, itp. Najlepszy byłby taki sam sposób komunikacji, jaki...
Witam. Zlecę zaprogramowanie STM32 dokładnie STM32F2052GT6 Wsad mój. Najchętniej ktoś z łodzi ale może być na wysyłkę. Proszę o oferty.
Witam Środowisko: Eclipse Kepler, GCC ARM, OpenOcd Procesor: STM32F1/F4 Przesiadłem się niedawno na ARMy. Tworzę projekt, który niestety bardzo się rozrasta. Zajmuje już ok 300k, a to początek. Zawiera dużo grafik, czcionek oraz stałym procedur (obsługa stosu TCP, obsługa grafiki-emWin, Fat32 itp). Te części programu są stałe. Problemem jest czas, jaki...
Cześć. Chciałbym zaprezentować na forum film/poradnik, który wykonałem. Dotyczy on konfiguracji niezbędnych narzędzi, umożliwiających programowanie mikrokontrolerów STM32. Materiał przygotowałem w dwóch wersjach: polskiej oraz angielskiej. Celem tego tematu jest zebranie krytycznych opinii na temat omawianego filmu. Chciałbym, aby koledzy, po obejrzeniu...
Zacznij od określenia protokołu transmisji - w jaki sposób będziesz przesyłał te dane (znakowo/binarnie), jaka jest ich długość, po czym program może je rozpoznać, czy i jak sprawdzać poprawność transmisji. Zastanów się nad strukturą oprogramowania - same przerwania, RTOS, czy (w ostateczności) jakaś pętla zdarzeń? Potem dopiero planuj programową obsługę...
Wystarczy GNU assembler i program OpenOCD. Wystarczy napisać program ustawiający piny, które układ używa, a jeśli chcesz tylko sprawdzić, czy procek działa, to napisać prostą pętlę w asemblerze. OpenOCD zapewnia programowanie i pracę krokową. Mogę ci taki programik napisać, ale musiałbyś podłączyć do układu programator. Czy wiesz, jak ten programator...
Podajesz jakieś dziwne nazwy, zamiast posługiwać faktycznymi nazwami. Nie da się nawet znaleźć tych dokumentów. W Twoim uC BOOT1 jest option bitem i jest ustawiany programowo. http://www.st.com/web/en/resource/techni... jest o tym wzmianka tutaj na stronie 12. At startup, the boot pin and boot selector option bit are...
Nie sądzę żeby tak było... Jedyne co, to czasem warto układ po programowaniu z jakimiś dużymi zmianami porządnie zresetować <: Ale jest ciekawy hint dla Ciebie: 1. Połącz się z OpenOCD przez telnet. 2. komenda "reg" 3. Komenda mdw <adres> 8, przy czym <adres> to wartość rejestru PSP a potem MSP (w sensie dwa razy). 4. W jednym z tych...
Skoro możesz zastosować dodatkowy układ to może przerzuć zadania związane z generacją na małego PIC. Przykładowo tanie i małe PIC12f1501 mają NCO - dokładnie to czego potrzebujesz. Dodatkowo możesz się przyjrzeć CWG i ewentualnie CLC Jeśli PIC Cię odrzuca, to spróbuj zrealizować to samo programowo w STM. Albert
Mam jeszcze pytanie odnośnie samego działania SWD i programowania... Jeśli BOOT0 = 0 to startuje ten kod który jest we Flash. Jak to się dzieje, że mimo działającego programu OpenOCD potrafi przerwać jego pracę i zacząć wgrywać program ? Jeśli dobrze doczytałem to jest to tylko możliwe jeśli są włączone sygnały SWDIO i SWCLK ? i drugie pytanie: Jeśli...
Dopóki nie dowiesz się, co to OD, nie zrozumiesz, gdzie masz dwa błędy - sprzętowy i programowy.
Prawda jest taka, że STM32 są dosyć delikatne... Osobiście załatwiłem już kilka sztuk - wystarczy przypadkowo podać zbyt wysokie napięcie na pin (obojętne czy wyjściowy, czy wejściowy) i procek momentalnie jest do wymiany. Najciekawsze jest to, że zasadniczo działa (daje się go programować, debuggować, wykonuje program - tylko ten załatwiony pin nie...
Zaproponowałeś rozwiązanie sprzętowe. A mnie interesuje rozwiązanie programowe. Tak mam gotowe płytki i spora pamięć i włożone pieniądze. Posiedzę chwilę i będę miał rozwiązanie programowe kompatybilne wstecz. Jak będę potrzebował większej pamięci to zmienię tylko pamięć kostkę 8pin. Interesuje mnie tylko rozwiązania programowe.
Tam jest jeszcze minus taki, ze wjescie do bootloadera wymaga przelaczenia stanu pinow od bootowania wiec troche to komplikuje sprawe. Można tez odpalić go programowo.
Sprawdź działanie na mojej funkcji programowej w C. Tym sposobem wyeliminujesz ewentualne inne błędy gdzieś po drodze pomiędzy STMem a programem w Delphi.
Do wyprowadzeń CAN L i CAN H nie można podłączać nic oprócz rezystorów terminujących, sygnalizację za pomocą diod LED można zrobić odczytując programowo znaczniki odebrania ramki CAN, każda transmisja na magistrali CAN uruchamia flagi w rejestrach procesora. Programowo można uruchamiać przez port procesora diody Led w zależności o odebranych danych,
Transmisje SPI sprawdzałem bit po bicie przy pomocy diodek LED. Zarówno przy wysyłaniu komend jak i danych transmisja była prawidłowa dlatego tym bardziej jestem zdziwiony. Co prawda trudno jest zweryfikować poprawność w działaniu zegara jednak sama ramka zgadzała się do wartości poszczególnych bitów . Spróbuję użyć SPI2 lub SPI3 jeśli to nie pomoże...
Połączenie standardowe SWDIO <-> SWDIO SWCLK <-> SWCLK GND<-> GND W [url=http://www.elektroda.pl/rtvforum/to... wątku opisuję moje problemy - połączenie się udało, gdy podłączyłem też Vcc programowanego procesora z Vcc złącza SWD (które niby do niczego nie jest podłączone); innym sposobem na udaną komunikację bez Vcc...
No a zdradź mi tajemnice dlaczego to mają być przerwania a nie callback-i. Jeżeli chcesz funkcje A wolac co każde przerwanie a B co 20 na przykład to zrób sobie licznik. Sprzętowo to tak jak MS napisał nie da się. Jak potrzebujesz licznik w liczniku to albo kaskadujesz timery albo robisz to programowo.
Flagi zeruj bezpośrednio po sprintf - wtedy dane w zmiennych nie są już potrzebne i można je zmienić. Dłuższe czekanie może powodować, że w momencie przyjścia przerwania flagi są ciągle ustawione - i gubisz dane. Dość łatwo to wykryć programowo, więc możesz sprawdzić czy taka sytuacja ma miejsce.
Opis jest nieprawidłowy. Ten moduł nie wystawia stanu przycisków na wyjściu. Na wyjściu będziesz miał surowe dane plus szum który będziesz musiał sam programowo obrobić. Najbliższa temu o czym piszesz jest propozycja (at)rb401
Ja stosuję z powodzeniem bootloader po USB z tego projektu: [url=https://github.com/libopencm3/libop... usb_dfu. Jak do tej pory nie miałem z nim problemów. Przerobiłem sobie aby można było z poziomu aplikacji wejść w tryb programowania. Pozdrawiam Tomasz
1. Deinicjalizujesz RCC, PLL i pozostałe zegary 2. Resetujesz i wyłączasz Systick 3. Wyłączasz przerwania wcześniej zerując flagi 4. Ustawiasz wskaźnik stosu na początek pamięci bootloadera 4. Skaczesz do adresu pamięci bootloadera +4 Wszystko jest analogiczne do poniższego przykładu dla F4: https://stm32f4-discovery.net/2017/04/tu...
http://dl.dropbox.com/u/59096846/1.png http://dl.dropbox.com/u/59096846/2.png http://dl.dropbox.com/u/59096846/3.png
Jeśli ten STM32 nie będzei miał prawie nic innego do roboty, to i programowo mógłby to dekodować. Sensowniej jednak byłoby zaprząc do tego timer w trybie pomiaru okresu i szerokości PWM. Uda się i jedno i drugie, o ile nie będziesz korzystał z SPL.
Owszem. Ale to makro jest definiowane co najmniej na dwa sposoby, np. w konkretnych aplikacjach przykładowych z STM. Czyli widać jasno że problem znany ludziom z STM i sami panują jakoś nad tym. Starasz się ich wybielić, co jest zupełnie niepotrzebnie, bo ich dokonania na przestrzeni lat pokazują, że o programowaniu zbyt wiele nie wiedzą. Przykładowo...
Dlaczego nie użyjesz sprzętowego SPI ?
mnowator Szkoda pieniędzy na STM32VLDISCOVERY. Dostajesz ST-Link + CPU z klawiszem i 2 ledami. Bieda straszna. STM32F4DISCOVERY jest znacznie lepszy. Więcej też znajdziesz przykładów jak zacząć i co można zrobić, a można sporo. ellox Za chwilę zauważysz jak bardzo takie "programowanie" ogranicza zamiast pomagać. tmf CoIDE jest zupełnie za darmo, obsługuje...
Warto STM32.
Nie znaczy to, że Microchip nie ma swoich problemów - ma i to niektóre bardzo poważne (stosując te procesory należy koniecznie czytać erratę), ale przynajmniej PWM wygląda na działający poprawnie. ZNam ten ból. :) Możesz w takim razie zobaczyć czy High Resolution Timer w STM32F334xx, STM32G474xx lub STM32H7xxxx spełni Twoje wymagania (rozdzielczość...
Rozwiązanie najprostsze: nie włączać watchdoga przez bajt konfiguracji w pamięci Flash - włączyć go programowo.
Dodajmy, że jak już ktoś musi zmieniać stan portu programowo, to w STM32 służą do tego raczej rejestry BSRR i BRR, a w innych uC albo analogiczne rejestry pod innymi nazwami (np. FIOSET, FIOCLR w LPC17xx) albo zapisu maskowany (np. w LPC11xx). W każdym razie nie robi się tego przez programowe operacje logiczne na portach.
Miałem dokładnie taki sam problem -> odmontowanie wszystkich napędów wirtualnych ( u mnie Deamon Tools ) pomogło.
Na swoją stronkę wrzuciłem najnowszą kompilację OpenOCD dla Windows, problem na który się natknąłeś powinien tam być rozwiązany. 4\/3!!
STM32 ST-LINK_CLI bo pewnie masz discovery, i każdy inny program konsolowy dedykowany do odpowiedniego programatora szybko i bezboleśnie do tego można jakiś skrycik napisać. Dodano po 4 ale tak jak koledzy piszą lepiej po id procesora, bardziej bezpieczne.
zmienna=0 -> zmienna==0? edit przez ten zapis nawet jeden bit kodu związanego z ifem i tego co jest po nim ({} lub linia po) nie jest obecny w kodzie maszynowym
W [url=http://www.st.com/internet/evalboar... jak ściągniesz i zainstalujesz masz ST Visual Programmer - obsługuje też STM32.
W rzeczywistości nie jest możliwe osiągnięcie takiej częstotliwości programowo. Zastanów się nad tym - nawet jeśli operacje które pokazałeś zajmowałyby 1 cykl (a nie zajmują!) to przy zegarze 72MHz (max dla typowych STM32) masz niby 2 cykle na zmianę, a więc 72MHz/2. 50MHz można wyciągnąć tylko za pomocą układów peryferyjnych typu timer, SPI, FSMC itd....
Na mojej stronce jest też przykładowy projekt-szablon, właśnie dla STM32F4 (dla płytki discovery - tej pierwszej). Zawsze to jakiś punkt odniesienia. 4\/3!!
stm32 programowa programowa stm32 rejestr stm32 arduino programowa
pompa pralka kulka prosta superheterodyna przegub jakie firma
ferroli wentylator mikroskop cyfrowy
Peugeot 1007 HDi, benzyna – odpowietrzanie układu paliwowego, gruszka, filtr, objawy zapowietrzenia MAGIC MG42BG324FSBT2-14 CV950S-R42 Free Firmware Download and USB Flashing Guide