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...
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...
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...
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.
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...
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...
Czy programowanie przez ISP odbywa się także przez port szeregowy liniami RxD i TxD? Dokładnie przez RxD0 i TxD0. Trzeba tylko odpowiednio przełączyć BOOT0 i BOOT1. Co do programu lepiej korzystać z oryginalnego Flash Loader jaki dostarcza ST.
a spróbuj przy odpiętym debuggerze, chyba że jest odpięty?
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...
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.
Witam Zajmuje się procesorami z serii Microchip, Atmel, TI i innymi zaczynam zabawę z ARM zakupiłem sobie zestaw RedDragon i posiadam jeszcze Port103V i na nim chciałem się pobawić na początek. Nie chciał bym za bardzo niszczyć pamięci Flash przez wgrywanie co chwilę małych programików do zapoznania się z peryferiami układu dla tego chciałem wgrywać...
Robię program składający się głównie z przerwań. Program steruje 6 silnikami krokowymi. Uruchomiłem więc 6 timerów dla kazdego silnika w trybie PWM, wypełnienie zawsze 50%, sterowanie częstotliwością. Żeby każdy silnik mógł wykonać zadaną ilość kroków (a zalezności miedzy silnikami są skomplikowane i nieprzewidywalne), każdy timer po wykonaniu impulsu...
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...
A gdzie zasilanie VDDA?
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.
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...
Możesz spróbować skonwertować do J-Link'a https://www.segger.com/jlink-st-link.htm... Powinien być szybszy
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...
Funkcja NVIC_SystemReset() z CMSIS.
A może po prostu ta wersja OpenOCD nie obsługuje tego układu? Sprawdź najnowszą. 4\/3!!
Dlaczego nie użyjesz sprzętowego SPI ?
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ę...
Czytałem ale nie znalazłem odpowiedzi na moje pytanie. Zasilacz z PC nie wydala. Dlatego chciałem wspomóc płytkę innym zasilaczem. Równocześnie do programowania potrzebuję mieć podłączony PC do USB aby debugować.
To nie szkodzi, że procesor jest czysty. Wgrywasz firmware ustawiając adres początkowy w stlinku i od początku wgrywasz tą imitacje firmware. Nic więcej procesor nie potrzebuje. Kontaktowałem się z creality oni nie udostępniają nic. A czytałem po forach sporo ludzi się wpakowało i w ten sposób uwaliło sobie płytę. Właśnie z przyzwyczajenia, że tego...
Warto STM32.
Ale mój post nie miał do niczego przekonywać. Jak ktoś chce używać C++ to niech używa. Jednak jak już się zdecyduje to może sprawdzić różnice w ten sposób że samą funkcjonalność napisze w C i w C++ (z użytymi template, przeciążonymi operatorami, intefejsami itp) i niech zobaczy jak wygląda to w ASM. Ja nie widzę jakiś super ficzerów które posiada C++...
Note Vector table entries are ARM/Thumb interworking compatible. This causes bit Binarnie 5 to 101, czyli bit 0 jest 1. Jak widać z informacji to wcale nie jest "adres pomiędzy"! W ARMach to zawsze był trik na zmianę trybu pomiędzy 16 a 32 bitowym. Jeśli myślisz poważnie o programowania ARM-ów, to lektura "Technical Reference Manual" może być dobra...
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
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...
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.
Jak JTAG nie chce się połączyć, to przełącz układ na tryb bootloadera - wtedy JTAG powinien się odblokować. Może być konieczne kasowanie pamięci przez bootloader. 4\/3!!
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...
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,
Witam serdecznie, Posiadam płytkę HY-Mini z prockiem STM32F103VCT6 i programator zgodny z CoolinkEx. Po tym jak kilkanaście razy zaprogramowalem układ zaczął pojawiać się następujący komunikat (czy to z CooCox IDE czy CoFlash): Error: Flash driver function execute timeout Nie udaje się też debugowanie w RAM (ale wczesniej nie probowalem, wiec moze po...
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.
A jeśli chciałbym mój program wgrać do RAM to musiałbym w tym Twoim skrypcie linkera dla sekcji np .text zamiast > rom AT > rom wpisać > ram AT > ram czy wewnątrz {} tez trzeba coś zmieniać? Jeśli wystarczy Ci, że program będzie działał jedynie przez debugger, to wystarczy ta pierwsza opcja. Jeśli byś chciał, żeby program normalnie działał z RAM, to...
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
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ść...
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
http://dl.dropbox.com/u/59096846/1.png http://dl.dropbox.com/u/59096846/2.png http://dl.dropbox.com/u/59096846/3.png
Tylko nie wiem czy ma sens używać przetworników A/C z STM czy jakieś dodatkowe peryferie. Co wy o tym myślicie ? Jak by nie było sensu używania A/C wbudowanych w MCU - to by ich nie wbudowywano. :) Jeżeli nie wymagasz bardzo dużej dokładności pomiarów, to myślę, że nie ma sensu pakować się w koszty kupując zewnętrzny ADC i robić sobie kłopot z dodatkowym...
Plik nagłówkowy mikrokontrolera można wyłuskać np. z paczki SPL pobranej ze strony ST. Dla Twojego STM32F103VBT6: [url=http://www.st.com/web/catalog/tools... (przycisk download na dole strony). Po rozpakowaniu archiwum: Libraries -> CMSIS -> CM3 -> DeviceSupport -> ST -> STM32F10x -> stm32f10x.h...
Po podłączeniu do zasilania na wyświetlaczu pokazuje się "Error GPIOA, pin#2". To znaczy że dużo rzeczy już Ci działa, np. program który wgrałeś, kwarc, wyświetlacz. To już zostaw kwestię programowania. NB. Jeśli będziesz przeprogramowywać to używaj włączonej opcji "Erase necessary pages". Komunikat na wyświetlaczu, który widzisz pochodzi z programu,...
Damian7546 - na prawdę 'walczysz' z tym już od 19 listopada? Co przez ten czas próbowałeś, jeżeli w ogóle coś próbowałeś? Przecież takie rzeczy załatwia się w kilkadziesiąt minut. Dodano po 1 Zainstaluj wersję wcześniejszą, np. 1.5.1, którą ja używam pod win8. Jeżeli nie będziesz mógł znaleźć, to mogę ci wysłać.
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.
I podpada pod łamanie zabezpieczeń...
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...
programowa stm32 programowa stm32 rejestr stm32 arduino programowa
pompa pralka kulka adapter sterowania kierownicy modele symulacji
Alternatywy dla niedostępnego włącznika młotowiertarki Jak rozebrać obudowę pralki Whirlpool TDLR60212?