stm32 zmienne pamięci

Znaleziono około 207 wyników dla: stm32 zmienne pamięci
  • [STM32][USART][DMA] - Nadawanie przez USART z wykorzystaniem DMA STM32DISCOVERY

    Na wypadek, gdybyś nie zauważył: przy takich deklaracjach i treści procedury konfiguracji DMA, jakie masz obecnie, do rejestru adresu pamięci DMA wpisujesz wartość bajtową odczytaną z pamięci ze zmiennej TxBuf, rozszerzoną zerami do 32 bitów, czyli wysyłasz przez UART zawartość tablicy wektorów wyjątków.

    Mikrokontrolery ARM   14 Mar 2013 07:47 Odpowiedzi: 125    Wyświetleń: 26373
  • stm32 - zapis zmiennych do trwałej pamięci, podczas pracy procesora.

    No myślę, że rozwiązaliśmy problem dostatecznie go podsumowując, także zamykamy. A ja dziękuję za zagorzałą :) dyskusję. Pozdrawiam. Temat okazał się być niedostatecznie rozwiązany gdzyż funkcje nie działały poprawnie. A oto 100% działające kody do obsługi flash: Wyłączenie zabezpieczenia zapisu wybranych oczywiście grup stron : [syntax=c]if((GPIOA->IDR...

    Mikrokontrolery ARM   16 Gru 2011 22:43 Odpowiedzi: 29    Wyświetleń: 6682
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • HY-mini STM32 - Zmiana numeru portu GPIO w zależności od zmiennej

    "Rejestry GPIO" to nic innego jak adresy w pamięci. Operuj adresami, a nie nazwami. Makra najprawdopodobniej będziesz musiał napisać sobie sam.

    Mikrokontrolery ARM   02 Lis 2012 11:42 Odpowiedzi: 4    Wyświetleń: 1155
  • REKLAMA
  • [Stm32] Jak zapisać liczby float w emulowanej pamięci EEPROM na STM32?

    Jak już korzystasz z bibliotek ST to masz chociażby funkcje: FLASH_Status FLASH_ProgramHalfWord(uint32_t Address, uint16_t Data) i FLASH_Status FLASH_ProgramWord(uint32_t Address, uint32_t Data) Operując na wskaźnikach możesz tam zapisać zmienne dowolnego typu, czy całe struktury.

    Mikrokontrolery ARM   03 Paź 2011 18:46 Odpowiedzi: 10    Wyświetleń: 2657
  • [stm32] [CrossStudio] Zmienna char - alokacja pamięci

    1) Czy dla zmiennych o rozmiarze poniżej 32bity zawsze przydzielane jest 4 bajtowy rozmiar pamięci? To nie ma nic wspólnego z 32 bitami :) Masz wyrównywane adresy do 4 bajtów, dlatego kompilator dodał Ci w środku tablicę 3 bajtową. Jeżeli chcesz żeby taka struktura miała 9 bajtów to musisz jej nadać atrybut packed. 2) Czy stosowanie zmiennej 8 bitowej...

    Mikrokontrolery ARM   09 Mar 2012 07:32 Odpowiedzi: 3    Wyświetleń: 1532
  • Liczenie impulsów z 3 liczników Geigera-Mullera na STM32F100RB - jak to zrobić?

    czy też muszę użyć trzech liczników? Procesor mam na płytce typu STM32F100RB. Nasuwa mi się pytanie czy w ogóle potrzebujesz to zrobić na timerach. A nie po prostu użyć przerwań od zboczy na pinach (EXTI). Typowo czas martwy G-M podawany jest rzędu 100µs, czyli nawet jak na wolny F100 jest to mnóstwo czasu i nie ma ryzyka zgubienia impulsów. Co...

    Mikrokontrolery ARM   15 Lut 2017 10:50 Odpowiedzi: 20    Wyświetleń: 1161
  • REKLAMA
  • STM32 - GCC: Jak umieścić tablicę w środkowej części pamięci flash?

    Ok, zrobię ja albo na poczatku, albo na koncu flasha Dodano po 1 Tak się nie da. Chyba, że kod programu zostanie podzielony na dwie sekcje i jedna będzie umieszczona przed tablicą a druga za tablicą. A jak zastosowac sekcje np. dla całego pliku, żeby nie definiowac przy każdej zmiennej? Ty się lepiej najpierw zastanów czy na pewno chcesz to zrobić.

    Mikrokontrolery ARM   22 Lip 2015 09:07 Odpowiedzi: 5    Wyświetleń: 813
  • [STM32] [C/Keil/STM32CubeIDE] F030 transmisja SPI z użyciem DMA

    Maskujesz błąd błędem. Najpierw zrozum, co się dzieje w Twoim kodzie. while((SPI1->SR & SPI_SR_BSY) == 0) - to znaczy "powtarzaj tak długo, jak długo SPI nie pracuje (bo skończył transmisję)". Kiedy wyjdziesz z tej pętli? Co masz w niej powtarzać? To się kupy nie trzyma. Wciąż podejrzewam jednak, że oprócz tych 10 błędów masz jeszcze jedenasty...

    Mikrokontrolery ARM   22 Sty 2021 13:24 Odpowiedzi: 21    Wyświetleń: 1032
  • [stm32] Jak umieścić strukturę const w pamięci programu w Keilu?

    extern należy dodać wtedy gdy dołączamy ten sam plik .h kilka razy (zresztą kompilator nas o tym uprzejmie poinformuje). Wskaźnik jest zmienną wskazującą na dane w obszarze flash i jest umieszczony w RAM'ie'. Wskaźnik może wskazywać również na dane w RAM'ie.

    Mikrokontrolery ARM   17 Kwi 2011 20:13 Odpowiedzi: 8    Wyświetleń: 2035
  • [STM32] Jak przechowywać stałe wskaźniki w pamięci FLASH na STM32 w C++?

    Ja w takich przypadkach stosuję metodę którą na swoje potrzeby nazwałem "split objects". Obiekt u mnie składa się po prostu z dwóch części - stałej i zmiennej. Zwykle "główny" obiekt jest stały, a ten "zmienny" fragment jest podrzędny, jednak są sytuacje w których robię to odwrotnie, głównie wynikające z polimorfizmu lub dlatego że łatwiej/lepiej jest...

    Mikrokontrolery ARM   31 Lip 2016 22:30 Odpowiedzi: 23    Wyświetleń: 2658
  • REKLAMA
  • [stm32][podstawy C] - Odczyt poszczególnych bajtów zmiennej

    Witam, Wiem, pytanie bardzo podstawowe ( dopiero raczkuję ) ale naprawdę coś nie mogę odnaleźć odpowiedzi w jaki sposób odczytać zawartość bajtów (bezpośrednio z pamięci) zmiennej strukturalnej? wszystkie moje pomysły nie podobają się kompilatorowi.

    Mikrokontrolery ARM   18 Gru 2015 17:47 Odpowiedzi: 6    Wyświetleń: 1578
  • [STM32][TrueSTUDIO] Optymalizacja kodu - anomalia, prośba o wytłumaczenie

    Witam, Kiedyś miałem bardzo podobny objaw i okazało się, że jedna zmienna nie była zainicjalizowana, w związku z czym przyjmowała losowe wartości, ktore zmieniały się w zależności od położenia zmiennej w pamięci mikrokontrolera - na skutek dopisywania dalszych częsci programu to miejsce zmieniało się. I raz program działał dobrze, a raz szedł w maliny...

    Mikrokontrolery ARM   27 Wrz 2011 09:17 Odpowiedzi: 9    Wyświetleń: 2234
  • [STM32][C] Błąd kompilacji przy inkrementacji const volatile zmiennej

    volatile ma wiele zastosowań, ten kwantyfikator jest traktowany jako side effect przez co kompilator nie może kawałka kodu w pełni zoptymalizować (np zapisywanie danych w pętli for nie może być zastąpione przez memcpy) Użycie zmiennej const volatile nie ma sensu, const volatile może nieść tylko informację dla programisty, że w danym kawałku kodu, nie...

    Mikrokontrolery ARM   15 Kwi 2019 17:07 Odpowiedzi: 8    Wyświetleń: 1524
  • STM32 - ten sam adres dla różnych zmiennych const uint8_t w debuggerze

    odpisałeś w trakcie edytowania przeze mnie pierwszego posta. Użycie zmiennych pomogło na błąd debuggera lecz problem tego samego adresu pozostał. Co ciekawe, podglądając pamięć okazuje się że wartości inicjalizacji są zapisane do pamięci prawidłowo. Problem polega na przypisaniu złych adresów do wyrażeń słownych określających zmienne. Nie bardzo orientuje...

    Mikrokontrolery ARM   21 Cze 2011 14:24 Odpowiedzi: 8    Wyświetleń: 2655
  • STM32 - Plik linkera od ST oraz ustawiania stosu i sterty

    Skrypt linkera z Cube'a "działa" tak, że na początku pamięci ram ląduje sekcja data (zmienne inicjalizowane przy starcie programu - lokalne statyczne i globalne), potem jest bss (zmienne zerowane przy starcie programu - nie inicjalizowane statyczne i globalne). Następny kawałek to _user_heap_stack - czyli sterta i stos "w jednym". Rozmiar data i bss...

    Mikrokontrolery ARM   05 Lut 2016 10:30 Odpowiedzi: 12    Wyświetleń: 2325
  • STM32 - HardFault przy użyciu bibliotek FatFs na układzie STM32 mini

    Nie znam tej biblioteki, pół minuty temu pobrałem jej źródła, ale z tego co patrzę, to struktura FILINFO zadeklarowana jakoś tak: [syntax=C]// FatFS R0.08b, ff.h typedef struct { DWORDfsize; /* File size */ WORDfdate; /* Last modified date */ WORDftime; /* Last modified time */ BYTEfattrib; /* Attribute */ TCHARfname[13]; /* Short file name (8.3 format)...

    Mikrokontrolery ARM   18 Lip 2011 16:39 Odpowiedzi: 3    Wyświetleń: 3063
  • [STM32] STM32F103RB: HardFaultException przy przerwaniu DMA channel 1 po ADC

    W przypadku wciągnięcia śmieci ze zmiennej automatycznej dostajemy przewaznie, kolokwialnie mowiac, syf, nie zero. To samo dotyczy nie zainicjalizowanego statica w funkcji. Już to przerabiałem z powodu 'zapomnienia' zainicjalizować strukturki do liczenia CRC. Problem polega jedynie na pomyleniu adresu zmiennej / rejestru z ich zawartością. Oj polega....

    Mikrokontrolery ARM   20 Paź 2013 22:51 Odpowiedzi: 17    Wyświetleń: 4061
  • STM32 F429 - Podział i zastosowanie pamięci SRAM oraz co to jest CCM?

    Do czego używać tą pamięć? Stos czy jakieś zmienne. Kod tylko w SRAM1 (nie do końca, sprawdź wypowiedź kolegi Freddie Chopin niżej), dane mogą być gdziekolwiek.

    Mikrokontrolery ARM   03 Lip 2019 17:54 Odpowiedzi: 4    Wyświetleń: 618
  • [STM32] [STM32][Keil][C] Problemy z zapisem/odczytem pamięci m25p16 - tylko RDID działa

    Okazało się, że podszedłem do tematu z niewystarczającą wiedzą. Przed każdym zapisem, należy określony sektor wyczyścić instrukcja Sector Erase. Chcialbym móc kasować pojedyncze komórki i aktualizować tam niektóre dane, jednakże pamięci flash tego nie umożliwiają, cóż coś za coś. Może uda się niektóre zmienne zapisywać do flashu procesora. Coś wymyślę,...

    Mikrokontrolery ARM   13 Cze 2011 15:27 Odpowiedzi: 1    Wyświetleń: 1896
  • [STM32][C] FreeRTOS vs Bare-metal różny czas wykonania instrukcji

    Stawiam na różne adresy kodu w pamięci Przecież adresy są takie same. Adresy używanych zmiennych zresztą też.

    Mikrokontrolery ARM   22 Lis 2018 00:28 Odpowiedzi: 21    Wyświetleń: 1356
  • [STM32][Nand flash] - Nie działajacą obsługa pamięci nand flash

    Uruchomiłem kod, który wkleiłeś. Dopisałem tylko definicje dla Bank_NAND_ADDR ( 0x70000000 ), CMD_AREA ( 0x00010000 ), ADDR_AREA ( 0x00020000 ) i DATA_AREA ( 0x00000000 ). W funkcji FSMC_NAND_ReadID() pominąłem zapis do struktury i odczytuję zmienną data - mam w niej prawidłowe dane. Dodano po 8 Może nie włączyłeś taktowania dla FSMC? Ja mam to w innej...

    Mikrokontrolery ARM   23 Maj 2013 14:04 Odpowiedzi: 6    Wyświetleń: 5373
  • [STM32][CodeSourcery]Deklaracja struktury w pamięci flash.

    Dziękuję za wyczerpujące wyjaśnienie. Rozwiązało mi to problem w paru rzeczach, z którymi się borykałem. Co do wpisywania struktury w pamięć wreszcie udało mi się to zrobić tak jak opisuje ten temat. Funkcja load co prawda przypisuje tej zmiennej zadeklarowany adres, ale już nie wpisuje tam wartości przypisanych w definicji zmiennej. Wpisanie do flasha...

    Mikrokontrolery ARM   13 Lut 2010 15:11 Odpowiedzi: 21    Wyświetleń: 7694
  • [STM32][CodeSourcery]Sterta w zewnętrzym RAM + malloc

    OK, działa :-) Dzięki serdeczne. Inicjalizację FSMC dałem na samym początku, gdyż pierwotnie "chciałem" tam też mieć zmienne globalne (a w wewnętrznej pamięci sam stos) i inaczej by się nie inicjalizowały, ale obecnie jest to mało istotne.

    Mikrokontrolery ARM   02 Sty 2011 13:59 Odpowiedzi: 3    Wyświetleń: 3791
  • [Programowanie, C] - tablica globalna,alokacja pamięci,STM32

    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...

    Mikrokontrolery   12 Gru 2010 21:32 Odpowiedzi: 2    Wyświetleń: 2715
  • Zmienna const w STM32 - czy zajmuje miejsce w RAM czy tylko w FLASH?

    Witam, Mam pewne pytanie dotyczące zmiennej globalnej wyspecyfikowanej jako const. Taka zmienna nie może zostać zoptymalizowana i jest trzymana w sekcji nazywanej .rodata, która to znajduje się w pamięci FLASH. (W mikrokontrolerach stm32) W takim razie jeżeli zadeklaruje np. tabelicę: [syntax=c]const uint8_t tablica[1000]; [/syntax] to oznacza, że taka...

    Mikrokontrolery ARM   16 Mar 2019 16:05 Odpowiedzi: 16    Wyświetleń: 960
  • Brak dźwięku przy I2S między STM32-H743ZI2 a kodekiem CS4220

    Takich rzeczy się nie da debugować zdalnie. Generalnie technika jest taka że się eliminuje problem po problemie. 1. Zobacz w debugerze czy trafia to do pamięci tam gdzie chcesz. 2. Zrób tablicę z danymi testowymi i po prostu wyślij to do DAC-a I tak po kolei eliminuj zmienne z równania. Innej medoty nie ma.

    Mikrokontrolery ARM   12 Lut 2024 06:54 Odpowiedzi: 30    Wyświetleń: 897
  • STM32F4 [C] Eclipse - Dostęp i zarządzanie pamięcią ram.

    Tworzysz sekcję, sekcje umieszczasz w odpowiedniej pamięci, a zmienne w tejże sekcji. 4\/3!!

    Mikrokontrolery ARM   05 Sty 2014 12:55 Odpowiedzi: 16    Wyświetleń: 3039
  • Nieprawidłowe ustawianie stosu w STM32 w CrossWorks

    Od kilku dni testuję nowe środowisko Crossworks v.2.0 for ARM z układami STM32. Równolegle pracuję w środowisku Ride7 i wszystko w nim działa bez problemu (wierzchołek stosu jest zawsze daleko w pamięci od zmiennych globalnych) W Ride7, stos układów STM32 jest ustawiany bezpośrednio po resecie na wartość 0x20000000 + rozmiar RAM co w moim przypadku...

    Mikrokontrolery ARM   09 Lis 2010 16:55 Odpowiedzi: 9    Wyświetleń: 3433
  • [STM32] - Jak ponownie uruchomić DMA mem to mem bez pełnej inicjalizacji?

    Przypadkiem :) Jeśli bufory są zmiennymi globalnymi, sizeof zwróci Ci rozmiar tablicy pomnożony przez wielkość typu tej tablicy. Jeśli przekazujesz je przez parametr, cóż... sizeof zwróci Ci liczbę 4. W Twoim przypadku zadziałało, bo to pewnie zmienne globalne, a DMA bez sensu kopiuje 4x więcej danych (jakieś śmieci z jednej części pamięci do drugiej...

    Mikrokontrolery ARM   29 Kwi 2014 08:49 Odpowiedzi: 24    Wyświetleń: 2736
  • Stare na nowe czyli kod z ATMEGA 32 usiłuje wziąć do STM32F103

    U mnie w kodzie nie ma ...... /* * sterownik dla Margas * wersja dla NUCLEO STM32F446RE * działa dzieki życzliwości i zaangarzowaniu członków forum ELEKTRODA * wspomagających moją skromną wiedzą programistyczną * za co jestem im bardzo a to bardzo wdzęczny * data xx-xx-2024 */ #include "STM32TimerInterrupt.h" #include "STM32_ISR_Timer.h"...

    Mikrokontrolery ARM   09 Sie 2024 15:25 Odpowiedzi: 330    Wyświetleń: 6558
  • System uCOSII2.91+UCGUI3.90A STM32 ARM zestaw HY Mini zmienne ..

    Po prostu za mało pamięci dla tablic rezerwujesz. Pamiętaj że jak chcesz przechować 4 znaki to tablica powinna mieć 5 elementów (ostatni znak: NULL - \0 )

    Mikrokontrolery ARM   15 Sty 2012 20:32 Odpowiedzi: 6    Wyświetleń: 2269
  • [stm32] Jak wysyłać i odbierać dane z zewnętrznego RAMu przez FSMC w STM32?

    Yup. A potem jeszcze sekcję na ta pamięć. I zmienne które chcesz mieć w tej pamięci musisz opatrzyć atrybutem umieszczającym je w tej własnie sekcji. Może też skorzystać np ze wskaźników, jeśli tak jest komuś wygodniej. 4\/3!!

    Mikrokontrolery ARM   13 Wrz 2011 08:50 Odpowiedzi: 26    Wyświetleń: 3638
  • [C] STM32F405 - Problem z obliczaniem adresu pamięci przy użyciu zmiennej

    Ok, kod jest prawidłowy, to problem odczekania kilku taktów zegara po włączeniu.

    Programowanie   14 Mar 2015 10:11 Odpowiedzi: 13    Wyświetleń: 981
  • STM32F4 Discovery - Dziwna częstotliwość działania

    Mnóstwo instrukcji assemblera nie może być wykonanych w jednym cyklu zegara... w sumie wszystkie wykonywane są w tej samej liczbie i zależy ona od PIPELINE'u... pobranie instrukcji, dekodowanie, wykonanie, zapis do pamieci, akumulacja wyniku. To jest taki najprostszy pipeline i umożliwia on właśnie wykonywanie instrukcji w "jednym" cyklu zegara.......

    Mikrokontrolery ARM   05 Wrz 2013 14:41 Odpowiedzi: 20    Wyświetleń: 3738
  • [STM32][C/uVision] problem z deklaracjami zmiennych

    bez apelacyjne operator extern powinno się tam znaleźć. To zleży jak przebiega proces kompilacji. Jeżeli kompilujemy wszystkie pliki na raz to w sumie ta dyrektywa o której wspominasz działa tak jak oczekujesz i rzeczywiście zmienna jest zadeklarowana tylko raz. Natomiast jak kompilujemy każdy plik źródłowy osobno do postaci pośredniej i później linkujemy...

    Mikrokontrolery ARM   18 Maj 2011 23:40 Odpowiedzi: 5    Wyświetleń: 2701
  • [STM32F1] - Jak uruchomić USB bez bibliotek STL? Brak struktur rejestrów USB

    Pytanie po co uzywasz HIDa skoro postawiles komunikacje na libusb? Uzywanie interrupt endpointów nie wymaga od razu wykorzystania klasy HID. Ja mam tak: 0 - control 1 - ep bulk in 2 - ep bulk out 3 - ep interrupt in 4 - ep interrupt out 5 - ep isoc in Moje urządzenie ma się nijak do klas zdefiniowanych przez standardy, wszystko jest vendor specific,...

    Mikrokontrolery ARM   19 Sty 2015 19:38 Odpowiedzi: 27    Wyświetleń: 3816
  • [STM32/LPC] - Początki ARMów, kilka wątpliwości.

    Przykładów można szukać w SPL - można się w ten sposób dowiedzieć, w których rejestrach i co trzeba wpisać. Powoli szykuję tutorial do STM32 bez biblioteki, ale to jeszcze trochę potrwa. Kłopoty z bibliotekami są wielorakie. Ostatni kłopot - to to, do czego nas zachęcają przykłady z użyciem bibliotek, czyli deklarowania struktur jako zmiennych i pracowitego...

    Mikrokontrolery ARM   17 Lut 2014 12:29 Odpowiedzi: 27    Wyświetleń: 4341
  • STM32F2xx - Jak zapisać zmienne w pamięci Flash, aby przetrwały reset?

    Strona ST. Emulacja eepromu.

    Mikrokontrolery ARM   13 Paź 2014 09:07 Odpowiedzi: 2    Wyświetleń: 840
  • [STM32F405] - Problem z użyciem zmiennej w wyliczaniu fizycznego adresu.

    If the peripheral is mapped on AHB: the delay should be equal to 2 AHB cycles. To może być to, zaraz sprawdzę. Dodano po 15 Tak, to jest to. Zaraz po uruchomieniu zegara nie wolno wpisywać lub czytać tej pamięci. Aż dziw że do tej pory tak intensywnie używana ta pamięć nie zbuntowała się. Po wstawieniu kilku taktów opóźnienia po włączeniu zegara, wszystko...

    Mikrokontrolery ARM   11 Lut 2015 18:36 Odpowiedzi: 32    Wyświetleń: 2223
  • [STM32][Newlib] time.h strefy czasowe i czas letni/zimowy

    Freddie rozumiem, ze korzystasz z gcc i nieużywane sekcje wyrzuciłeś? Ja to rozwiązanie stosowałem jeszcze z TrueStudio i poza zwiększeniem rozmiaru o tego stringa nic mi nie "urosło" ;] No chyba, ze sposób kolegi m.ki coś tam zmienia, ja jak to rozgryźć doszedłem analizując źródła stdlib i po drodze nie natrafiłem na żadne dynamiczne alokowanie pamięci....

    Mikrokontrolery ARM   23 Lip 2012 19:06 Odpowiedzi: 15    Wyświetleń: 4336
  • STM32 z Arduino - nieprawidłowe stany na portach PA11, PA12, PA15, PB3, PB4

    Teraz jest taki problem. Jutro spróbuję poszukać pliku. Arduino:1.8.9 (Windows 10), Płytka:"Generic STM32F1 series, BluePill F103C8, STM32CubeProgrammer (SWD), Enabled (generic 'Serial'), None, Low/Full Speed, Smallest (-Os default), Newlib Nano (default)" A subdirectory or file sketch already...

    Mikrokontrolery   17 Lip 2019 14:33 Odpowiedzi: 19    Wyświetleń: 1773
  • [STM32] [STM32F107] Jak skonfigurować linker do zapisu danych w pamięci Flash?

    W skrypcie linkera po prostu stwórz nową sekcję umieszczoną w konkretnych miejscach. Tutaj przykład z wydzielonymi dwoma ostatnimi stronami pamięci: MEMORY { rom (rx) : org = 0x08000000, len = 128k - 2k rom_p126 (r): org = 0x08000000 + 126k,len = 1k rom_p127 (r): org = 0x08000000 + 127k,len = 1k ram (rwx)...

    Mikrokontrolery ARM   30 Gru 2010 08:43 Odpowiedzi: 1    Wyświetleń: 2018
  • Przykładowe projekty ARM dla NXP LPC2103 i ST STM32F103RB w Eclipse

    Dane wpisane do tego skryptu zakładają, że nie korzystasz z ŻADNYCH wyjątków. Musisz sobie je ustawić w zależności od swoich potrzeb. __irq_stack_size = 0; Czyli po wejściu w przerwania mam dostępne 0 pamięci ram na zminne? W skrócie: Funkcji ustawiającej stosy przekazane jest 0 dla trybu XXX, a więc (w zależności od kolejności) dany stos będzie pokrywał...

    Mikrokontrolery ARM   21 Maj 2013 09:25 Odpowiedzi: 341    Wyświetleń: 101268
  • STM32F030 - emulacja EEPROM

    Obecnie korzystam z STM32F030F4P6. No to nie masz dużego wyboru. Jeśli masz tych zmiennych nie więcej niż kilkadziesiąt, to wystarczy jeśli zajmiesz na eeprom dwa obszary 1k. Czyli stronę 14 i 15 a PAGE_NB_PVP ustawisz na 1. Jeżeli chciałbym, by EEPROM zapisywał mi od strony załóżmy 15, to wtedy ta linijka kodu przyjmie taką postać?: #define EEPROM_START_ADDRESS...

    Mikrokontrolery ARM   19 Kwi 2017 07:26 Odpowiedzi: 34    Wyświetleń: 4161
  • Wybór zestawu startowego do nauki ARM Cortex-M3, STM32, ZL27ARM czy inny?

    A nie można po prostu zapytać autora, co ma na myśli pisząc o "wielu zmiennych"? ;) To ma być orientacyjny szacunek ich liczby w kodzie, czy jakieś konkretne oszacowanie zużycia pamięci na podstawie planowanego programu?

    Mikrokontrolery ARM   23 Sty 2014 08:57 Odpowiedzi: 33    Wyświetleń: 7476
  • [STM32] [STM32][DMA][USART] Jak wywołać przerwanie po nadejściu znaku końca ramki?

    A właśnie, że jest sposób na efektywne wykorzystanie DMA przy odbiorze, nawet dla zmiennej długości ramek. Wystarczy ustawić przerwanie od stanu IDLE dla kanału szeregowego U(S)ART, które generowane jest po zakończeniu transmisji. W tym momencie wszystkie dane są już w zdefiniowanym w DMA obszarze pamięci.

    Mikrokontrolery ARM   03 Mar 2017 12:25 Odpowiedzi: 32    Wyświetleń: 11712
  • [STM32] tablice we Flasch, RAM iprzekazywanie, zmienne globalne w kilku plikach

    Wnioski są proste: wszystko, co jest zadeklarowane na poziomie zewnętrznym z atrybutem const i wszystko, co jest zadeklarowane wewnątrz procedur z atrybutami static const ląduje tylko w pamięci nieulotnej (o ile ktoś nie zaszalał ze skryptem konsolidatora). Oczywiście należy przy okazji mieć świadomość tego, jak należy użyć const w C deklarując stałą...

    Mikrokontrolery ARM   12 Mar 2021 07:25 Odpowiedzi: 16    Wyświetleń: 1152
  • [STM32F4] - [CooCox] Mała różnica szybkości działania jednostki FPU

    Podejrzyj kod asemblera i zobacz czy na pewno wykonują się zmiennoprzecinkowe instrukcje. U mnie dodatkowo trzeba było włączyć optymalizację oraz podlinkować libm i libg z katalogu fpu kompilatora i tak zauważyłem, że sporo zależy właśnie od wersji kompilatora. Mnożenie wykonuje od razu sprzętowo ale do pierwiastkowania trzeba go zmusić. A pozwolę też...

    Mikrokontrolery ARM   15 Mar 2014 11:24 Odpowiedzi: 9    Wyświetleń: 2313
  • [STM32][C] - Dwie wersje bin w pamięci FLASH, skok pod wybrany adres

    Już zgłupiałem. Niemniej jednak fizyczny zapis dokonywany jest po 4 bajty na raz jeśli ustawiłeś zapis 32-bitowy. Więc: mam w buforze daną o wartości 0xAB <- 1 bajt. Zapisuje ją pod adres = 0, więc komórki od 0 do 3 zawierają 0x000000AB tak? Następna zmienna powiedzmy 0xCD zostaje zapisana pod adres 4. I komórki od 4 do 7 zawierają 0x000000CD. Więc...

    Mikrokontrolery ARM   26 Lut 2016 17:10 Odpowiedzi: 70    Wyświetleń: 5076
  • [stm32] [stm32][c++] Jak sprawdzić zużycie RAM przy dynamicznych obiektach?

    Nawet nie trzeba pisać całego menagera pamięci, wystarczy poprawić funkcje free/malloc/alloc/realloc tak, aby zmieniały wartość zmiennej globalnej określającej wielkość wolnego obszaru sterty - w c++ właściwie wystarczyłoby pokryć operatory new i delete oraz new[] i delete[]. Z drugiej strony wobec istnienia stosu na niewiele to by się zdało.

    Mikrokontrolery ARM   06 Wrz 2011 08:02 Odpowiedzi: 9    Wyświetleń: 3521
  • Jak umieścić tablicę unsigned char w pamięci Flash STM32 w Keil?

    Aby wyjaśnić Ci Twój problem, podaję Ci metodę "czytania" typów zmiennych, który wyjaśnia wszystko. Jest kilka zasad: 1. Czytanie zaczynamy od nazwy zmiennej 2. Czytamy w prawo dopóki nie dojdziemy do "końca", po osiągnięciu "końca" czytamy w lewo od nazwy zmiennej 3. Obowiązują nawiasy, które są "lokalnymi końcami" Tak więc: const char * const l_wartosc[]...

    Mikrokontrolery ARM   11 Cze 2014 18:34 Odpowiedzi: 28    Wyświetleń: 5419
  • Jak zaimplementować sterowanie jasnością LED przez DMA w STM32F030?

    Skonfigurowałem TIM1 do sterowania jasnością. Tak jak zalecił kolega BlueDarco chciałem zapalać segmenty przy końcu okresu (update) i gasić przy CC1. Na początek chciałem wygenerować przebieg o wypełnieniu 50% wiec: Zgodnie z RM przy TIM1_CH1 może pracować DMA1Channel2, a do TIM1_UP DMA1Channel5: https://obrazki.elektroda.pl/3207967500_...

    Mikrokontrolery ARM   20 Wrz 2018 09:52 Odpowiedzi: 12    Wyświetleń: 873
  • STM32F051 CM0 - Funkcja z AVR na ARM nie "funkcjonuje"

    Witam. Mam 2 problemy które wynikły w czasie mojej zabawy z ARM. Mam nadzieję że ktoś mi podpowie co jest nie tak. Mam dwie funkcje które pod AVR działały bezbłędnie a pod ARM już nie do końca chcą funkcjonować. Wypunktuję te problemy. 1. Funkcja "SD_writeSingleBlock" z biblioteki do obsługi karty SD ze strony darhmanitech.com. Funkcja: http://obrazki.elektroda.pl/1642057700_1...

    Mikrokontrolery   17 Kwi 2013 14:45 Odpowiedzi: 6    Wyświetleń: 1941
  • [STM32F103][keil][C] nieznany atrybut przerwania SysTick

    Przepisanie zmiennej do zmiennej jest na ARM atomowe jeśli zmienne te są 32-bitowe lub mniejsze (pomijamy dziwne akcje typu pakowanie struktur itd.). Jeśli zmienna jest większa, to musisz dodać sekcję krytyczną (np. blokować przerwania). Przepisywanie po jednym bicie przy użyciu bitbandingu na pewno nie będzie atomowe - wręcz przeciwnie (; łał czyli...

    Mikrokontrolery ARM   30 Gru 2017 10:38 Odpowiedzi: 63    Wyświetleń: 2439
  • Maksymalna liczba zmiennych w emulacji EEPROM STM32 wg AN2594?

    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...

    Mikrokontrolery ARM   18 Paź 2010 13:37 Odpowiedzi: 16    Wyświetleń: 5289
  • Jak uruchomić GUI z ST na HY-Mini STM32? Szukam gotowych źródeł lub bibliotek

    Jakie tam na przykład bugi występują? W różnych funkcjach - różne traktowanie osi X i Y, różne typy tych samych zmiennych. We funkcjach tego samego typu - np rysowanie - raz wykonanie bezpośrednio przez pisanie do pamięci, raz przez funkcję typu putpixel, któr robi to samo co pisane do pamięci, ale w kilku niepotrzebnych krokach/makrach; w jednych...

    Mikrokontrolery ARM   27 Sie 2014 11:24 Odpowiedzi: 36    Wyświetleń: 14217
  • [stm32] Keil umieszczenie przeskalowanego sinusa w pamięci flash

    Witam, czy ktoś z forumowiczów wie jak umieścić w pamięci flash tablicę z wartościami przeskalowanego sinusa (wartości stałoprzecinkowe). Chcę, aby tablica miała np. 1024 elementów (od 0 do 2pi) dla tego zapis na sztywno wartości będzie nie wygodny. tj. [syntax=c]const s16 tab_sin[1024] = {wartosci}[/syntax] Wolałbym zapis: [syntax=c]const s32 tab_cos0[1024]...

    Mikrokontrolery ARM   26 Maj 2011 22:08 Odpowiedzi: 8    Wyświetleń: 2553
  • Podgląd stanu urządzenia, zdalne sterowanie - ESP8266 czy coś innego?

    Witam, Mam urządzenie którego sercem jest mikrokontroler STM32. Chciałbym, w pierwszej fazie uzyskać możliwość podgląd stanu pracy urządzenia przez internet (strona internetowa, aplikacja na tel), natomiast w kolejnej sterowanie tym urządzeniem. Urządzenie wyposażyłem w ESP8266 i nawet udało mi się zapisywać z mikrokontrolera poprzez ESP8266 wartości...

    ESP8266 i ESP32   07 Lis 2019 19:17 Odpowiedzi: 3    Wyświetleń: 873
  • STM32: Czyszczenie FLASH przed zapisem, szybkość vs SRAM, DMA a odczyt

    (assignment makes integer from pointer without a cast Przetłumacz sobie to na polski: "operator przypisania powoduje zmianę wskaźnika na wartość całkowitą bez rzutowania" i chyba jest jasne w czym jest probiem? `*(__IO uint16_t*)(Page_127 + i)` - abstrahując od tego czy jest to poprawne, jest to "komórka w pamięci reprezentująca wartość typu uint16_t",...

    Mikrokontrolery ARM   27 Gru 2018 22:55 Odpowiedzi: 34    Wyświetleń: 1899
  • [stm32] [stm32][C++] Undefined reference przy łączeniu C i C++ w Code Sourcery

    Funkcja taka powinna przyjmować wskaźnik na "const char*", skoro i tak go nie zmienia (wiem że go nie zmienia, bo jakby próbowała, to byś miał zwiechę przy stringach z flasha) i wtedy problemu nie ma. Taki dobry nawyk (; Jeśli "parametr wskaźnikowy" nie jest modyfikowany, to powinien być const i tyle. Kompilator czepia się całkiem słusznie, bo zakłada,...

    Mikrokontrolery ARM   08 Lip 2011 16:43 Odpowiedzi: 17    Wyświetleń: 5772
  • Przystosowanie płytki STM32 do pracy z Arduino IDE

    Szkic używa 13532 bajtów (20%) pamięci programu. Maksimum to 65536 bajtów. Zmienne globalne używają 2824 bajtów pamięci dynamicznej. maple_loader v0.1 Resetting to bootloader via DTR pulse Reset via USB Serial Failed! Did you select the right serial port? Searching for DFU device https://obrazki.elektroda.pl/3904104400_... Nie mogę...

    Artykuły   11 Wrz 2022 21:00 Odpowiedzi: 54    Wyświetleń: 22050
  • [STM32F4] [STM32F4][C++] Hardfault przy włączonym FPU i wywołaniu funkcji z 6 argumentami float

    kombinuję też, że może za późno wywołuję funkcję fpu_enable()? W sumie to przed nią tworzy się obiekt IMU. To mogłoby mieć znaczenie tylko jeśli konstruktor tego obiektu w jakiś sposób robi coś "zmiennoprzecinkowego". Jeśli tylko zeruje zmienne w pamięci, to raczej bez znaczenia. Jednak gdy robię to tak: W pliku .cpp ta funkcja musi być zdefiniowana...

    Mikrokontrolery ARM   03 Lip 2017 07:23 Odpowiedzi: 8    Wyświetleń: 1185
  • [STM32] Czy korzystać z firmowych bibliotek stlib?

    Biblioteki to jeden ze sposobów na pisanie kodu. Z tego co widziałem na forum to właśnie jest to sposób na szybki start, a krytyka jest związana raczej z nieumiejętnym korzystaniem z biblioteki w tym również w przykładach. Za przykład podam tutaj przykład GPIO - IO Toggle (stm32f4_dsp_stdperiph_lib). Definicja zmiennej GPIO_InitTypeDef GPIO_InitStructure;...

    Mikrokontrolery ARM   10 Kwi 2012 19:12 Odpowiedzi: 49    Wyświetleń: 10368
  • [STM32f103ZET6][C/CooCox] - Automatyczna aktualizacja oprogramowania

    No jeszcze zapomniałeś o przełączaniu tablicy wektorów - każda aplikacja musi mieć swoje, więc przed skokiem warto też przestawić ten adres. No i po co te zmienne są globalne? Dlaczego tak? Zakładam, że nie chodzi Ci po głowie pomysł aktualizacji tylko CZĘŚCI programu, no nie? To byłoby praktycznie nierealne, bo zmiana kompilatora (na nowszy, starszy,...

    Mikrokontrolery ARM   07 Mar 2014 14:39 Odpowiedzi: 10    Wyświetleń: 2034
  • Implementacja tablic funkcji w pamięci FLASH mikrokontrolera STM32

    Dzięki DXFM za odpowiedź :) Tzn. wiem i potrafię zadeklarować tablicę na sztywno w pamięci FLASH - z tym jest wszystko ok. Ale mnie chodzi o coś takiego: mam pewną funkcję, która w swoim argumencie ma zmienną - może ona być modyfikowana przez użytkownika (coś w stylu sin(a*x), gdzie a jest tą zmienną od usera). Teraz... wyliczam np. 512 wartości funkcji...

    Mikrokontrolery ARM   17 Paź 2014 22:33 Odpowiedzi: 9    Wyświetleń: 1506
  • [STM32] Stos zrzuca rejestry do zmiennych globalnych

    Pierwsza opcja to oczywiście zdefiniowanie NAPRAWDĘ DUŻEGO stosu, ale to średnie rozwiązanie jak wiadomo [; Do rozbudowanej aplikacji na ARMa myślę że należy liczyć minimum 1kB, jeśli używa się jakichś potwornych funkcji standardowych (printf!) i to głęboko to lepiej zaopatrzyć się w 2kB (o apetycie tych funkcji na pamięć pisałem ostatnio http://www.elektroda.pl/rtvforum/topic13...

    Mikrokontrolery ARM   05 Paź 2009 18:43 Odpowiedzi: 9    Wyświetleń: 3287
  • WS2812- Proszę o podpowiedź w pracy "tablica świetlna".

    Zmienne globalne zajmują...... Pewnie ram dla led jest rezerwowany w chwili uruchomienia biblioteki przez memalloc. Gdybyś sam pisał obsługę led to użyłbyś tablicy o określonym rozmiarze dzięki czemu wiedziałbyś ile ram zajmuje program. Poszukaj jak wyświetlić ilość wolnej pamięci ram w czasie działania programu. Jakiś freemem jest. Trochę oszuka ale...

    Arduino   25 Cze 2018 21:33 Odpowiedzi: 15    Wyświetleń: 1176
  • Pomiar natężenia prądu z przetwornikiem SCT013 i STM32F401RE

    Miałem na myśli to że w twoim przypadku analogowa obróbka sygnału nie ma sensu, wartość RMS trzeba sobie policzyć na uC. Niby są scalaki konwerterów RMS, ale w cenie takiej że kilka wydajnych mikrokontrolerów byś za to kupił. Drugie rozwiązanie to bezpośrednio mierzyć napięcie zmienne przez STMa odpowiednio szybko próbkując aby uzyskać przebieg sygnału...

    Początkujący Elektronicy   14 Lip 2020 17:08 Odpowiedzi: 6    Wyświetleń: 396
  • Jak zapisać 8 tys. 12-bitowych zmiennych w AT45DB321D przez SPI?

    Witam, Stanąłem przed koniecznością użycia w moim projekcie pamięci zewnętrznej AT45DB321D. W pamięci tej przechowywane mają być wyniki odczytu z przetwornika AD czyli zmienne 12 bitowe. Razem około 8 tysięcy odczytów. (?) Z pomocą przykładów znalezionych w sieci uruchomiłem obsługę w/w pamięci przez sprzętowy SPI. Mogę odczytać status pamięci, zapisać...

    Mikrokontrolery ARM   29 Sty 2013 21:54 Odpowiedzi: 6    Wyświetleń: 2421
  • STM32F4 - Jak zapisać wartość zmiennej podczas debugowania (Eclipse)?

    Ok, zrobiłem to. Ale teraz pytanie jak zamienić zawartość pamięci na tablice liczb taką jak pokazana jest na rysunku ?? Bo na razie to wygląda tak http://obrazki.elektroda.pl/8715226000_1... a chciałbym żeby to była tablica licz od -32768 do 32768 tak jak w buforze.

    Mikrokontrolery ARM   05 Paź 2016 17:08 Odpowiedzi: 6    Wyświetleń: 1338
  • [STM32] Jak wysyłać komendy do HC-05 z STM32F303 Discovery przez UART?

    Witam! Tworzę projekt, który polegać ma na bezprzewodowym połączeniu STM32F303 Discovery i HC-05 z ELM327 (wersja bluetooth). Jestem bardzo początkujący, jeśli chodzi o programowanie a zależy mi na tym projekcie, dlatego postanowiłem zwrócić się o pomoc. Korzystam z STM32CubeMX oraz Eclipse z wbudowanym rozszerzeniem „System Workbench for STM32”....

    Mikrokontrolery ARM   02 Lut 2018 22:32 Odpowiedzi: 1    Wyświetleń: 1104
  • Optymalizacja "kompresja" i przyspieszenie programów Arduino

    (at)grko - właśnie do mnie dotarły blue pill :) 128KB flash (tzn. oficjalnie 64, ale akurat mają w rzeczywistości 128KB) i 20KB RAM. Teraz z ciekawości wgrałem ST-Linkiem prosty blink ;) Szkic używa 13028 bajtów (19%) pamięci programu. Maksimum to 65536 bajtów. Zmienne globalne używają 2816 bajtów (13%) pamięci dynamicznej, pozostawiając 17664 bajtów...

    Arduino   10 Sty 2018 09:23 Odpowiedzi: 58    Wyświetleń: 4926
  • STM32 - Keil uVision4 - debugger i odczytanie wartości wskaźnika

    A ja zadam "głupie" pytanie: próbowałeś po prostu wpisać zmienną do View->Watch1 (oczywiście w trybie debugowania)? Jakoś nigdy nie miałem kłopotu (z poziomu Watch table ) z odczytem wskaźnika jak również z zapisem i odczytem komórki pamięci na jaki wskazuje.

    Mikrokontrolery ARM   08 Kwi 2015 08:16 Odpowiedzi: 4    Wyświetleń: 1530
  • AVR - jak radzić sobie z fusebitami i ograniczeniami 8-bit?

    Doświadczenie uczy mnie, że dyskusja o wyższości 8bit nad 32bit (czy odwrotnie) będzie trwała tak długo, jak długo obydwa rodzaje procesorów będą dostępne. mam wiaderko AVR-ów i podobne wiaderko ARM-ów, głównie STM32 choć też LPC. Znajdą się też malinki czy wcześniejsze dwurdzeniowe A20. Jak pewnie większość (przynajmniej tych starszych) zaczynałem...

    Projektowanie i Tworzenie Po godzinach   30 Sty 2020 18:45 Odpowiedzi: 368    Wyświetleń: 17292
  • [STM32F4][C/Eclipse] - Duża ilość danych jest źle wpisywane do SRAM

    Poza stosem w SRAMie masz jeszcze przynajmniej: - stertę - dynamiczna alokacja (malloc, new) - sekcję data - wszelkie globalne i statyczne zmienne inicjowane jakąś wartością - sekcję bss - jw. ale zerowane przy starcie programu poza tym możesz sobie tworzyć własne sekcje, latać wskaźnikiem po pamięci i cokolwiek Ci przyjdzie do głowy. Alokowanie dużej...

    Mikrokontrolery ARM   26 Lip 2015 14:45 Odpowiedzi: 7    Wyświetleń: 1122
  • STM32 - Obsługa kart przez sdio - zapis do pliku txt

    Witam wszystkich. Korzystając z okazji życzę wszystkim szczęśliwego nowego roku. Przechodząc do problemu, z którym nie potrafię sobie poradzić to posiadam zestaw HY-Mini STM32 i potrzebuję napisać obsługę kart sd przez sdio, a konkretnie chcę zapisywać plik txt (jeśli jest to możliwe lub inny możliwy do odczytania na komputerze) na kartę pamięci. W...

    Mikrokontrolery ARM   10 Sty 2013 20:10 Odpowiedzi: 2    Wyświetleń: 2862
  • [STM32] Czy warto używać bibliotek ST w projektach z STM32?

    Bit band ? Stwórz sobie plik bitband.h [syntax=c]#ifndef BITBAND_H_ #define BITBAND_H_ #define bitband_t *(volatile unsigned int *) #define BITBAND_SRAM_REF 0x20000000 #define BITBAND_SRAM_BASE 0x22000000 #define BITBAND_SRAM(address,bit) ((BITBAND_SRAM_BASE + (((unsigned int)address)-BITBAND_SRAM_REF)*32 + (bit*4))) // Convert SRAM address #define...

    Mikrokontrolery ARM   15 Sty 2016 12:53 Odpowiedzi: 152    Wyświetleń: 33247
  • Jak skonfigurować IAR dla stm32H743VI z STLinkv2 i IAR kickstart?

    I znów seria błędnych sugestii. W praktyce JTAG/SWD w STM32 przy realnym połączeniu programatora z płytką może odmawiać współpracy nawet przy 1 MHz (nawet na płytkach Discovery). Za inicjowanie zmiennych jest odpowiedzialny wiarygodny, zweryfikowany przez tysiące programistów, moduł startowy. Nic nie trzeba pilnować (przynajmniej w Keil, Atollic i paru...

    Mikrokontrolery ARM   08 Sie 2019 08:20 Odpowiedzi: 52    Wyświetleń: 2676
  • [STM32F7][C Attolic] Przesunięcie alokacji zmiennych w RAM dla całego pliku *.C

    Bezedura.. Keil i może potrafi wykryć takie coś, jednak nie GCC. No faktycznie, po próbach z GCC, przyznaję Ci rację, że nie jest w GCC tak prosto i wygodnie ze zmiennymi absolutnymi, jak mi się wydawało po praktyce w Keil. Ale pewnym prostym wyjściem może być zdefiniowanie buforów w sposób podobny jak tu: [syntax=c]unsigned char __attribute__((section...

    Mikrokontrolery ARM   24 Kwi 2018 07:24 Odpowiedzi: 7    Wyświetleń: 750
  • STM32F1 Fake Blue Pill niewłaściwy bootloader / konfiguracja?

    Próbuję zaprogramować obie płytki, z tym że F103 była już programowalna, miałem wgrany bootloader od Maple Mini i śmigało to dobrze do momentu aktualizacji menedżera płytek. Teraz na nowych ustawieniach nie chce to współgrać ani ze starym bootloaderm (Maple), ani z nowym z tego wątku: https://github.com/Serasidis/STM32_HID_B... Z kolei...

    Mikrokontrolery ARM   10 Kwi 2021 16:06 Odpowiedzi: 2    Wyświetleń: 1074
  • ATmega8A-PU - Jakie akcesoria na start do programowania AVR?

    Nikt Ci tu nie pisał o autonomicznych robotach, a wiele wątków analogicznych do Twojego kończyło się decyzją delikwenta o zakupie taniej płytki z jakimś np. STM32, więc wszystko jest jak najbardziej na temat. Co do prostoty - dla początkującego zapewne "prosty" jest taki mikrokontroler, w którym działający program możesz debugować na ekranie PC, zaglądając...

    Mikrokontrolery Początkujący   22 Paź 2013 22:26 Odpowiedzi: 30    Wyświetleń: 4581
  • Debuger jako narzędzie marnujące czas programisty?

    To może pytanie, czy debugerem moge zastawiać pułapki na dostęp do zmiennych? Nie wiem czy konkretnie do zmiennych, ale na pewno można ustawić pułapkę na przestrzeń pamięci jeśli zostanie zmodyfikowana (nawet zaznaczyć jaka dokładnie będzie to wartość), co jest dość przydatne gdy podejrzewa się że jeździ się po za pamięcią. Teraz mi się przypomniało,...

    Projektowanie i Tworzenie Po godzinach   20 Lip 2018 20:36 Odpowiedzi: 58    Wyświetleń: 3060
  • [stm32f0] Kiedy używać dynamicznej alokacji pamięci w FreeRTOS na STM32F0?

    1. Dynamicznej alokacji pamięci używaj wtedy gdy potrzebujesz dużej ilości pamięci przez określony czas. Jak pamięć nie jest Ci już potrzebna to ją zwalniasz. Jeżeli masz jakieś zmienne, które używasz przez cały czas działania programu to malloc nie ma sensu. Zmienna statyczna zadeklarowana w funkcji ląduje w tym samym obszarze pamięci co zmienne globalne...

    Mikrokontrolery   05 Kwi 2014 16:38 Odpowiedzi: 8    Wyświetleń: 1431
  • STM32F4 - Zmienne lokalne szybsze niż zmienne globalne.

    Ok, a konkretnie, które z wymagań standardu nie zostanie spełnione, jeśli zmienna lokalna liścia z atrybutem volatile i bez odwołania przez adres zostanie zrealizowana w rejestrze, a nie w pamięci? No ale we fragmencie który zacytowałem nie ma rozróżnienia, czy dotyczy on tylko zmiennych globalnych, czy może tylko lokalnych, więc definitywnie sensownym...

    Mikrokontrolery ARM   26 Lut 2014 12:09 Odpowiedzi: 34    Wyświetleń: 4734
  • [STM32/Eclipse/OpenOCD] - Debuger zgłasza dziwne bledy

    Zawsze pierwszym etapem dociekań powinno być zmniejszenie ilości zmiennych. Zignoruj więc Eclipse, GDB itd, spróbuj po prostu połączyć się z układem za pomocą OpenOCD oraz telnetu, spróbuj go zaprogramować tym sposobem i zobacz czy to działa. Jeśli tak - idź dalej, jeśli nie - coś jest z układem. Czasem pomaga "zdjęcie" zabezpieczeń pamięci przy użyciu...

    Mikrokontrolery ARM   18 Gru 2013 23:23 Odpowiedzi: 36    Wyświetleń: 6462
  • Mikrokontroler -zapis do pamięci nieulotnej zewnętrznej

    Witam serdecznie. Mam takie pytanko. Potrzebuję zapisywać pewne wartości z mikrokontrolera stm32 do zewnętrznej pamięci nieulotnej w razie wyłączenia zasilania. Znalazłem na stronie forbota przykład z pamięcią EEPROM (układ 24AA01),gdzie ilość cykli zapisu wynosi 1000000. I teraz pojawia się moje pytanie, czy ten milion zapisów jest na całą pamięć czy...

    Początkujący Elektronicy   06 Maj 2016 21:45 Odpowiedzi: 8    Wyświetleń: 675
  • [STM32] Bit Banding vs GPIOx_BSRR/BRR - korzyści i różnice w użyciu

    Nie do końca kotlet, tutaj chodzi o zmapowanie poszczególnych bitów pamięci w jakiś inny jej rejon więc to jest zupełnie inny mechanizm. Poza tym, kto Ci każe odwoływać się do wszystkich ? :D Bierzesz tylko te, które Cię interesują i tyle, poza tym sam przyznasz, że zapis jest bardziej przyjemny (np LED_GREEN = 1 zapala diodę). Na AVR też da się ustawiać...

    Mikrokontrolery ARM   29 Maj 2012 09:20 Odpowiedzi: 58    Wyświetleń: 13441
  • STM32F072CBTx hard fault przy czytaniu rejestrów flash

    Hard Fault jest podczas czytania czy podczas zapisu? Jakoś trudno mi uwierzyć w błąd podczas czytania. A próbowałeś rozbić operację na odczyt do zmiennej tymczasowej i zapis do rejestru? Czy jesteś pewien, że zapisywana wartość jest zgodna z parametrami pracy pamięci vs. częstotliwość taktowania rdzenia?

    Mikrokontrolery ARM   03 Cze 2021 10:01 Odpowiedzi: 8    Wyświetleń: 936
  • [STM32H743II][C][gcc][Eclipse] - Organizacja zmiennych w pamięci

    Czy wystarczy utworzyć sekcję w taki sposób, powtarzając ten wpis dla każdej sekcji, czyli d1sramdata, d2sramdata, d3sramdata? Nie. Albo inaczej. Sekcje zostaną utworzone i jeśli przypiszesz do nich jakieś zmienne, to one tam wylądują, ale aby dane zostały zainicjalizowane domyślnymi wartościami (a'la sekcja .data) lub wyzerowane (a'la sekcja .bss),...

    Mikrokontrolery ARM   14 Gru 2020 19:44 Odpowiedzi: 2    Wyświetleń: 3003
  • [STM32][C/eclipse] - Inicjalizacja sekcji .text w pamięci RAM

    Witam, Chciałem przerobić skrypt linkera i startup.s z projektu Freddiego Chopina stm32_blink_led na kopiowanie i uruchamianie aplikacji z pamięci RAM. Dodałem do sekcji .text analogiczne wpisy jak w sekcji .data udostępniające zmienne __text_init_start, __text_start oraz __text_end. .text : { . = ALIGN(4); __text_init_start = LOADADDR...

    Mikrokontrolery ARM   07 Gru 2013 21:09 Odpowiedzi: 15    Wyświetleń: 3726
  • stm32 - freeRTOS: Odczyt z karty SD/MMC, stos i zmienne lokalne

    watchpointa postawilem juz dluzszy czas temu, wnioski są bezużyteczne. Jakaś część RTOSa nadpisuje tamto miejsce. Problem jest raczej dlaczego nadpisuje; i dlaczego tylko w tej funkcji... Dodatkowym zonkiem jest fakt, ze nie da sie podczas pracy RTOSa zatrzymac rdzenia i go ponownie puścić - procek ląduje w hardfaultcie po puszczeniu; nawet jak jest...

    Mikrokontrolery   31 Lip 2012 13:14 Odpowiedzi: 21    Wyświetleń: 3378
  • STM32 Zapis zmiennej do pamięci EEPROM. - Na rejestrach.

    Witam :) Chce zapisać zmienną do pamięci EEPROM w procesorze. Testuje peryferia dynamicznie i nie wiem co się z nimi dzieje w trakcie działania. Wysyłają do mnie dane po USARCIE i chciałbym je zapisywać w wewnętrznej pamięci. Znalazłem realizacje zapisu, lecz wszędzie bazuje się na bibliotekach HAL, których nigdy nie używałem i się przekonać nie mogę....

    Początkujący Elektronicy   10 Cze 2019 08:57 Odpowiedzi: 0    Wyświetleń: 522
  • Emulacja EEPROM na STM32F103 - Czy można użyć normalnych adresów zamiast wirtualnych?

    Nie do końca to dobrze zrozumiałeś... Ten cały "adres wirtualny" to jest IDENTYFIKATOR danych. Jeśli masz swoje 10 "zmiennych" w takim "EEPROMie", to mają one dziesięć STAŁYCH identyfikatorów ("wirtualnych adresów"). Jeśli zapisujesz nową wartość danej "zmiennej", to identyfikator ("wirtualny adres") pozostaje bez zmian. Jeśli chcesz odczytać daną "zmienną",...

    Mikrokontrolery ARM   19 Wrz 2013 09:24 Odpowiedzi: 5    Wyświetleń: 2499
  • STM32F103 - Programowy Bootloader -> Idea działania, skrypty linkera

    Kontynuuję temat ponieważ natrafiłem na kolejny problem. W tej chwili kompiluję aplikację i bootloader jednocześnie. W rezultacie po modyfikacjach w programie głównym ulega zmianie także obszar bootloadera w pliku hex. Wydaje mi się że to przez zmianę alokacji zmiennych w pamięci ram lub stałych z dyrektywy #define używanych w funkcjach bootloadera....

    Mikrokontrolery ARM   16 Mar 2013 10:42 Odpowiedzi: 28    Wyświetleń: 6330
  • Konfiguracja STM32F103VCT6 z JLink i Segger GDB Server - linker script

    Czyżby? Czy dla AVR ktokolwiek przejmuje się skryptami linkera, startupem, tablicą wektorów i Makefilem? Przecież dla tej platformy jest DOKŁADNIE TAK SAMO jak dla ARM, a jakoś nikomu nawet na myśl nie przyjdzie zajmować się tymi plikami - każdy korzysta z gotowców zawartych w pakiecie avr-gcc. Te pliki tam fizycznie są, nikt nie zajmuje się tym jak...

    Mikrokontrolery ARM   23 Paź 2012 21:46 Odpowiedzi: 27    Wyświetleń: 3863
  • STM32F4 - ADC DMA - konfiguracja nie przepisuje wartości do zmiennej

    Sprawdzona konfiguracja na STM32F407VGT [syntax=c]void adc_init(void) { RCC->APB2ENR |= RCC_APB2ENR_ADC1EN; RCC->AHB1ENR |= RCC_AHB1ENR_DMA2EN; //konfiguracja ADC ADC1->CR2 = ADC_CR2_ADON | //włącz ADC ADC_CR2_EXTEN_0 | /*ADC_CR2_EXTEN_1 |*///wyzwalanie przetwornika zboczem opadającym i narastającym ADC_CR2_EXTSEL_3 | ADC_CR2_EXTSEL_0 |//wyzwalanie...

    Mikrokontrolery ARM   28 Gru 2016 08:56 Odpowiedzi: 14    Wyświetleń: 2094
  • [GCC] Linker usuwa zmienne z atrybutem "used"

    Hejka, robię właśnie przesiadkę projektu z kompilatora IAR'a do GCC'a i mam problem z przeniesieniem niektórych ustawień, konkretniej chodzi o nie wycinanie przez linker konkretnych, nieużywanych zmiennych globalnych wygenerowanych przez zewnętrzne narzędzie, zawierających informacje np. o dacie buildu, checksumie itp. które są potem w przypadku reklamacji...

    Mikrokontrolery ARM   03 Lip 2018 20:13 Odpowiedzi: 29    Wyświetleń: 1368
  • Czy AVR Dragon umożliwia podgląd pamięci i śledzenie zmian zmiennych?

    Zacznijmy od początku. Czy jest potrzebny sprzętowy JTAG? nie. jest potrzebny programator. Zalety JTAG-a: śledzenie w układzie. Wady JTAG-a w wykonaniu Atmel-a.... : gubi program w trakcie śledzenia. nie potrafi śledzić działania WDT. okłamuje użytkownika - jeśli kompuilator nie włączy kawałka kodu a debuger Atmala z Jtag-iem widzi ten kod i go wykonuje...

    Mikrokontrolery AVR   23 Paź 2012 09:41 Odpowiedzi: 9    Wyświetleń: 2061
  • [STM32] SPI1, kanały DMA: odbiera mniej niż wysyła

    W normalnym świecie SPI działa w ten sposób, że wysyłając jeden bajt, odbiera się jeden. Pisząc pewien ogromny program, używałem powyższego założenia implementując obsługę SPI1 z pomocą kanałów DMA (DMA1_Ch2 i DMA1_Ch3). Jeden kanał używany do transferu bloku z pamięci RAM do SPI1->DR, drugi kanał do transferu w drugą stronę. Wszystko działało bez najmniejszego...

    Mikrokontrolery ARM   24 Paź 2013 08:40 Odpowiedzi: 9    Wyświetleń: 3563
  • [STM32] Jak pisać efektywne i przenośne biblioteki dla STM32 w C?

    Ja w 95% używam typedef do struktur. Do wskaźników nigdy (tu sie zgadzam że jest to 'pure evil'). Dlaczego? - bo nie trzeba pisać struct ;) Czemu typedef? Bo wtedy wiadomo że biblioteka operuje na specjalnych danych. Jak nie pamiętam co to jest za twór, to i tak lepiej nie brać się za pisanie kodu. Dokładnie. A twór łatwo można sobie przypomnieć klikając...

    Mikrokontrolery ARM   12 Gru 2016 20:53 Odpowiedzi: 83    Wyświetleń: 10641