Dzięki za odpowiedź, ale to chyba nie jest w HAL... Zgadza się. Nie jest. Ale STM przepisał te algorytmy również na HAL i te źródła znajdują się np. w repozytorium CubeMx w ścieżce: Repository\STM32Cube_FW_F1_V1.6.1\Projec... To jest akurat dla tego typu uC który jest na tym Nucleo, ale jeśli potrzeba...
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...
Tyle że ja mam implementację EEPROMu podobną do tej od ST, tyle że przechowującą dowolny rozmiar w jednej "komórce". Moja implementacja jest dobra jeśli masz kilka-kilkanaście-kilkadziesiąt zmiennych do zapisywania w teorii dowolną ilość razy w dowolnej kolejności. Jeśli u siebie będziesz przechowywał te wartości razem i np ustawiał je tylko raz (nigdy...
https://obrazki.elektroda.pl/5694434400_... Moduły zasilaczy warsztatowych, takie jak DPS5005, dostępne są od dłuższego czasum.in. na AliExpress. Doczekały się wielu recenzji, w większości pozytywnych. Jednakże często wskazywanym problemem z tymi modułami jest kiepskiej jakości oprogramowanie – interfejs użytkownika pozostawia...
Witam , Wracam do tematu . Zegar skończony i przetestowany . Podziękowania dla autora za pomoc . Kilka krótkich filmów z pracy zegara wykonane telefonem . https://filmy.elektroda.pl/11_1551555088... https://filmy.elektroda.pl/90_1551555174... https://filmy.elektroda.pl/15_1551555225... https://filmy.elektroda.pl/89_1551555287... Jedna z dwóch gier...
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...
OpenCV uruchamiany jest głównie na wysokowydajnych platformach obliczeniowych czy mocnych mikroprocesorach, ale pakiet ten może wykonywać kilka rodzajów aplikacji do przetwarzania obrazu na prostych mikrokontrolerach. Przetwarzanie obrazu stało się częścią naszego życia. Nikogo nie dziwi rozpoznawanie twarzy w smartfonie czy wykrywanie pasa ruchu przez...
Ponieważ dopuszczalne są też pytania z dziedziny, być może tych niemądrych Bynajmniej nie jest to żadne "niemądre" pytanie. Jest bardzo dobre i pokazuje właśnie jak bardzo zmitologizowane są RTOSy. czy taki STM32G070RBT6 z 36 KB ram oraz 128 KB flash (w detalu ok. 5.5 zł) to już się nada czy nie do RTOS? Jak najbardziej. Ilość flash jest zwykle mało...
Witam. Zaopatrzyłem się niedawno w aplikację zwaną Flash loader demonstrator. Umożliwia ona m.in. zapis i odczyt pamięci programu mikrokontrolera STM32 przez bootloader poprzez RS232. Gdy chciałem odczytać pamięć flash i zapisać obraz pamięci w pliku hex mocno się zdziwiłem, gdyż plik miał rozmiar 319744 bajtów, a flash mojego STM32F103RB ma "tylko"...
Nie bardzo rozumiem. Testowana przez kogo? Flash testowany w fabryce. Mowiłem o flashu. Sorki. A RAM określisz na podstawie rozmiaru flash i DEV ID jeśli chcesz dla wszystkich STMów.
Znalazłem informację, że: text + bss = FLASH data + bss = RAM To powinno wygladac tak: text + data = FLASH data + bss = RAM Zmienne zainicjalizowanie (.data) powinny zostac przekopiowne z FLASH do RAM przed funkcją main. 1) Deklarujesz tablice i ja inicjalizujesz (bedzie zajmowala miejsce we FLASH oraz RAM) 2) Tylko flash. 3) Zadeklarowałeś tablicę...
W emulowanym EEPROMie najwygodniejszą opcją jest przechowywanie danych o stałym rozmiarze, który przy okazji w jakiś sensowny sposób pozwala wykorzystać rozmiar strony. Jeśli możesz się ograniczyć tak że KAŻDY wpis ma ten sam rozmiar, to emulowany EEPROM jest opcją. Choć wiele zależy od tego jaki dokładnie STM32 - w niektórych (np. STM32F4) najmniejszy...
Obawiam się, że rozmiar strony może zwiększyć tylko producent, i to na etapie projektowania układu. ;) Użytkownik może za to określić liczbę stron, których che używać.
LPC11E i parę innych serii. W rodzinie STM32F też się parę serii znajdzie. Można też użyć zewnętrznej pamięci na I2C lub SPI za grosze - to po pierwsze. A po drugie: Pamięć Flash w STM32 może być programowana pojednyczymi słowami, więc nie ma żadnych problemów w użyciu jej do przechowywania często zmienianych danych. Jesta na to parę sposobów, w zależności...
Mam prośbę-czy mógłbyś zerknąć na stronę 14-tą gdzie jest tabelka którą nie wiem jak rozumieć, czy wynika z niej pojemność czy nie? śli chciałbyś zapisać 2000 dwubajtowych niezależnych elementów, to ta emulacja eepromu się nie nada - potrzebowałbyś przecież 2000 x (2 + 2) = ~8kB, a tam pojemność ograniczona jest przez rozmiar strony (1 lub 2kB - zależnie...
Z kolei modyfikacja skryptu linkera ma tą wadę, że jeśli przeniosę kod na inny MCU to znowu bedę musiał ten skrypt modyfikować. Emulacja oparta na czystm C po prostu zadziała. No... bo każdy mikrokontroler ma dokładnie ten sam rozmiar strony i dokładnie ten sam kontroler pamięci, więc z pewnością zadziała Ci ten kod bez żadnych zmian... Ehe... Kupę,...
Najpierw napisz do czego będziesz go wykorzystywać? Do programowania pamięci NOR Flash o rozmiarze 64MB (512mbit). Tylko i wyłącznie do tego. JTAGiem przez STM32 z OpenOCD trwa to dwie godziny. Seggerowski J-Flasher jest z 10 razy szybszy ale ten rozmiar go akurat przerasta i się wysypuje. Z 16MB i 32MB sobie radzi, z 64MB już nie. Poza tym mikrokontrolery...
Witam. Testuję właśnie środowisko System Workbench for STM32 i mam problem z debuggerem dla procka STM32F030F4P6. Wgrywanie do pamięci FLASH działa. Programator ST link z płytki stm32VL, połączenie przez SWD. Konsola odpowiada: Open On-Chip Debugger 0.9.0-dev-00415-g2d4ae3f-dirty (2015-06-12-17:54) Licensed under GNU GPL v2 For bug reports,...
Od pewnego czasu zauważyłem na forum zainteresowanie tematyką programowania mikrokontrolerów i mikroprocesorów ARM w języku C# z wykorzystaniem platformy .NETMF będącej córką słynnej platformy Microsoft .NET Framework, którą zna chyba każdy. Niedawno wpadła mi do rąk nowa książka wydawnictwa BTC na ten temat. Zauważyłem wiele nowych zestawów uruchomieniowych...
Witam Korzystam ze środowiska Eclipse. OpenOcd wydaje mi się, że działa poprawnie (widok konsoli): Open On-Chip Debugger 0.7.0 (2013-05-05-10:41) Licensed under GNU GPL v2 For bug reports, read http://openocd.sourceforge.net/doc/d... Info : only one transport option; autoselect 'jtag' adapter speed: 1000 kHz adapter_nsrst_delay:...
Integracja SPX3819 z STM32 dla ulepszonych rozwiązań USB do rozpoznawania linii papilarnych Pamięć flash USB jest jednym z tych narzędzi, których często używamy w naszym codziennym życiu i pracy. Pomaga nam przechowywać i kopiować ważne pliki i dane. Jest mały i łatwy do przenoszenia, ma dużą pojemność, jest niedrogi i działa niezawodnie. Rozmiar dysku...
To wiem. Z rozmiaru programu to wynika. Ale chciałbym się też w jakiś sposób zabezpieczyć. A możesz się w sposób jasny wypowiedzieć? Zawsze możesz zmienić rozmiar pamięci flash w Keilu.
ponad 20 razy więcej niż to samo komilowane na atmege328 Doprawdy? Rozumiem, że program zajmujący na ATmedze 32k będzie na STM32 zajmować 640k? Jest to oczywista bzdura. myślę że im mocniejszy mikro kontroler tym więcej pamięci marnuje a szkoda Wniosek całkowicie błedny. A tak przy okazji jaki w tym problem? Czy zabrakło Ci FLASH? Jeżeli nie to czym...
Tak naprawdę, to ten wzór powstał z waszych :) Z lewej strony równania (at)stmx, a z prawej Twojego :) Page_127 to początek ostatniej strony flash = 0x0801FC00. U mnie w STM32F103 strony mają rozmiar 16x1024. Kompilator utworzony w Eclipsie na podstawie poradnika Freddie Chopin.
Zacznijmy od tego, że OpenOCD nie uruchamia się poprawie, wiec warto byłoby dochodzić do sprawy "krok po kroku". Przede wszystkim plik lpc2xxx.cfg NIE JEST przeznaczony do uruchamiania bezpośredniego, należy ZAWSZE użyć któregoś z konkretnych plików. Tymczasowo możesz użyć pliku lpc2148.cfg, ale najlepiej przerób go sobie na lpc2146 - komentarze w środku...
Nie wiedziałem, że duży rozmiar pamięci obliguje programistę do pisania dłuższych i mniej czytelnych programów. ;) Poza tym większy flash większa cena znacząca.
Efekt dokładnie taki sam jak w przypadku moich wypocin. Zawiesza się i ląduje gdzie? Próbowałeś zmniejszyć w skrypcie linkera rozmiar dostępnej pamięci flash i RAM, np. każdą o połowę? Pokaż te pliki które zmieniłeś.
Witam, Długo już szukam i nigdzie znaleść nie mogę: Jak rozpoznać jaki jest rozmiar obszaru backup danego stm32? Niektóre mają 10słów (20bajtów), inne 42słowa (84bajty), ale nigdzie nie mogę znaleść klucza które są jakie, i czy może są jeszcze jakieś inne wersje. Przekopałem dużo dokumentacji, jedyne co zauważyłem to że procki z małym flash'em zazwyczaj...
Na mojej stronce znajdziesz gotowy projekt który można zaimportować do Eclipse'a - użyj tego o nazwie "stm32_blink_led". W projekcie masz wszystko co trzeba, włącznie z poprawnym skryptem linkera. Aby dostosować go do Twojej płytki po prostu zerknij do pliku config.h i zmień częstotliwość docelową oraz port na którym jest diodka. W pliku z rozszerzeniem...
Wszystko da się zrobić, ale nie wszystko ma sens. Moduły będą miały strukturę płaską tzn wywołując moduł z modułu nie będzie się zmieniał stos moduły wiedzą który jest kolejny a który poprzedni moduł. I tu chyba nie rozumiesz, o czym piszesz. Jeśli jeden moduł woła drugi, to ten drugi musi wrócić do tego pierwszego, a takie wywołanie zajmuje miejsce...
Coocox jest problematyczny dla początkujących??? Pierwsze słyszę. Większość zaczyna od Coocoxa:) Nie wiadomo o co tu chodzi, prawdopodobnie jakiś drobiazg, ale diagnozy na odległość są trudne. Coocox po instalacji i pokazaniu katalogu z toolchainem, działa z reguły bez problemu. Też zaczynałem od niego, mając zero wiadomości o ARMach, C i toolchainach....
Kontroler karty operuje na sektorach 512B nie blokach 128kB Czytaj uważnie. Ja pisałem o blokach w pamięciach NAND flash, a nie o tym co emuluje kontroler karty SD. Zbych_: skąd masz taką informację? Z lektury datasheetów pamięci NAND flash, które są wkładane do kart SD, np. pamięci ST (obecnie numonyx) 8Gb (1GB) mają bloki w rozmiarze 128kB.
chce go uruchomić na tym: http://allegro.pl/stm32-plytka-prototypo... Kodu w sumie zadnego nie spłodziłem. W przykładzie choppina zakomentowałem jedynie samą zawartość pętli while by nie mrugała diodami. | Yagarto w sumie działało to co miało działać. Kod w całości debugował się. była praca krokowa itp. A w tym...
https://obrazki.elektroda.pl/4155804500_... Pod koniec ubiegłego roku firma STMicro zaprezentowała, jak twierdzi, pierwszy mikrokontroler na rynku wykonany w technologii 90 nm - STM32G0. Jest to układ z rdzeniem ARM Cortex-M0+ o taktowaniu zegarem o częstotliwości 64 MHz. W momencie prezentacji pierwszego układu, rodzina ta obejmowała...
Jeżeli chodzi o ffconfig.h to próbowałem różnych ustawień a z desperacji ;) nawet zupełnie kosmicznych ich kombinacji. Jeżeli chodzi o ustawienia kompilatora to -O0 -> prawie najnowszy bleeding edge toolchain. Przed każdym buildem robię clean'a. Dodam, że dzieje się to na dwóch różnych kartach. Próbowałem też z różnymi typami zmiennych a uchwyt systemu...
już wiem czemu działa [; myślałem, że w STM32 jest tak jak w ARM7 - że jedynie kawałek pamięci jest remapowany w obszar wektorów przerwań. Doczytałem właśnie, że jednak cały FLASH jest dostępny zarówno pod adresem 0 jak i adresem 0x8000000. Właśnie dlatego całość działa. Cofam więc to co powiedziałem - układ będzie działał poprawnie, bo inicjalizacją...
Po długiej przerwie wracam do tematu bootloadera. Zrobiłem nowy projekt w Eclipse z pomocą tutoriala Freddiego i na podstawie projektu bootloadera z EP. Połączyłem projekt stm32_blink_led z plikami bootloadera wykorzystując makefile, startup i .ld z projektu Freddiego. Udało się uruchomić i debugować aplikacje bootloadera. W załączniku połączone projekty...
Stosy są wyrównane do 8. A pamięci prawie nie używam, zmiennych globalnych jest jakieś 100b a stos jest ustawiony na 2000b. Trochę podłubałem w temacie i doszedłem do wniosku, że wykrzaczanie następuje gdy rozmiar kodu wynikowego zbliża się do 8kB (robię na F100c4t6b który ma 16kB). Dla testu zrobiłem [syntax=c]int sscanf_( char *src, const char *format,...
Trzeba zmienić PROGRAM. Domyślnie w STM32 tablica wektorów znajduje się w flash, a to skąd uruchamiasz program czy jak jest skompilowany nie ma żadnego znaczenia. Manual: Boot from the embedded SRAM: SRAM is accessible only at address 0x2000 0000. Note: When booting from SRAM, in the application initialization code, you have to relocate the vector table...
Cześć, potrzebuję mieć sekcję non-init w RAMie. Z racji tego że się średnio orientuję w skryptach linker, prosze o pomoc. Fragment yaml dla mojego STM32 wygląda tak: [syntax=bash]memories: flash: compatible: - on-chip-flash address: 134217728 size: 1048576 $labels: - flash SRAM: compatible: - on-chip-RAM address: 536870912 size: 131072 $labels: - SRAM...
Offset powinien być wielokrotnością rozmiaru tablicy wektorów zaokrągloną w górę do najbliższej potęgi dwójki. W moim przypadku to: 59 wektorów, a po zaokrągleniu w górę to 64. 64 należy pomnożyć * 4 (bo 4 bajty na wektor) i mamy 256 = 0x100. Tyle także wymaga funkcja NVIC_Set_VectorTable. Wracając do rejestru. Nie mogę po prostu zrozumieć jego budowy....
http://obrazki.elektroda.pl/7258579400_1... Witam. Chciałem dzisiaj przedstawić kolejny projekt z cyklu "inni mają - mam i ja" ;) Tym razem jest to miniaturowy sterownik ethernetowy - " uWebServer ". Układ zbudowany został w oparciu o mikrokontroler Cortex-M3 - STM32F103C8T6, do tego kontroler ethernetu "znany i lubiany" - ENC28J60. Całość...
zwiększenie rozmiaru powoduje błąd kompilacji z powodu niewystarczającej ilości pamięci To na początek zacznij od poznania różnicy między sin() a sinf(), potem do rozważań dodaj też to, że M_PI jest typu double, podobnie jak wszystkie inne stałe w formie "x.y". http://en.cppreference.com/w/c/numeric/m... 16 kB RAM i 128 kB flash to oczywiście nie...
od czasu opublikowania, przyjąłem inne podejście. Otworzyłem Upgrade_Tools_V1.5.9.exe za pomocą pyinstxtractor w poszukiwaniu głównego kodu flashowania. Najciekawsze rzeczy (które do tej pory widziałem) znajdują się w SerialThread.pyc icons_rc.pyc ImageThread.pyc MainWindow.pyc ConfigHelper.pyc po uncompyle6 na każdym z nich widzimy polecenia takie...
No ale przecież nie masz skryptu linkera - bez tego to po prostu nie ma prawa działać... A ta wtyczka z której korzystasz kompiluje pliki assemblera tylko jeśli mają rozszerzenie .S, a nie .s. Zestaw porad jest taki: http://www.elektroda.pl/rtvforum/topic13... http://www.elektroda.pl/rtvforum/topic13... Weź przykładowy projekt dla STM32,...
przyswojenia sobie z punktu widzenia początkującego całkiem pokręconych koncepcji architektury ARM może być odstraszające Raczej nie o to chodzi. Rdzeń ARM zasadniczo nie ma nic do tego. Trochę ma podłączenie peryferiów (w tym w niektórych przypadkach PAMIĘCI) poprzez wspólną magistralę peryferyjną. Ostatecznie reszta to już kwestia samych peryferiów....
Bazując na https://obrazki.elektroda.pl/4178510200_... https://obrazki.elektroda.pl/8769073400_... main.c [syntax=c] /* Virtual address defined by the user: 0xFFFF value is prohibited */ uint16_t VirtAddVarTab[NB_OF_VAR]={0}; uint16_t Virtval[NB_OF_VAR]={0}; uint16_t VarValue= 0; int main(void) { HSE_init(); //systick_init();...
Zamiast rzutować na u8 cały czas, prościej zrobić funkcję przyjmującą wskaźnik amorficzny - void* - wtedy funkcja "łyka" wszystko co jest wskaźnikiem. Wynik sizeof() technicznie jest typu size_t, a nie u8 (w końcu rozmiar może być większy niż 256 bajtów. Po skasowaniu strony nie musisz jej całej zapisywać, wystarczy zapisać tyle ile chcesz, a reszty...
A ten generator templatek, to gdzie jest? To jest ten skrypt https://github.com/DISTORTEC/distortos/b... + używane przez niego jako dane pliki YAML (np. https://github.com/DISTORTEC/distortos/b... + https://github.com/DISTORTEC/distortos/b...
http://obrazki.elektroda.pl/6299012600_1... Firma STMicroelectronics zaprezentowała nową linię mikrokontrolerów STM32F446, łączącą w sobie jednostkę obliczeniową ARM Cortex-M4, kompaktową pamięć Flash o pojemnościach od 256 kB do 512 kB, 128 kB RAM, wydajne interfejsy rozszerzenia pamięci, jak również rozbudowane opcje komunikacji i...
rozmiar stm32 flash stm32 stm32 flash
modbus server schemat zasilacz gericom 17mb211s firmware
philips 40puh6400 philips 40puh6400
Kontrolka świec żarowych przy 4°C - przyczyny i diagnostyka Skraplacz, czynnik chłodniczy, płynowskaz – migracja cieczy po postoju, R404A, R134a, R290