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.
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.
Funkcja NVIC_SystemReset() z CMSIS.
Przejrzyj setkę wątków na forum poświęconych temu, dlaczego do przycisków nie uyżwa się przerwań portów, a potem zrób to w przerwaniu timera, np. tak, jak w tym artykule: http://ep.com.pl/files/10324.pdf Samo programowanie prtzerwania też masz ciut bez sensu - najpierw uruchamiasz przerwanie, potem programujesz linię portu, która ma je zgłaszać. Zanim...
a spróbuj przy odpiętym debuggerze, chyba że jest odpięty?
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ę...
Dopóki nie dowiesz się, co to OD, nie zrozumiesz, gdzie masz dwa błędy - sprzętowy i programowy.
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.
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
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.
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...
Witaj :) Co do wgrania, jeżeli używasz System Workbench for STM32 to tam trzeba na projekcie w drzewku nacisnąć prawym myszy, wybrać "Debug As" -> "1 Ac6 STM32..." i po odpaleniu wybrać: Debug device: ST-Link-V2 Debug interface: SWD Tutaj masz obrazki: http://forbot.pl/blog/artykuly/programow...
Co właściwie oblicza wbudowany w STM32 układ do CRC? Czy to jest to, co się zwykło określać mianem sumy CRC32? Widzę, że coś mi liczy, ale nie dostaję takiego wyniku, jaki bym się spodziewał. Może słabo googlałem, ale nie znalazłem odpowiedzi. Robię tak: grzegorz(at)duch:~$ cat crc abcdgrzegorz(at)duch:~$ crc32 crc ed82cd11 grzegorz(at)duch:~...
Programem H-JTAG programowałem ten procesor przez LPT [url=http://www.hjtag.com/]http://www.hj... Jeżeli chodzi o programowanie przez USB to ja wykorzystuję programator ZL30PRG [url=http://www.kamami.pl/index.php?ukey... Opis narzędzi do tego programatora znajdziesz...
Dlaczego nie użyjesz sprzętowego SPI ?
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...
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.
Rozwiązanie najprostsze: nie włączać watchdoga przez bajt konfiguracji w pamięci Flash - włączyć go programowo.
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...
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.
Ja osobiście zaczynałem od mikrokontrolera ATmega8, bardzo prostu w obsłudze, wg. mnie idealny do nauki. Poza tym możesz skorzystać z jakiegokolwiek miktokontrolera ATtiny, zaletą zarówno ATmegi jak i ATtiny jest fakt, że bez problemu dostaniesz je w obudowach DIP, dzięki czemu łatwo jest budować układy na nich oparte na zwykłych płytkach uniwersalnych.
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
Niestety mimo usilnych działań i różnych sztuczek nie udaje się aby odczyty/zapisy były pewne. Zdarzają się błędy, rzadko ale się zdarzają. Rozwiązaniem jest programowa obsługa i2c.
Witam! Widziałem pełno materiałów gdzie można wyczytać że czas reakcji na przerwanie w Cortexach jest łatwo przewidywalny. Aczkolwiek nie dotarłem do źrodeł wyczerpującej wiedzy. Chciałbym się dowiedzieć jak obliczyć czas po jakim zostanie wykonany podprogram w uP po przerwaniu z zewnątrz oraz jak policzyc czas uruchomienia podprogramu po programowym...
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...
Przeglądając źródła, które Pan podesłał spodobał mi się sposób programowania wykorzystujący mbed.h . Czy zna Pan jakieś paradniki/źródła opisujące jak przygotować środowisko (w moim przypadku Atollic) by tak programować. Sądząc po pytaniu, odnoszę wrażenie że jakby nie za bardzo chyba czujesz czym właściwie jest mbed. Tak że jeśli mógłbym coś zasugerować,...
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.
Nie chciałbym inwestować na samym początku w J-linka Pamiętaj tylko, że świat nie kończy się na Keilu i JLinku [; Co do Twojego głównego pytania - wystarczy wpisać w google nazwę płytki, kliknąć w pierwszy link i przeczytać (drugi akapit). 4\/3!!
Nic więcej nie trzeba, tylko w środowisku wybierz właściwy układ z właściwym rozmiarem pamięci Fłash i RAM. Oczywiście układ trzeba też zasilić.
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.
Przepraszam (nie znam się), ale czy te płytki nie posiadają bootloadera w sztandarze? Jest jakiś serial bootloader. Ja zrobiłem ładowanie firmware jak plików na pendrive (nie trzeba softu do programowania). A drugie pytanie, czy da się to programować przez arduino IDE? Arduino? Nie znam, nie używam, nie wiem. :) Sorry, nie mogłem się powstrzymać: http://obrazki.elektroda.pl/2059710500_1...
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,
Hej a czy samo ST wyjaśnia na kiedy planują wyjść na prostą z produkcją MCU. Ostatnio słyszałem od kolegi że krzem już mają tylko brak nóżek do scalaków. Nie wiem czy to prawda czy nie ale męczy to że wykupiłem sobie kurs żeby nauczyć się programować procki STM32 a tu taki klops że nawet nie ma na czym zbudować jakichś prototypów itd.
No coż - faktycznie w opisie produktu nie jest nigdzie napisane "wprost", że jest panel dotykowy, jednak: - na zdjęciu widać, że jest to panel dotykowy (każdy kto widział raz w życiu panel rezystancyjny to zauważy), - w schemacie jest, - w opisie pinów jest opis podłączenia "touch panel", - na każdym filmiku na youtube widać że obsługa jest z panelu...
Nie wspominając już o tym, że wbudowany w Discovery ST-Link może pracować samodzielnie i programować zewnętrzne układy przez SWD.
Definiowanie własnych operatorów jak i wiele innych rzeczy nie związanych z obiektowym programowaniem też jest bardzo pożyteczne w C++.
Funkcja SystemInit zawiera ustawienia, które powinny być wykonane przed zainicjowaniem (często czasochłonnym) środowiska dla programu. Zwykle umieszcza się w niej programowanie źródła zegara, parametrów pamięci i watchdoga. Wzorcową funkcję SystemInit znajdziesz np. w CMSIS core dla Twojego mikrokontrolera. W środowisku Keil istnieje sprytny mechanizm...
Ja do wora dorzucę jeszcze Nucleo-F103RB. W Kamami za 51 zł. Programowanie w postaci przeciągnij i upuść :). Niestety póki co, openocd nie obsługuje stlinka w wersji v2-1, jednak bez problemu debuguje się z Coocoxa.
Witam. W niedawnym konkursie wygrałem zestaw STM32F0Discovery w którym zintegrowano programator ST-Link (obsługuje JTAG oraz SWD). Wiele osób radziło mi, abym programowanie µC zaczął od czegoś prostszego i lepiej opisanego, czyli AVRów. Jako że szkoda mi pieniędzy na USBasp, a złącza LPT w komputerze nie posiadam, zastanawiam się czy może jest...
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...
a tu na ostro dyskusja o wyższości ARM, XMega, czy też Attiny, a może PIC, a może STM32. Jeśli nie korzysta sie intensywnie z peryferii jak np I2C, SPI, itp, tylko przeważnie "kugluje" sie GPIO to co różnica jaki to procek? 32-bit przeważnie są tańsze niz 8-bit. Widziałem rozwiązania programowe I2C, bo ktoś nie potrafił obsłużyć sprzętowego I2C w STM32,...
Witam, programowałem sobie na spokojnie (próbuję nauczyć się odpalać timery od zewnętrznych sygnałów zegarowych wchodzących na dany pin). W pewnym momencie chciałem wgrać program i otrzymałem taki komunikat: Open On-Chip Debugger 0.9.0-dev-00415-g2d4ae3f-dirty (2015-06-12-17:54) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html...
SystemInit jest w dołączonym do projektu pliku ...system...c, a to, co w niej jest, zależy od tego, ile miesięcy temu wyszedł pakiet do danej serii. Nowsze wersje SystemInit nie robią prawie nic, starsze dość sporo. Zawsze możesz zmienić nazwę oryginalnej prcedur i napisać własną SystemInit(); Obsługa LCD w przerwaniu timera ma m.in. tę zaletę, że jest...
Z tą automatyczną kontrolą się jeszcze będę bawił, a przy okazji mam jedno pytanie :) Jak to jest z tą flagą RXNE ? mam : while (!(SPI1->SR&SPI_SR_RXNE)&... Data = SPI1->DR; i żeby poprawnie działało muszę dać opóźnienie pomiędzy while-m a odbiorem danej inaczej się krzaczy.
Miałem dokładnie taki sam problem -> odmontowanie wszystkich napędów wirtualnych ( u mnie Deamon Tools ) pomogło.
A co robi w kodzie takie coś? Nawet masz komentarz napisany. [syntax=c]/* Wygenerowanie przerwania EXTI_Line9 programowo */ EXTI_GenerateSWInterrupt(EXTI_Line9);[/s...
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...
A gdzie zasilanie VDDA?
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...
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ć.
Po co robić programowe I2C w takim mikrokontrolerze? 4\/3!!
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...
Witam. Mam pytanie teoretyczne otóż napisałem obsługę sim900 i teraz chcę napisać dodawanie kontaktów telefonicznych. Zastanawiam się co wybrać, zewnętrzny eeprom, emulowany eeprom lub jeszcze inaczej? Proszę kolegów o sugestie jaki sposób będzie najlepszy , nie przychodzi mi pomysł jak programowo to rozwiązać. Pozdrawiam.
Powinno to wystarczyć. jednak co do konfiguracji CubeMX nie podpowiem, w gruncie rzeczy obsługę Modbusa i tak można zrobić programowo, nawet jest do tego biblioteka w necie.
Jak mogę podłączyć pamięć SRAM lub SDRAM (bardziej SDRAM bo większa pojemność) do mikrokontrolera STM32 lub jakiegoś AVR-a? Chodzi mi o zwykły zapis i odczyt danych z takiej pamięci. Jak to wygląda sprzętowo i programowo?
Witam, z czego kolega wnosi ze "druga" opcja jest pewniejsza ? Akurat w tym układzie to nie ma znaczenia, ale na przykład w STM32 jeśli podepniesz reset pod VCC, to nie będziesz w stanie zresetować układu, nawet programowo. Reset tam jest wejściem i wyjściem. Ergo, jeśli zawsze podpinasz reset przez rezystor to zawsze będzie działać, a jak bezpośrednio...
Zawsze możesz spróbować połączyć się z bootloaderem na UART i przy jego pomocy skasować pamięć i usunąć ewentualne zabezpieczenia... Przejrzyj manual OpenOCD pod kątem dziwnych komend dostępnych dla tego typu układu, może to coś z option bytes? 4\/3!!
Krótko i na temat, dzięki za odpowiedź
A jakie znaczenie ma tryb pracy, kiedy sygnał zegara w SPI musi być push-pull? To nie I2C z wyjściami OD. Proszę, przestań wprowadzać w błąd. Przy okazji, możesz podać konkretny układ realizujący transmisję po SPI, który nie będzie działał z dołączonym LEDem na wyjściu? Tylko bez wymyślania wyjątków od wyjątków typu programowy SPI na PCF8574.
Płytka STM32F0DISCOVERY ;)
Witam Mam problem z zaprogramowaniem uC STM32F103RBT6. Układ wcześniej bez problemu chodził i się programował. Problem pojawił się gdy zmieniłem wartość rejestru FLASH->ACR z 2 na 0. Od tej pory H-JTAG widzi procka ale nie mogę wgrać flasha :( Otrzymuje taki komunikat: http://obrazki.elektroda.net/81_12461006... Czy można coś z tym zrobić ?
Wybór mikrokontrolera dla mnie w tej sytuacji wydaje się raczej sprawą drugorzędną. Ważniejsza jest eliminacja zakłóceń w warstwie sprzętowej lub programowej. Ogólnie mikrokontroler STM32 wydaje się być dość dobrym wyborem-ostatecznie są wersje szybsze niż taktowane 72MHz ( serie F4, F7). Trochę trudno cokolwiek się wypowiadać bez pooglądania schematu...
Hmm, nawet bez chip erease działa. Na fabrycznym STM32F103VCT6 podpinam do STM32F4DISCOVERY linie VTG, GND, nRST, SWCLK, SWDIO, zworki ST-LINK zdjęte i działa bez problemu. --- Już dokładnie zidentyfikowałem problem, połączenia mam takie: DISCOVERY <> płytka z STM-em 1. GND (z listwy procesora) <> GND 2. 5V <> 5V (i potem stabilizator...
Sprawdź jaką charakterystykę fazową ma ten wzmacniacz, żebyś miał punkt odniesienia. Nie znalazłem w DS informacji o charakterystyce fazowej tego wzmacniacza. Czy ns procesorach STM32 można zrobić kilka filtrów programowych? Gdzie można znaleźć dokładniejsze informacje o technologii zastosowanej w słuchawkach z tłumieniem hałasu?
Nie bardzo rozumiem, chodzi Ci o komunikat: Warn : Block write error address 0x8000000, wcount 0x12e? Przecież 0x8000000 to chyba początek pamięci flash? Po za tym to ta sama binarka, która ładnie się ładuje do flasha(chodzi mi o pierwszą komendę której listing pokazałem). Problemem tutaj jest, to, że eclipse przestał poprawnie ładować do flasha...
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ść...
I podpada pod łamanie zabezpieczeń...
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,...
Witam, czy aby wykorzystać projekt Freddiego stm32f4_blink_led dla procesora STM32F429IIT6 wystarczy przerobić plik STM32F4xxxG_rom.ld? A może ktoś posiada już ten projekt przerobiony i mógłby udostępnić? Byłbym bardzo wdzięczny. Oraz czy po podłączeniu z płytki F4 Discovery sygnałów T_JTCK, T_JTMS, T_NRST, T_SWO i GND oraz rozłączeniu na niej dwóch...
A co z tymi makrami typu CR_PER_Set i podobnymi? Mój kod programowania la STM32F1 jest bardzo podobny, tylko bez tych wszystkich udziwnień i działa niezawodnie przy każdym poziomie optymalizacji, niezbyt wiem co tutaj może być nie tak... Może dodaj "volatile" przy argumencie funkcji FLASH_WaitForLastOperation()? Pewnie nic to nie da, ale... Spróbowałbym...
Po 5 latach chyba kolega sobie poradził:) Temat do zamknięcia. PS.Do sterowania nadajnikiem MAX3485 w STM32 kluczem jest poszukanie w RMie informacji o fladze TC a następnie programowe sterowanie odpowiedniego GPIO w przerwaniu od UARTu.
Może inaczej. Czy ktoś obczaił programowy stos IRDA?
konstrukcja na pojedynczych licznikach TTL + bramkowanie z GPS. Całość odczytywana i obrabiana przez procesor. Bez sensu. Liczniki sa w mikrokontrolerze, jak licznik jest za krótki, to albo przerwanie od przepełnienia i część licznika programowa, albo lepiej kaskadowe połączenie liczników. W STM32 kaskadowo można łączyc liczniki programowo, w AVR sprzętowo....
Ja do debuggowania używam tak: monitor reset monitor soft_reset_halt load I mam zaznaczone: - Set breakpiont at: main - Resume Działa za każdym razem.
W modelu zdarzeniowym nie ma przełączania zadań, bo program nie "zatrzymuje się w oczekiwaniu" - obsługa zdarzenia kończy się i już. Tyle, że zadanie może wykonywać się długo, np zapis dużego pliku, programowe dekodowanie JPG. Wtedy trzeba rozbić na mniejsze fragmenty co bywa upierdliwe.
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....
Tylo szkoda pamieci programu na kopie tych danych, zwlaszcza jak ich troche będzie. Pamiętaj o tym, że kopia potrzebna byłaby tylko gdy potrzebna Ci jest jakaś wartość domyślna, bo jeśli po prostu mają być wyzerowane (albo wszystkie mają mieć jakąś konkretną, tą samą wartość) to kopia nie jest potrzebna (jak przy sekcji .bss). Wydaje mi się, że najlepszą...
Jeżeli zadajesz pytanie, to zamykanie tematu uniemożliwia uzyskanie odpowiedzi. Odblokowałem. Źródło taktowania po zwolnieniu sygnału reset jest określone sprzętowo. W przypadku STM32F302 jest to opisane w sekcji 9.2.6 w [url=https://www.st.com/content/st_com/e...
możecie mi podpowiedzieć jaki jest polecany prosty w obsłudze IDE do STM32? JHestem przyzwyczajony do KEILa ale on ma ograniczenie do 32k Szukam coś podobnego, bo Keil ma dość fajna możliwość symulacji programowej, z podglądem jak wygląda kod w ASM. Znacie coś?
... układ pracuje może z wewnętrznego oscylatora a te trzeba "włączyć" programowo? STM32 z "pustym" flashem pracuje na wew. oscylatorze i można bez problemu wgrać do niego program przez JTAG'a lub RS232 wykorzystując fabrycznego bootloadera. Ja mam wykonaną płytkę na której jest tylko STM32, stabilizator i parę kondensatorów. Układ jest widziany bez...
Ja się nie zachwycam. Jak pisałem raczej dobieram kostkę do potrzeb. A dla PIC16 kupowanie narzędzi powyżej PICKIT3 to przesada. Natomiast jeśli chodzi o narzędzia programowe to jednak wskazanie na Microchipa. Albert
Dwukrotne przeinatalowanie programu rozwiązało problem.
Możesz spróbować skonwertować do J-Link'a Fajnie działa. Potwierdzam.
Ja z kolei z przejściówkami firmy Profillic (PLxxxx) mam niezbyt miłe doświadczenia. Może są i tańsze od FTDI, ale działają czasami jak chcą, a raczej jak nie chcą to nie działają za dobrze (zawiasy itp.). Ja osobiście mam przejściówkę FT232RL z wszystkimi wyprowadzeniami na DIP i jak chcę to przełączam sobie zworką między 3,3V, 5V lub napięciem podanym...
1. Ja się uczyłem z tej książki: https://helion.pl/ksiazki/jezyk-c-szkola... Dobrze opisane podstawy języka. 2 i 3. Cóż chyba najlepiej zacząć od podstaw, które arduino bezczelnie omija. Musisz zapoznać się z wszystkim co było "pod spodem" funkcji na arduino. Czyli co to są rejestry, jak je obsługiwać...
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.
Sprawdziłem jeszcze czy USB na procku działa. Dodałem do projektu USB CDC i zapętliłem transmisje. Działa to bez problemu, więc wnioskuje że nie ma problemu z jakieś liniami, impedancjami itp. Czy może ktoś to sprawdzić na swoim NUCLEO z prockiem L073 ? Potrzebny kabel USB z końcówkami do goldpinów. Na mojej NUCLEO: USB->Czerwony: CN7 pin18 (+5V), Czarny...
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
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!!
Czy wystarczy jeśli zaprogramuję ten procek uruchamiając np Debug w Cube IDE? W sensie, widzę, że procesor działa nawet bez programatora, ale chcę mieć pewność czy w przyszłości coś się z tym nie stanie. Nic się nie stanie. Druga kwestia; czy tak wgrany program do pamięci uC jest bezpieczny? Tzn, da się go jakoś "wyciągnąć" z procesora? Tak, można...
W opcjach projektu (zaznacz w oknie z drzewem pliku projektów głowny plik projektu ) a następnie w oknie pod spodem z opcjami w częsci Debug environment -> Debug tool zmieniasz z R-link na Simulator SIM-ARM i to wszystko :) Dla ułatwienia: http://obrazki.elektroda.net/87_12351556... Pozdrawiam Adam
W [url=http://www.st.com/internet/evalboar... jak ściągniesz i zainstalujesz masz ST Visual Programmer - obsługuje też STM32.
Witam. Dorwałem płytkę DISCOVERY z w/w procesorem. Próbuję odpalić led, program inicjujący wykonany jest przez stm32cubemx. Program się ładnie kompiluje, lecz nie mogę debugować, programować. Program Size: Code=1968 RO-data=460 RW-data=4 ZI-data=1028 "testt Configuration\testt Configuration.axf" - 0 Error(s), 0 Warning(s)....
No litości, od 3 lat steruję WS2812 z STM32 na dwa sposoby bez żadnych bramek i w dodatku przez DMA, czyli bez narzutu programowego w czasie rzeczywistym, a rozwiązanie z SPI dawno opublikowałem.
Jeśli zaczynasz zabawę - zacznij od Keila - nie będziesz miał problemów z konfiguracją. Potem możesz przesiąść na jakieś środowisko z Eclips - np. Atollin lub STM32open (AC6).
flash write_image erase c:\lab1.hex 0x08000000 bin 1. Programujesz plik hex, a OpenOCD zmuszasz do traktowania tego jako bin... od razu porażka 2. W ogólnym przypadku plików NIE WOLNO przesuwać o offset. flash write_image erase c:\lab1.hex - TYLKO Pozatym prędkość 5kHz? Bez przesady - daj 1000kHz (1MHz). 4\/3!!
Piszę program (kolejną wersję na nową płytkę) na STM32L010 w środowisku STM32CUBEIDE. Raz udało mi się wgrać program którzy działa prawidłowo, a za drugim razem przy wgrywaniu przechodzi około 90% i wywala taki błąd: Error in final launch sequence: Failed to execute MI command: target remote localhost:61234 Error message from debugger back end: localhost:61234:...
Coś naplątałeś... Aby uzywać malloca bez dziwnych errorów, musisz zadeklarować odpowiednią ilość miejsca na stertę . Co z tego, ze twoje zmienne zajmują niewiele ramu, skoro najpewniej ustawiles sobie parę kB sterty, i gdy przekroczysz te pare kB, program ci sie natychmiast wykrzaczy, bo oczywiście najpewniej nigdy nie sprawdzasz, czy malloc przypadkiem...
Dzięki za sprawdzenie. Masz na myśli przerwanie od DMA? Tak, mogę toglować w przerwaniu od zakończenia transmisji DMA, co mam potwierdzone na analizatorze logicznym. Ja również testowałem na 14 pinowym F070, to bliźniacze rodziny, chyba różnią się tylko obecnością USB w tym moim, ale może jeszcze są jakieś drobne różnice, nie powinny mieć żadnego wpływu...
stm32 programowa programowa stm32 rejestr stm32 arduino programowa
ursus podnośnik regulacja podnoszenia prostownik pralki fujitsu siemens amilo sterowniki
hoverboard żyroskop kosiarka elektryczna
Zmiana temperatury z 52°C na 38°C - przyczyny Programowanie pamięci Flash NOR 39VF1601