stm32 static inline

Znaleziono około 34 wyników dla: stm32 static inline
  • Użycie static przed funkcją w C na STM32 - co to oznacza?

    Generalnie taki jest właśnie sens użycia static. Jeśli funkcja ma być dostępna w różnych miejscach, to umiść ją w nagłówku jako static inline.

    Mikrokontrolery Początkujący   12 Sie 2019 13:24 Odpowiedzi: 37    Wyświetleń: 2649
  • REKLAMA
  • [STM32] - Błąd składni przy konfiguracji GPIO w nowym programie

    I czemu Ty na miłość boską wkładasz całą funkcję w header ? To właściwe miejsce na funkcję "static inline" Albert

    Mikrokontrolery ARM   16 Sie 2012 10:28 Odpowiedzi: 8    Wyświetleń: 1368
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [STM32F303][C]Atomic blocks - sekcje krytyczne w STM32

    Czasem Arduino do czegoś się przyda Dodano po 2 Możesz dać przykład takiej krytycznej czasowo operacji? Problem jest a raczej był związany z buforem nadawczym uarta. Mam funkcję: Blokuj tylko przerwania od UART.

    Mikrokontrolery ARM   04 Sty 2020 21:56 Odpowiedzi: 16    Wyświetleń: 1317
  • [STM32] Jak pisać efektywne i przenośne biblioteki dla STM32 w C?

    Jak coś już coś muszę na pollingu robić to: tick_ms_irq musi być wywoływane w przerwaniu od tmera co 1ms. BTW: Ten kod z HAL'a to niezła padaka: if, if, if, if .... :)

    Mikrokontrolery ARM   12 Gru 2016 20:53 Odpowiedzi: 83    Wyświetleń: 10692
  • REKLAMA
  • STM32F103RBT6-Nucleo - Przykładowy kod CAN w CooCox

    Chyba tak jest, tutaj plik startup_stm32f10x_md.c [syntax=c]/** ****************************************... * (at)file startup_stm32f10x_md.c * (at)author Coocox * (at)version V1.0 * (at)date 12/23/2009 * (at)brief STM32F10x Medium Density Devices Startup code. * This module performs: * - Set the initial SP * - Set...

    Mikrokontrolery ARM   11 Sty 2017 12:56 Odpowiedzi: 22    Wyświetleń: 2232
  • [STM32] - Ilość plików a wielkość kodu wynikowego.

    Odwracasz kota ogonem. Nigdzie nie pisałem, że ta oszczędność do czegokolwiek jest potrzebna. Ale skoro autora to gnębi, to mu odpowiadamy. A poznanie kompilatora może kiedyś się przydać. Piszesz o asemblerze, modyfikatory typu const, static, inline po coś wymyślono. Dobrym nawykiem jest informować kompilator o swoich intencjach, a nie pisać byle się...

    Mikrokontrolery ARM   20 Wrz 2015 21:12 Odpowiedzi: 25    Wyświetleń: 1470
  • Jak wyświetlić napis 'Hello World' na wyświetlaczu TFT używając STM32F411RET i FT800?

    Okej, zatem spróbujmy przystosować bibliotekę, którą mi podlinkowałeś do moich ćwiczeń ;-) Skopiowałem pliki EVE.h, EVE_commands.c, EVE_commands.h, EVE_config.h, EVE_target.c, EVE_target.h do odpowiednich folderów w projekcie. Teraz tak: W pliku EVE_target.h trzeba wybrać i włączyć jedną z konfiguracji. Jeśli dobrze myślę to mnie interesuje ta konfiguracja,tak?...

    Mikrokontrolery ARM   15 Paź 2020 08:40 Odpowiedzi: 13    Wyświetleń: 1356
  • [STM32] Czy warto używać bibliotek ST w projektach z STM32?

    pomijając parę innych kwestii, chociażby możliwość deklarowania funkcji jako inline (tak, wiem, w przypadku zwykłego słówka "inline" jest to tylko sugerowanie kompilatorowi, żeby inline'ował, ale np. w przypadku gcc można funkcji nadać taki atrybut: __attribute__((always_inline)) i wtedy kompilator nie ma wyboru, nawet gdy ma optymalizacje ustawione...

    Mikrokontrolery ARM   15 Sty 2016 12:53 Odpowiedzi: 152    Wyświetleń: 33268
  • REKLAMA
  • HY-32-mini STM32F103VCT6 - Optymalizacja wyświetlania BMP na LCD

    Temat jakoś umiera śmiercią naturalną. Pozwolę sobie nieco odświeżyć. Hardware: - HY-mini (Cortex M3) - LCD ze sterownikiem ssd1289 (FSMC) - karta sdhc (SDIO) Software: - fatfs R0.10 („testowałem” też wcześniejsze wersje) - „HAL” dla fatfs – silnie wzorowany na przykładach dołączonych do HY-mini i przykładach sugerowanych...

    Mikrokontrolery ARM   10 Mar 2014 21:30 Odpowiedzi: 42    Wyświetleń: 6159
  • STM32F107RCT6 + VS1003 - transmisja SPI działa tylko w jedną stronę

    Zaprojektowałem i zbudowałem płytkę wyposażoną w procesor STM32F107RCT6 oraz dekoder popularny MP3 VS1003. Jest to kolejna wersja starszego projektu na PIC32, który przenoszę na nowy mikrokontroler. Większa część projektu PCB pochodzi ze starej wersji. Do komunikacji z VS1003 używam popularnej biblioteki Andy'ego Karpova, którą już wcześniej przeportowałem...

    Mikrokontrolery   13 Lut 2021 11:19 Odpowiedzi: 8    Wyświetleń: 369
  • Jak zintegrować STM32L0xx i STM32F4xx z Domoticz i MySensors?

    Witajcie, Potrzebuję zrealizować wizualizację danych o małej zmienności, które pochodzą z kilkunastu sensorów. Autorskie rozwiązania typu TFT+GUI+TP odrzuciłem ze względu na brak kompatybilności z różnymi systemami i dodatkowe koszty związane z opracowaniem sprzętu. Po analizie dostępnych rozwiązań padło na Domoticz + MySensors ze względu na możliwość...

    ESP8266 i ESP32   13 Maj 2019 22:39 Odpowiedzi: 6    Wyświetleń: 2661
  • REKLAMA
  • Jak napisać kod GPIO dla STM32 bez użycia bibliotek?

    Bo taki kod jest bardziej dla mnie czytelny, mam rejestr na którym wykonuję dwie operacje, zamiast makaronu ifów które ustawiają kolejne rejestry (zależne od ustawień). Funkcja może wyglądać tak: [syntax=c]static inline void GPIO_Config(GPIO_TypeDef* gpio, uint8_t pin, uint8_t conf){ if(pin > 7){ gpio->CRH &= ~( 0xF << ((pin - 8) * 4));...

    Mikrokontrolery ARM   07 Lip 2012 20:42 Odpowiedzi: 188    Wyświetleń: 18600
  • [C, STM32 CM3] - Bardzo wydajne funkcje obsługujące / rekonfigurujące porty.

    Witam, chciałem się poradzić wyjadaczy (albo każdego kto się zna i może coś doradzić) od STM32F103 nt. wydajnej obsługi portów na tym procku. Nie pisałem dużo rzeczy na te procki a już szczególnie nie takie które wymagały świetnej wydajności. Teraz bardzo zależy mi na tym, zarówno na obsłudze portów typu (odczytaj port/zapisz na port, odczytaj/zapisz...

    Mikrokontrolery   22 Wrz 2013 16:23 Odpowiedzi: 5    Wyświetleń: 1452
  • STM32F373 - SysTick nie uruchamia się po migracji z STM32F103

    Witam wszystkich. Uzywam Eclipse + OpenOCD (0.9.0) + GCC. Do tej pory używałem STM32F103 (Cortex-M3), a teraz przesiadłem się na STM32F373 (Cortex-M4). Wziąłem ze starego programu skrypt linkera, startup, vectors.c i posklejałem do kupy odpowiednio je modyfikując. Program generalnie odpala się, mogę sterować GPIO. Następnie spróbowałem uruchomić SysTicka....

    Mikrokontrolery ARM   17 Lut 2016 10:36 Odpowiedzi: 12    Wyświetleń: 1227
  • STM32F107 konfiguracja zegara w Keil uVision - błędy kompilacji kodu

    Do konfiguracji GPIO, zamiast tego pasztetu który masz, polecam coś takiego: [syntax=c]#define CNF_ANALOG 0 #define CNF_FLOATING 1 #define CNF_INPUT 2 #define CNF_RESERVED 3 #define CNF_GPPP 0 #define CNF_GPOD 1 #define CNF_AFPP 2 #define CNF_AFOD 3 #define MODE_INPUT 0 #define MODE_OUTPUT_2MHZ1 #define MODE_OUTPUT_10MHZ2 #define MODE_OUTPUT_50MHZ3...

    Mikrokontrolery ARM   20 Kwi 2012 15:36 Odpowiedzi: 55    Wyświetleń: 7361
  • Stare na nowe czyli kod z ATMEGA 32 usiłuje wziąć do STM32F103

    Po kilku godzinach program odpaliłem ..... podświetlanie się załącza dopiero po naciśnięciu kilka razy klawisza, monitor pokazuje start i numery naciśnietych klawiszy i to nie za każdym naciśnięciem. nie wiem jak "zatrzymać" dany ekran menu żeby zrealizować inna funkcje np; zmiana stanu wyjścia /* * sterownik który wykończy mnie i innych ..............

    Mikrokontrolery ARM   09 Sie 2024 15:25 Odpowiedzi: 330    Wyświetleń: 6747
  • [STM32] Debugowanie Hard Faulta - Odwijanie stosu, call stack, Distortos

    Jeśli jest jakaś literatura, proszę o naprowadzenie Oczywiście że jest. Nazywa się programming manual (w załaczeniu do M4) oraz "Cortex-Mx Technical Reference Manual" na stronach ARM-a. Są też fajne książki Josepha Yiu (wygoogluj sobie - kupisz na amazonie) Jaka jest najprostsza metoda do zapisania wartości rejestru lr do zmiennej języka c? Jak to...

    Mikrokontrolery ARM   07 Mar 2021 22:47 Odpowiedzi: 8    Wyświetleń: 918
  • [STM32][C Keil RealView] ISIX-RTOS - czy ktoś go kompilował?

    Witam! Mam problem z kompilacją ISIX-RTOS ( 31: static inline void port_idle_cpu( void ) 32: { 33: #ifndef ISIX_DEBUG 34: asm volatile("wfi\t\n"); 35: #endif 36: } Błędy do lini 31: ..\..\..\Libraries\ISIX_RTOS\include\isi... warning: #260-D: explicit...

    Mikrokontrolery ARM   14 Sty 2014 11:31 Odpowiedzi: 13    Wyświetleń: 4533
  • [F0] EEPROM - zapisuje tylko pierwsze 256 komórek we FLASH

    W F030 strona ma wielkość 1kB co oznacza, że zmieści się tylko 256 zmiennych Jak to obliczyłeś? Pewnie 1024/4 bajty = 256, ale tutaj tak to nie działa. Strona 1024 bajty to 1024 bajty, inaczej 512 półsłów. Zapis do stron pamięci w STM32F0 wymaga zapisywania półsłów, do jednej strony oczywiście można zapisać 512 półsłów. W poniższym przykładzie zapisuję...

    Mikrokontrolery ARM   19 Lip 2020 23:30 Odpowiedzi: 8    Wyświetleń: 810
  • STM32F0Discovery - Jak rozwiązać konflikt przerwań TIM2 i TIM3?

    U mnie sa roznice. Kompiluje na O2 (przy asm i tak to nie ma znaczenia). Procek dziala na 72MHz. Jeszcze raz powrorzylem test. Zapis do pamieci bb u mnie jest wolniejszy: [syntax=c] int a; volatile int xx = 1; volatile int k; static inline void bitband_str_prepare(void) { asm volatile(" \n" "movw r7, #0x84A8 \n" "movt r7, #0x4225 \n" ); } static inline...

    Mikrokontrolery ARM   31 Paź 2013 10:15 Odpowiedzi: 91    Wyświetleń: 7755
  • stm32f7 - Jak elegancko ustawiać bity w rejestrze nie przestawiając innych/zarez

    (at)Piotr Piechota Ja robiłbym coś w stylu: [syntax=c] static inline uint32_t bitfield_update(uint32_t bf, uint32_t mask, uint32_t value) { return (bf & ~mask) | (value & mask); } .... const uint32_t mask = RCC_PLLSAICFGR_PLLSAIN | RCC_PLLSAICFGR_PLLSAIP | RCC_PLLSAICFGR_PLLSAIQ | RCC_PLLSAICFGR_PLLSAIR; const uint32_t value = 192 // N=192...

    Mikrokontrolery ARM   28 Gru 2016 21:30 Odpowiedzi: 9    Wyświetleń: 1017
  • [STM32] - STM32L-Discovery + FatFS na microSD 512MB działa a na innych nie

    Zmieniłem trochę w projekcie. Zastosowałem najnowszą wersję FatFS. Plik z konfiguracją funkcji zadeklarowanych diskio.h pobrałem ze [url=http://www.siwawi.arubi.uni-kl.de/a... strony i przerobiłem go by pasował do STM32L. Po testach objawy wyglądają tak: Karty 512MB i 16GB: porgram mniej...

    Mikrokontrolery ARM   18 Gru 2013 23:36 Odpowiedzi: 49    Wyświetleń: 13737
  • [STM32F405] - Wprowadzenie wzoru - funkcje trygonometryczne

    Po pierwsze to powinieneś solidnie komentować takie funkcje. Opisz sobie dokładnie które zmienne powinny mieć jakie jednostki. Gdybyś to zrobił to byś zobaczył że do zmiennej która trzyma wartość w stopniach przypisujesz radiany. Dalej - zastąp RAD2ST makrem DEG2RAD(x). Będzie czytelniej. Jeżeli nie masz jakiejś kosmicznej konieczności stosowania liczb...

    Mikrokontrolery ARM   09 Lut 2015 14:17 Odpowiedzi: 4    Wyświetleń: 1440
  • [STM32] STM32 F103 SysTick Delayms nie odlicza poprawnie czasu przy 72 MHz

    Właśnie przerabiam bibliotekę hd44780 która działa na atmega ale na stm32 nie może mi ruszyć inicjalizacja ekranu. Jeżeli kolegom nie będzie się chciało analizować całości to proszę chociaż oto jak koledzy robią inicjalizację ekranu. Plik .h [syntax=c]/* * hd44780.h * * Created on: 08.11.2017 * Author: Pawel */ #ifndef HD44780_H_ #define HD44780_H_...

    Mikrokontrolery ARM   13 Sty 2018 21:04 Odpowiedzi: 10    Wyświetleń: 945
  • [STM32F4] [STM32F4][DS18B20] - Kod zwraca 0x0808 przy ONE_WIRE_Read_Tmp()

    Witam, mecze się z DS18B20. Naskrobałem poniższy kod ale wydaje się działać połowicznie. Ale po kolei, pierwsze co robię to ONE_WIRE_Init (), a potem ONE_WIRE_Read_Tmp(). I przy tej drogiej funkcji mam problem bo zwraca ona za każdym razem 0x0808 (jak by komendy nie zmienić zawsze tak samo, a nawet bez komend). ONE_WIRE_Init_Sequence() działa poprawnie...

    Mikrokontrolery Początkujący   19 Lut 2014 23:25 Odpowiedzi: 2    Wyświetleń: 1578
  • [STM32F401][I2C - przerwania]Odbiór i nadawanie bajtów

    Przy DMA też wisi przy sprawdzaniu I2C_CR1_STOP, I2C_SR1_ADDR, I2C_SR1_BTF. W poolingu działa, ale też po chwili wisi najczęściej w sprawdzaniu I2C_SR1_ADDR. [syntax=c]void i2c_Init(I2C_TypeDef *I2Cx, uint16_t bus_speed) { if(I2Cx == I2C3) { RCC->APB1ENR |= RCC_APB1ENR_I2C3EN; RCC->AHB1ENR |= RCC_AHB1ENR_DMA1EN; gpio_pin_cfg(GPIOC, 9, GPIO_AF4_OD_50MHz);//sda...

    Mikrokontrolery ARM   23 Lut 2020 00:17 Odpowiedzi: 7    Wyświetleń: 696
  • [STM32F1][c/asm] - ilość cykli zegara miedzy dwoma kolejnymi instrukcjami ldr

    To są jednak rejestry sprzętowe i należy to minimalnie zmodyfikować (nie sprawdzałem poprawności adresów itp) [syntax=c]#define DWTEn() (*((volatile uint32_t*)0xE000EDFC)) |= (1<<24) #define CpuTicksEn() (*((volatile uint32_t*)0xE0001000)) = 0x40000001 #define CpuTicksDis() (*((volatile uint32_t*)0xE0001000)) = 0x40000000 #define CpuGetTicks()...

    Mikrokontrolery ARM   02 Lis 2018 14:41 Odpowiedzi: 7    Wyświetleń: 798
  • [STM32] log10() zawiesza procesor przy wartości z ADC, działa z 123. Dlaczego?

    Dodano po 31 Kiedy debuguje program, krokowo, zaraz po a = 124; z linii b = log10(a); wskakuje do nieskończonej pętli - void HardFault_Handler(void). Tak jakby sam adres procedury wywoływał błąd sprzętowy.

    Mikrokontrolery ARM   29 Mar 2012 21:29 Odpowiedzi: 75    Wyświetleń: 8319
  • [STM32F303] ADC Pomiar Vref zawyżony o ok 16% po wpewnym czasie pracy procesora

    Witam Kolegów. Zauważyłem dziwny problem przy pomiarze Vref jeżeli procesor popracuje trochę czasu. Otrzymane dane są zawyżone o 16% (zawsze identycznie). Dzieje się to po włączeniu generacji PWM-ów. Inne kanały ADC działają poprawnie. Rejestry ADC są ustawione identycznie. Ktoś może zetknął się z takim problemem. ADC oczywiście po kalibracji etc etc....

    Mikrokontrolery ARM   17 Paź 2017 20:31 Odpowiedzi: 3    Wyświetleń: 735
  • [Cortex-M3 STM32L152][arm-gcc] - Aplikacja wielowątkowa, przełączanie kontekstu

    Witam! Od jakiegoś czasu usiłuję napisać aplikację obsługującą kilka wątków (taki wstęp do RTOS) i przełączającą kontekst między nimi. Problem tkwi w tym, że podczas wczytywania kontekstu (LoadContext()) wywala FaultHandler. Zdebugowałem ustrojstwo i wynikiem są dwa bity CFSR: IMPRECISERR oraz STKERR. Nie wiem co może być przyczyną, być może czegoś...

    Mikrokontrolery ARM   25 Lut 2014 11:39 Odpowiedzi: 12    Wyświetleń: 2079
  • [STM32f103ZET6][C/CooCox] - Karta SD - Błąd FR_NOT_READY.

    Witam, Próbuje uruchomić obsługę karty SD pod STM32f103ZET6. Wykorzystuje do tego bibliotekę, używaną wcześniej pod STM32f407. Zmodyfikowałem tylko inicjalizacje SPI i dorzuciłem testową funkcję zapisu do karty. Mimo to karta nie chce ruszyć. Przy próbie otwarcia jakiegokolwiek pliku dostaje: FR_NOT_READY. Próbowałem już na dwóch kartach SD, formatowałem...

    Mikrokontrolery ARM   20 Lis 2013 14:02 Odpowiedzi: 5    Wyświetleń: 2286
  • stm32f100rb - sprintf() dla float w Coocox nie działa, a dla int działa

    Zmieniłem : 2. change The initial stack pointer in the vector table: (void *)&pulStack[STACK_SIZE-1]... to (void (*)(void))((... long)pulStack + sizeof(pulStack)), w startup_stm32f10x_md_vl.c Dalej to samo. [syntax=c]/** ****************************************...

    Mikrokontrolery ARM   09 Mar 2015 10:10 Odpowiedzi: 10    Wyświetleń: 2538
  • [stm32][keil] Konfiguracja EXTI i NVIC dziwne zachowanie.

    Taka mała ciekawostka: NVIC->IABR jest tylko do odczytu. Indeksy tablicy zaczynamy od 0. To jest trochę mylące ale EXTICR1 = EXTICR[0] Używaj makr. Włączyłeś zegar dla AFIO ? Są funkcje w cmsisie do ustawiania przerwań, ale ich nie używałem, więc należałoby zerknąć do pliku nagłówkowego EDIT: [syntax=c]/** * (at)brief Enable Interrupt in NVIC Interrupt...

    Mikrokontrolery ARM   17 Cze 2014 23:58 Odpowiedzi: 6    Wyświetleń: 3015
  • Jak zoptymalizować kod ASM generowany przez kompilator dla Cortex-M0?

    składanie zmiennej przez |= miało pokazać co musiałbym zrobić aby uzyskać podobny kod wynikowy do tego co wygenerował kompilator. I ja tak nie piszę lecz takie coś na podstawie prostej operacji wygenerował kompilator. Tak wygląda mój kod bo widzę, iż ktoś sięciągle czepia przykładu jak mniej więcej wyglądać musiałby kod źródłowy aby uzyskać taki dziwny...

    Mikrokontrolery ARM   15 Lis 2017 22:15 Odpowiedzi: 26    Wyświetleń: 1902