stm32 static inline

Znaleziono około 50 wyników dla: stm32 static inline
  • [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ń: 1341
  • REKLAMA
  • 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ń: 6972
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (2min)...
  • Jak wyświetlić napis 'Hello World' na wyświetlaczu TFT używając STM32F411RET i FT800?

    Poniewaz wszystkie wczesniejsze #define masz w warunku #if 0 #endif czyli niespelnionym. Zreszta w CubeIde powinienes miec to zaznaczone na szaro (wylaczone). A czy to nie powinno być zrobione tak, że ja powinienem zamienić #define EVE_EVE3_50G z linijki 119 na #define EVE_RVT35 zamiast linijki 104? https://obrazki.elektroda.pl/8326677800_...

    Mikrokontrolery ARM   15 Paź 2020 08:40 Odpowiedzi: 13    Wyświetleń: 1392
  • REKLAMA
  • Użycie static przed funkcją w C na STM32 - co to oznacza?

    Trzeba dodać, że static inline będzie powielał kod w miejscach wywołania, co powoduje że kod działa szybciej (brak call'i) ale rozmiar kodu będzie większy. Niekoniecznie - o tym decyduje kompilator. Ale jeśli użyjesz gdzieś pointera do funkcji to już funkcja skompiluje się normalnie. Co nie znaczy, że jej treść nie będzie mogła być wstawiana w miejsca,...

    Mikrokontrolery Początkujący   12 Sie 2019 13:24 Odpowiedzi: 37    Wyświetleń: 2748
  • 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ń: 378
  • [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ń: 10779
  • 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ń: 2721
  • [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ń: 1488
  • REKLAMA
  • [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ń: 960
  • [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ń: 13896
  • REKLAMA
  • Jak napisać kod GPIO dla STM32 bez użycia bibliotek?

    To ja zaproponuje taki nagłówek :D [syntax=c]#ifndef GPIO_H_ #define GPIO_H_ #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 #define ANALOG_MODE...

    Mikrokontrolery ARM   07 Lip 2012 20:42 Odpowiedzi: 188    Wyświetleń: 18738
  • [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ń: 1377
  • [STM32] Jak wyłączyć przerwanie EXTI podczas transmisji USART?

    Pisałem gdzieś jak się je włącza, na co Freddie napisał, że są funkcje w CMSIS, które z resztą na forum też już wklejałem. [syntax=c]/** * (at)brief Enable Interrupt in NVIC Interrupt Controller * * (at)param IRQn The positive number of the external interrupt to enable * * Enable a device specific interupt in the NVIC interrupt controller. * The interrupt...

    Mikrokontrolery ARM   25 Lip 2012 11:40 Odpowiedzi: 8    Wyświetleń: 4417
  • [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ń: 33379
  • [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ń: 1524
  • [STM32][C/uVision4] Częstotliwość przerwania SysTick

    Tak to jest jak się z tej ogłupiającej biblioteki korzysta. Zajrzałem do core_cm3.h , tam funkcja SysTick_Config(ticks) przyjmuje postać: static __INLINE uint32_t SysTick_Config(uint32_t ticks) { if (ticks > SysTick_LOAD_RELOAD_Msk) return (1); /* Reload value impossible */ SysTick->LOAD = (ticks & SysTick_LOAD_RELOAD_Msk)...

    Mikrokontrolery ARM   19 Maj 2013 13:06 Odpowiedzi: 33    Wyświetleń: 14414
  • stm32 - eclipse konfiguracja minimum plikow Cube/ CMSIS

    ja pobralem najnowsza paczke mam plik func tego typu __attribute__( ( always_inline ) ) __STATIC_INLINE uint32_t __get_PRIMASK(void) { uint32_t result; __ASM volatile ("MRS %0, primask" : "=r" (result) ); return(result); } /** \brief Set Priority Mask This function assigns...

    Mikrokontrolery ARM   02 Lut 2016 20:18 Odpowiedzi: 9    Wyświetleń: 1665
  • [STM32][C Keil RealView] ISIX-RTOS - czy ktoś go kompilował?

    Ok, compiling cppsupport.c... ..\..\..\Libraries\ISIX_RTOS\include\isi... warning: #260-D: explicit type is missing ("int" assumed) ..\..\..\Libraries\ISIX_RTOS\include\isi... error: #65: expected a ";" ..\..\..\Libraries\ISIX_RTOS\include\isi...

    Mikrokontrolery ARM   14 Sty 2014 11:31 Odpowiedzi: 13    Wyświetleń: 4566
  • 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ń: 1236
  • [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ń: 1008
  • [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ń: 3027
  • [STM32F4][C] - odczyt wartości za pomocą DMA I2C

    Jeśli scalaki masz na płycie i mozesz zagwarantować brak zakłóceń na magistrali, to się baw tym I2C w STM32 ;] "Ludziom działa"... Jeśli chcesz rozwiązanie wyjątkowo proste i odporne, to pozostaje przejściówka I2C<->SPI (lub UART) na oddzielnym procku w którym I2C nie ma błędów, czyli np. LPC1111. W dsPICach I2C też ma błędy, i ogólnie w prockach...

    Mikrokontrolery ARM   27 Sie 2013 19:36 Odpowiedzi: 28    Wyświetleń: 7701
  • 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ń: 7406
  • [STM32] STM32: Zawieszanie się procesora przy programowym resecie IWDG, co robię źle?

    Kto wie, co w tych bibliotekach od ST siedzi, znalazłem gdzieś na forum, że przy wywołaniu tej funkcji (i przy używaniu tych bibliotek) komuś wywala HardFault Exception (tylko przy podpiętym debugerze i IDWG). Po odpięciu JTAGa śmiga. To nie jest funkcja ST, tylko ARMa - jest ona częścią biblioteki CMSIS, którą tworzy jedynie ARM, ST nie ma z nią nic...

    Mikrokontrolery ARM   15 Paź 2010 13:45 Odpowiedzi: 20    Wyświetleń: 7642
  • STM32 - Konfiguracja modułu Bluetooth dla wysokiej częstotliwości próbkowania

    >kasia.p Policzmy: dla 115200bd, można przesłać 11520 bajtów na sekunde. Jeśli chcesz popchnąć ramkę z danymi 500 razy na sekundę, to 11520/500=23. Czyli możesz wysłać paczkę danych o wielkości 23 bajty 500 razy na sekundę. Ograniczmy się do łopatologii, zakładając: - enkodowanie base16, czyli potrzebujesz 3 bajty do popchnięcia 12 bitowej danej,...

    Mikrokontrolery ARM   09 Lis 2012 23:07 Odpowiedzi: 24    Wyświetleń: 4026
  • STM32 - ZL29ARM - Uruchamianie płytki bez bibliotek

    Przestawiłem ową interesującą mnie linijkę z (1ul << 2) na: [syntax=c] static __INLINE uint32_t SysTick_Config(uint32_t ticks) { if (ticks > SysTick_LOAD_RELOAD_Msk) return (1); /* Reload value impossible */ SysTick->LOAD = (ticks & SysTick_LOAD_RELOAD_Msk) - 1; /* set reload register */ NVIC_SetPriority (SysTick_IRQn, (1<<__NVIC_PRIO_BITS)...

    Mikrokontrolery ARM   13 Lut 2013 10:14 Odpowiedzi: 99    Wyświetleń: 15606
  • [STM32] Jak ustawić priorytety przerwań w STM32 bez użycia bibliotek?

    Jednak Cię okłamałem - tablice IP mają dla każdego przerwania osobny element (; Sorry W razie wątpliwości zawsze można podejrzeć kod z CMSISa (; [syntax=C]/** * (at)brief Set the priority for an interrupt * * (at)param IRQn The number of the interrupt for set priority * (at)param priority The priority to set * * Set the priority for the specified interrupt....

    Mikrokontrolery ARM   26 Lip 2012 18:42 Odpowiedzi: 10    Wyświetleń: 3624
  • 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ń: 6189
  • 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ń: 2277
  • [Cortex] Jak ustawić priorytety przerwań NVIC w Cortex-M3?

    Ponieważ dalej mi to spędza sen z oczu, a przy okazji daje fragment z książki o której mówiłem na temat STM32 opisującej przerwania. Zabaczcie jeszcze cos ciekawego. W bibliotece STM są takie dwie funkcje przeliczające nr priorytetu mając grupę, preempriority oraz subpriority. Z książki o STM: NVIC...kieruje się następującymi zasadami arbitrażu 1. Jeśli...

    Mikrokontrolery ARM   22 Cze 2014 11:00 Odpowiedzi: 29    Wyświetleń: 6394
  • [STM32] Konfiguracja USART - transmisja działa tylko w jedną stronę?

    -> BlueDraco Postraszyłeś tym DMA i teraz początkujący Kolega uczy się: "DMA jest trudne i złe, lepiej napisać to na przerwaniach". BŁĄD!! Po to jest DMA w prockach, zeby z niego korzystać, i odciążać rdzeń tu gdzie tylko się da. I tym sposobem moja konstrukcja mieli ciągły strumien z UARTa rzędu 230kB/s dekoduje, sprawdza poprawnosc, przetwarza,...

    Mikrokontrolery ARM   07 Lip 2013 16:42 Odpowiedzi: 18    Wyświetleń: 4089
  • [STM32] Jak skonfigurować NVIC dla przerwań w STM32 bez biblioteki ST?

    Nie zauwazylem zadnej struktury dla SysTicka poza tymi definicjami. Zajrzyj do core_cm3.h , tam jest gotowa funkcja z CMSIS SysTick_Config(uint32_t ticks) i tam też znajduje się odpowiednia struktura w tym headerze. SysTick jest dostarczany z rdzeniem przez ARM. Dlatego konfigurację NVIC, ITM czy SysTick nie szukasz na stronach producenta mikrokontrolera...

    Mikrokontrolery ARM   05 Gru 2011 15:49 Odpowiedzi: 7    Wyświetleń: 2457
  • [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ń: 711
  • 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ń: 1068
  • [STM32][C/Keil] Nie działa "Simple server" na enc28j60

    Hej, dzięki za odpowiedź - nie działało, bo wywaliłem pliki z USARTem, a w jednym miejscu użyte było printf, co co ciekawe nie wywalało się w czasie kompilacji, ale po wywaleniu tego fragmentu jestem w stanie uruchomić debug. (Faktycznie nie popisałem się z tym .elf, noob ze mnie) Teraz jednak mam problem - SPI1->SR po kilku (około 20 - 40) odczytach...

    Mikrokontrolery ARM   27 Lut 2016 00:34 Odpowiedzi: 16    Wyświetleń: 5652
  • [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ń: 1461
  • [STM32] STM32F4 - Różnice w obliczaniu CRC między STM32 a PC dla danych 8-bitowych

    Witam Zmagam się z problemem obliczania CRC na STM32F4. Problem polega na tym że mam ramkę danych 100 bajtową złożoną z 96 bajtów danych a na 4 ostatnich obliczona suma CRC za pomocą wbudowanego modułu. Dane wysyłane są poprzez DMA+USART. Również do obsługi CRC używane jest DMA. Chodzi o to że dane są wysyłane poprawnie i poprawne odbierane. Problem...

    Mikrokontrolery ARM   25 Paź 2016 08:56 Odpowiedzi: 16    Wyświetleń: 2889
  • [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ń: 831
  • STM32F4 - debugger STLink zaburza działanie programu.

    (at)Freddie no fakt, trzeba by często w to trafiać. Sprawdzę to jeszcze u siebie jak wrócę z roboty, teraz nie mam STMa pod ręką. A mimo wszystko nalegam, aby Autor pokazał kod asemblerowy programu. Dodano po 2 Data race o którym piszesz faktycznie tam jest - wczytałem się wreszcie porządnie if((zapalona) && (TIM9->CNT > 5000) ) pomaga...

    Mikrokontrolery ARM   18 Mar 2015 17:20 Odpowiedzi: 19    Wyświetleń: 1446
  • [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ń: 1632
  • STM32 - Systick i RTC - wspólnie śmigają, oddzielnie zwisają

    Wiesz co ja dopiero zaczynam z programowaniem stm ale jedna sprawa rzuciła mnie się w oczy. twoja funkcja jest prawie funkcją z biblioteki której definicja i rozwinięcie znajduje się w pliku core_cm4.h [syntax=c] __STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) { if ((ticks - 1) > SysTick_LOAD_RELOAD_Msk) return (1); /* Reload value impossible...

    Mikrokontrolery ARM   05 Kwi 2014 16:44 Odpowiedzi: 7    Wyświetleń: 2316
  • STM32F100RB - kompilacja arm-none-eabi-gcc z biblioteką CMSIS, makefile, dioda LED

    Witam, niestety muszę prosić o pomoc u podstaw, bo poległem. Problem jest taki: chciałem skompilować testowy program za pomocą arm-none-eabi-gcc z biblioteką CMSIS, bez żadnych eclipse, bez żadnych płytek rozwojowych - po prostu dioda podłączona do wyjścia procesora. Biblioteka chyba nie przewiduje bycia używanym przez arm-none-eabi-gcc więc: 1. utworzyłęm...

    Mikrokontrolery ARM   30 Paź 2016 22:23 Odpowiedzi: 20    Wyświetleń: 1251
  • [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ń: 8361
  • 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ń: 7782
  • [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ń: 807
  • [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ń: 753
  • [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ń: 2094
  • [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ń: 2298
  • 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ń: 2559
  • 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ń: 1926