Dzięki za odpowiedź. Lutowanie nie wchodzi w grę zatem kupuje przejściówkę usb-uart. Mając Nucleo nie potrzebujesz żadnej przejściówki jeśli chcesz "pogadać" z ESP z komputera, bo Nucleo ma więcej Uartów niż tylko ten jeden podpięty do ST-Linka i wystarczy tylko prosty programik by te Uarty programowo połączyć. I co wyślesz do Nucleo, wyląduje w ESP...
Tadzik85: Wygląda na to, że dziechu zmierzył dokładnie to, o co chodziło, a wyszło mu to, co przewidywałem. Ten sam kod (taka sama sekwencja instrukcji), piszący raz do bitband, drugi raz do tego samego rejestru/komórki ale przez zwykły dostęp - zapis 32-bitowy. Na zdrowy rozsądek - pamięć w mikrokontrolerze nie może mieć dostępu bitowego sama z siebie...
Zrobiłem mały tescik na PC: #include <stdlib.h> #include <stdio.h> #include <stdint.h> #define UIP_BIG_ENDIAN 0 #define UIP_LITTLE_ENDIAN 1 #define UIP_BYTE_ORDER UIP_LITTLE_ENDIAN #ifndef HTONS # if UIP_BYTE_ORDER == UIP_BIG_ENDIAN # define HTONS(n) (n) # else /* UIP_BYTE_ORDER == UIP_BIG_ENDIAN */ # define HTONS(n)...
http://www.freddiechopin.info/ > Download > ARM > Różne > itoa() Jak nie masz sprintf() to masz coś pomieszane z projektem. Tak BTW to sprintf() jest w stdio.h, a nagłówek newlib.h nie jest przeznaczony dla aplikacji użytkownika. 4\/3!!
Dzięki za pomoc. Stanęło na razie na AC6. Ja mam zaleciałości z Atmegi chciałbym mniej więcej programować jak na atmelu w związku z tym szukam bibliotek plików nagłówkowych typu attiny2313.h tylko dla stm. Gdzie to znaleźć, bo znajduje tylko standardowe pliki nagłówkowe języka C typu stdio.h itp.
Na potwierdzenie tego co napisał powyżej Freddie Chopin, zamieszczam poniżej programik ilustrujący problem: [syntax=c] #include <stdio.h> #include <stm32f4xx.h> #include <stm32f4xx_rcc.h> int main(void) { printf("stm32f429i\n"); printf("GPIOA\n%8.8X\n", (unsigned int)GPIOA); printf("RCC_AHB1Periph_GPIOA\n%8.8X\n", (unsigned int)RCC_AHB1Periph_GPIOA);...
Faktycznie, rozwiązanie kwestii działania SPI było dosyć proste i po sprawdzeniu - SPI działa. Odczytuję zapisany wcześniej rejestr poprawnie. Teraz mam inny problem. Poniżej zamieszczam program z pliku main.c, w którym są dodane miejsca wysyłania kolejnych numerów przez UART i program zatrzymuje mi się po wysłaniu numeru 88. Nic więcej się nie dzieje,...
Aby ci to działało to MUSISZ zaimplementować swoje własne syscalls dla open, read, write, close itd. (nie wszystkie muszą działać prawidłowo, choć powinny). Pod tym linkiem który podałeś są przecież nawet podane funkcje (_read_r(), _write_r(), _open_r(), ...). Dodatkowo konieczna jest implementacja DZIAŁAJĄCEGO _sbrk_r(), ponieważ fopen() (a w zasadzie...
Prawdę mówiąc jestem umiarkowanym zwolennikiem SPL, HAL etc. Jak powyżej już napisałem, używam bo są, do tego gratis. Jakąś część kodu przepisuję, gdzie indziej "odpluskwiam". Na zadane wyżej pytanie o ilość linii kodu potrzebnych do migania diodą: [syntax=c] void _heartbeat(void) { while (1) { /* Toggle LED2 */ LED2 ^= 1; vTaskDelay(1000); } } [/syntax]...
Walczę z obsługa klawiatury - w tym necie nic sensownego znaleźć nie można .... na razie tyle .......; #include <stdio.h> #include <stdlib.h> #include <HD44780.h> // definicje zmiennych ----------------------------------------... #define vcc_ref 5.0 // napiecie referencyjne #define hall_ref 2.5 // napiecie referencyjne...
Ja nie wiem co wy za historię tu opowiadacie. W ARMie stałe stringi i stałe tablice są we flash, chyba że ktoś używa totalnie skopanego skryptu linkera (co jest całkiem możliwe, biorąc pod uwagę to co dostarcza ST). Wrzuciłem te dwa stringi (wg mojej składni) do pierwszego projektu jaki mi się akurat nawinął pod rękę, jako dwie zmienne globalne w main.cpp....
jesteś tego pewny to jak to się ma 24 MHz na moim do 74Mhz na 103 ruszy np taki program jak ten code #include "stm32f10x.h" #include "lcd4bit.h" #include <stdio.h> TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_ICInitTypeDef TIM_ICInitStructure; void RCC_Conf(void); void NVIC_Conf(void); void GPIO_Conf(void); uint16_t cnt; char I Proszę kod...
Przeorałem wszystko co było w internecie i niby proste pod warunkiem że odczyta 4 bajty z sterownika. I tu się niestety pojawia problem. mimo tego że mam przykład do komunikacji z dotykiem po SPI to w przypadku tego urządzenia komunikacja nie działa :/ Jeżeli ktokolwiek miałby rzeczowe rady chętnie wysłucham zamieszczam cały projekt w KEIL biblioteka...
Witam. Na wstępie przepraszam za może głupie pytanie i problem, ale jestem początkujący. Chciałbym móc sterować jasnością świecenia diody LED za pomocą PWM. W późniejszych próbach różne jasności ustawić pod różne przyciski itp, a na końcu sterować programowo. Program nie jest całkowicie mój, wzorowałem się na wielu kodach znalezionych w internecie......
Witam, muszę zaimplementować dekoder protokołu RC-5 z pilotów na podczerwień. Zamiast pisać wszystko od początku, postanowiłem skorzystać z gotowego kodu przeznaczonego dla jednej z płytek ewaluacyjnych STM'a - oto paczka z kodem biblioteki i przykładowym projektem http://www.st.com/internet/com/SOFTWARE_...
Wywołanie printf() oczywiście nie wejdzie do tej funkcji, bo nie używa Twojego pliku tylko stdout. Wywołanie drugie to oczywiście inna kwestia. Być może pocieszy Cię, że "nadziałeś" się na to, na co chyba natknął się absolutnie każdy. stdio obsługuje domyślnie buforowanie (można je wyłączyć, ale to oczywiście nie jest najlepsza opcja), to co masz w...
oto kod który przekształci timestampa na datę, oczywiście można sobie te pola zrobić jako strukturę czy jak kto woli, ja tylko daje gotowy algorytm z którego korzystałem podczas obsługi tego śmiesznego RTC w stm32f1 :D [syntax=c] #include<stdio.h> int czyPrzestepny(int rok) { if (rok % 4 == 0 && rok % 100 != 0 || rok % 400 == 0) return...
[syntax=c]#include <stdint.h> #include <unistd.h> #include <fcntl.h> #include <stdio.h> #include <string.h> #include <math.h> double M2F(char x) { return 440.0 * pow(2.0, ((double)x - 69.0) / 12.0); } int main(int argc, char *argv[]){ unsigned char midi[256*1024]; int maximum = 0; if(argc<2) { printf("MIDI (Type...
Spróbuj takiego kodu. Niestety nie sprawdzałem go bo nie mogę skompilować Twojego kodu. [syntax=c] #include "stm32f10x.h" #include "TouchPanel.h" #include "systick.h" #include "GLCD.h" #include "stdio.h" #define TP_INT_IN GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_6) void TPintInit(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GP...
Ostatnio był podobny tamat na forum. Możesz wykorzystać compound literals. https://gcc.gnu.org/onlinedocs/gcc-3.2/g... http://www.elektroda.pl/rtvforum/viewtop... Przykładowo: [syntax=c] #include <stdio.h> #include <stdint.h> #define COMPOUND_LITERAL(type, value)(type){value} #define TEST_U8 COMPOUND_LITERAL(uint8_t,...
Witam Próbuję teraz zaimplementować funkcję sprintf(..). Dołączyłem pliki nagłówkowe bibliotek stdio.h , errno.h oraz implementację funkcji : caddr_t _sbrk (int size) podaną przez Pana na forum. Program kompiluje się lecz niestety przy wywołaniu sprintf(..) jest wywoływane przerwanie z tablicy vectors.c: static void __Default_Handler(void) {...
Witam Mam następujący problem przy płytce STM32F0Discovery. Celem programu jest na poziomie obsługi przerwania ustawienie globalnej zmiennej, a następnie po powrocie do maina sprawdzenie zmiennej i wykonanie instrukcji. Kod pliku main.c [syntax=c] #include "stm32f0xx.h" #include "setup.h" volatile bool new_data = false; int main (void){ setup(); while(1){...
O dzięki, przeoczyłem to. Zmniejszyłem opóźnienie o 1/3 bo F0 taktuje z 48MHz a F1 z 72MHz, ale nadal nic się nie wyświetla :( Dodano po 13 Z kolei na tym kodzie wyświetla znak zapytania:/ Niezależnie od tego co bym chciał aby wyświetlił. main: [syntax=c]#include "lcd_hd44780_lib.h" int main(void) { lcd_init(); lcd_writecommand(HD44780_CLEAR); while(1)...
Cześć. Tak jak napisałem w nazwie tematu posiadam ARM'a STM32F072RB. Podłączyłem kolejno kolumny, później wiersze klawiatury matrycowej 4x3 do portów GPIOC1-GPIOC7. Chcę odczytywać wciskane klawisze na klawiaturze i napisałem jak na razie taki kod: [syntax=c] #include "stm32f0xx.h" #include <stdio.h> volatile uint32_t timer_ms = 0x0; void delay(int...
Jeśli chcesz to zdebuggować, to możesz się "zaopatrzyć" w bleeding-edge-toolchain ( https://github.com/FreddieChopin/bleedin... ). Jest on kompilowany praktycznie tak samo jak toolchain ARMowy, z tym że biblioteki zawierają wszystkie symbole, a więc można je spokojnie debuggować i widzisz co się dzieje. Z Twojego opisu wynika, że problem...
Witam, mam program, który po naciśnięciu klawisza na klawiaturze wyświetla dany znak w terminalu. W jaki sposób zmodyfikować program, żeby po ciśnięciu np. A przez mniej niż 10 sekund był wysyłany napis A, a po wciśnięciu A przez 10 sekund był wysyłany napis A10? [syntax=c] #include "stm32f10x.h" #include "stm32f10x_usart.h" #include <stdio.h>...
Witam Staram się nawiązać komunikację pomiędzy dwoma płytkami STM32F0 przy użyciu modułów RFM73 - jednakże zatrzymałem się na etapie modyfikowania bibliotek dedykowanych dla modułu RFM70 i STM32F10. Problem polega na tym, że nie dochodzi do komunikacji i nie potrafię znaleźć przyczyny. Zamieszczam kody: RFM70.h [syntax=C] /* ****************************************...
Czy znane są wam inne skuteczne algorytmy pomiaru amplitudy PWM? Pracuje na STM32F072CB i tylko taki mam do dyspozycji wedle założeń projektu więc przesiadką choćby na F1 nie wchodzi w grę... Do tego celu jest więcej niż wystarczający. Metoda pomiaru jest dobra. Dodatkowe pytania: 1. Czy oglądałeś ten przebieg na oscyloskopie? Może po prostu nie jest...
Hmm :), No to od czego zaczniemy chłopaki bo ja to programistą jestem ale raczej od strony algorytmicznej, brałem udział w różnych olimpiadach jak "OI, Opsesje algorytmiczne, Potyczki algorytmiczne i takie tam", nawet raz byłem w finale :) ale to było trochę temu hehe, Na procki pisałem ale w czystym C na linux'ie no z wykorzystaniem "stdio.h i stdlib.h"...
Biblioteka jest przezemnie nie ruszona I znajduje się na tej stronie ale podam ja tutaj lcd_hd44780_lib.h Proszę na przyszłość używać tagu ] do wklejania kodu w C... /syntax] . Poprawiłem, LordBlick
Witam, Staram się napisać komunikację I2C w obrębie jednego mikrokontrolera. Potem oczywiście planuję wykorzystać kod do komunikacji między dwoma podobnymi mikrokontrolerami. Niestety kod nie działa i nie wiem czemu, jeśli ktokolwiek pisał podobną rzecz bez wykorzystania biblioteki to bardzo proszę o rady. Poniżej zamieszczam kod programu. Muszę zaznaczyć...
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....
Ponownie przypomnę więc: SPI -> SD -> file system -> stdio. 1. Gdzie ten callback miałby być? 2. Tak naprawdę co innego miałby chcieć zrobić ten programista? Ale tak realnie, bez ogólnego, że "może coś by chciał". No bo jaki sens miałoby _NIE_wyczyszczenie RX FIFO, _NIE_wyzerowanie flagi OVR albo _NIE_przywrócenie DMA i SPI do stanu początkowego? 3....
Dochodzę do wniosku, że nie zdziałam za dużo opierając się na gotowej bibliotece do obsługi systemu plików. Ja dochodzę do wniosku, że Ty dochodzisz do błędnego wniosku [; FatFS, poprawnie skonfigurowany, jest w stanie zmielić dane z wystarczającą prędkością. Nawet zrobiony mega tępo działa całkiem szybko... Mam taki projekt, w który jest system operacyjny,...
Witam, Bawię się zestawem ZL27ARM i robię ćwiczenia z książki "STM32. Aplikacje i ćwiczenia w języku C" Jestem przy ćwiczeniu 18 i mam problem z DMA (pierwszy raz mam styczność z DMA). Zgodnie z przykładem wypełnienie PWM powinno zmieniać się od 0 do 100%. U mnie jest cały czas 50%. Dane z tablicy bufor_PWM nie są przekazywane do TIM1->CCR1 http://obrazki.elektroda.pl/9548353800_1...
Toolchain : C:\Program Files\GNU Tools ARM Embedded\4.9 2014q4 Debugowanie programu : http://obrazki.elektroda.pl/8776950400_1... Gdzieś w sieci wygrzebałem: In case that link ever disappears, what you have to do is ensure that your gcc command has "-Wl,-u,vfprintf -lprintf_flt -lm". This translates to: force vfprintf to...
Witam szanownych Kolegów! Dałem namówić(swoją drogą sam siebie) na jakiegoś ARMa. Wybór padł na STM32F100RB (na STM32VLDiscovery). Oczywiście na początku szok po zaglądnięciu do datasheetu. Tu sie ustawia wszystko. No i jak się da wszystko to są problemy dla początkujących. Do rzeczy: W TrueStudio utworzyłem projekt dla STM32_DISCOVERY. Zamieniłem plik...
Witam wszystkich Czy spotkał się ktoś kiedyś z takim przypadkiem: Usart wysyła poleceniem USART_SendData(USART1, 0x55) do przejściówki wartość i po odczytaniu w progarmie np gtkterm uzyskuję literę "U" (czyli prawidłowo patrząc na tablice ascii). Niestety jest to jedyna wartość zgodna z tą tablicą :/ bo jak wysyłam np. wartość 0x5a to zamiast litery...
Witam Jak że jest to mój pierwszy wpis tego typu to proszę o wyrozumiałość. Słowem wstępu. Chciał bym się z wami podzielić kilkoma moimi doświadczeniami w programowaniu mikrokontrolarów STM32F103 i STM32L152 (STMDISCOVERY) za pomocą otwartej biblioteki libopencm3 ( http://www.libopencm3.org ). Ja pracuję tylko na Ubuntu 64bit. Jako toolchain używam...
Witam. Szkole się w programowaniu zacnych STM32 i od razu na poczatku mam problem z funkcja printf(); Po wywołaniu tej funkcji procesor się zawiesza. Mam zrobiony proste nadawanie i odbieranie danych przez UART. Używam Keila MDK ARM V5 biblioteki HAL wygenerowane w STM32CUBEMX. Korzystam z płytki Kamami Zl27ARM. Na razie chcę uzyskać następujące efekty:...
Mam problem z inicjalizacją UARTA. Otóż kod działa na portach PA9,PA10 lub PC4,PC5. Jednak gdy zmieniam na PB6, PB7 komp nie otrzymuje danych wysyłanych przez płytkę. Może źle to robię, ale według specyfikacji to na te porty można wyprowadzić USART1, więc nie wiem o co chodzi, a jeszcze raczkuje w temacie STM32. [syntax=c]#ifndef _USART_C_ #define _USART_C_...
Cześć, Kilka dni próbuję coś zapisać jak i odczytać z eeprom at24c256. Problem polega na tym że program zatrzymuję się na [syntax=c]while (!(I2C1->SR1 &(SR1_ADDR))){}[/syntax] w funkcji i2c1_burst_write. Sprawdzałem rejestr DR i adres jest dobry. Pamięć eeprom ma adres 0x50 sprawdzałem skanerem i2c. Dodałem nawet przerwy czasowe pomiędzy inicjalizacja,...
z tego co widzę to mam pod main.c podpięte stm32f4xx_gpio.h http://obrazki.elektroda.pl/1100622000_1... Wpisanie do kodu [syntax=c]#include "stm32f4xx_gpio.h"[/syntax] Nic nie zmieniło Dodaję jeszcze kod z main.h [syntax=c] /** ****************************************... * (at)file main.h * (at)author...
Witam, Napisałem prosty kod w Keilu: http://obrazki.elektroda.pl/2538882800_1... http://obrazki.elektroda.pl/8553934200_1... Oscyloskop: 2 V /DIV 0.05 us /DIV
Witam, wydawałoby się, że problem jest banalny, a mimo to już dzień nad nim spędziłem (a czas mi nagli bardzo). Moim zadaniem jest odczytanie wartości ADC i wysłanie przez USART do PC (do Hyperterminala przez konwerter RS232 ->USB). Ogarnąłem wysyłanie np. znaku "a", jednak wartość ADC to jakiś ciąg cyfr (chyba 4-cyfrowy). I nie wiem jak po konwersji...
Zmodyfikowałem przykład dostarczony od ST Use FPU nadal milczy zastanawiam się czy procesor nie jest uszkodzony. Kolejne pytanie jakie się pojawiło dlaczego Timer1 działa z prędkością 168mhz powinno być 84Mhz(przy 84mhz odmierzając 10s przerwanie pojawia się po 5 ). [syntax=c] #include "stm32f4_discovery.h" #include <stdio.h> #include <string.h>...
Witam użytkowników forum elektroda.pl Od niedawna pracuję z podaną w tytule płytką, jednak obecnie napotkałem problem zdawałoby się błahy, jednak dla mnie jest on nie do przebrnięcia, co skłoniło mnie do założenia tego tematu. Chcę ustawić jasność diod znajdujących się na płytce poprzez podanie na nie PWM. U mnie są to dwie świecące na czerwono diody...
Zmieniłem na podane przez Ciebie funkcje: [syntax=c]#include "stm32f4xx.h" #include <stdio.h> #include "stm32f4xx_spi.h" #include "main.h" #include "gpio.h" #define CS_0 GPIOE->ODR &= ~(1<<3); #define CS_1 GPIOE->ODR |= (1<<3); void spi_init( void ) { RCC->APB2ENR |= RCC_APB2ENR_SPI1EN; RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN;...
Witam Posiadam płytkę STM32F4 Discavery chciał bym uruchomić USART6 ale przesyła mi złe dane. Sprawdzałem już zegary ustawienia usart ale nic mi już nie przychodzi do głowy. Zegary ustawione są przy pomocy funkcji SystemInit(). Cały plik sytem_stm32f4xx.c generowałem przy pomocy narzędzia STM32F4xx_Clock_Configuration_V1.1.0 (w excelu). Chcę użyć USART6....
Masz rację, że szkoda całego tygodnia na taki problem:). Oto cały kod: Main: http://obrazki.elektroda.pl/2257364500_1... podłączenie do STM'a wygląda nastepująco: RxD do PA10, TxD do PA9. Więc nadal stoję w miejscu, ale nie poddaje się;).
Chciałbym zrealizować komunikację pomiędzy aplikacją napisaną w C# a stm32 Discovery . Mam w aplikacji 4 przyciski . Każdy wysyła coś innego do stm32 . Oto kod z Coocoxa [syntax=cpp] #include <stdio.h> #include "stm32f4_discovery.h" #include "usbd_cdc_vcp.h" /* Private macro */ /* Private variables */ uint32_t button_sts; __ALIGN_BEGIN USB_OTG_CORE_HANDLE...
No i tak działa - sam RTOS Dodano po 35 następnie dodałem w mainie wywołanie: ETH_BSP_Config(); System działa - wykonuje się zadanie Task_Main, potem dodaje wywołanie: LwIP_Init(); i powtórka zadanie Task_Main nie wykonuje się. Z programem ląduję w : void HardFault_Handler(void) { /* Go to infinite loop when Hard Fault exception occurs */ while (1)...
Witam, Kiedyś działało mi bez problemu jedno zadanie w freeRTOS, jednak teraz mam problem gdy próbuję utworzyć dwa zadania. Gdy debuguje program to zatrzymuje się na vTaskStartScheduler(); Co to może być ? Mój main to: [syntax=c] #include "stm32f4xx.h" #include "FreeRTOS.h" #include "task.h" #include "math.h" #include "stdio.h" #include "myusart.h"...
Trochę zmieniłem kod i pomiar zaczął działać jednak jest coś nie tak gdyż dzielony wynik przez /58 powinien dać mi odległość w centymetrach. Mam obiekt ustawiony dokładnie na 15 cm ale wyniki uzyskuję następujące: 67 $ 67 $ 67 $ Co robię źle? [syntax=c]#include "main.h" #include "stdio.h" __IO uint16_t ADC1ConvertedVoltage = 0, calibration_value = 0;...
Aby było prościej to zrezygnujmy z DMA. Przy zwykłym wysyłaniu stringa efekt jest taki sam. Wysyłam tak: GCC HOME: C:\Program Files (x86)\GNU Tools ARM Embedded\4.9 2014q4\bin compile: [mkdir] Skipping C:\CooCox\CoIDE\workspace\DMA\dma\De... because it already exists. [mkdir] Skipping C:\CooCox\CoIDE\workspace\DMA\dma\De...
Edit: DMA nie działało bowłączałem DMA2 a nie DMA1. Napiszę jak dalej pójdzie :] Cześć, mam pewne problemy z I2C, bazowałem na zmodyfikowanym kodzie od ST (jak mnie pamięć nie myli) najpierw używałem samych przerwań na najwyższym priorytecie jak ST przykazało, niestety od czasu do czasu zdarzało się że RTOS wyłączał wszystkie przerwania i przy odbiorze...
jest mały problem uruchomiłem wszystko jednak system się zawiesza dioda się zapala uruchamia się wyświetlacz i usart wszystko zawiesza :/ main.c [syntax=c]/*****************************... (c)*************************************... ** ** http://www.powermcu.com ** **--------------File Info------------------------------------...
Niestety po dodaniu tych ustawień nie wgrywa się nowy soft z karty. Bez tych ustawień udaje się wgrać lecz trzeba zresetować zasilanie. Co ciekawe, tylko jeden program udało mi się skompilować który działa po wgraniu, reszta nie chce. W linkerze ustawiam wartość IROM1 na 0x08002000 oraz zmniejszyłem rozmiar dostępnej pamięci z 0x00040000 na 0x0003E000...
Witam, Mam jeden z dwóch często występujących problemów. Nie wiem czy to wina konstrukcji czy kodu. Z napięcia około ~12V mam zrobiony dzielnik napięcia (4K7 i 8K) tak, że na wyjściu mam około 2.44V. Po wgraniu kodu otrzymuje następujące wyniki: 2715 $ 2723 $ 2721 $ 2718 $ 2717 $ 2715 $ Jak widać, rozbieżność jest w granicy moich oczekiwań jak na rezystory...
Witam, Od jakiegoś czasu męczę się z biblioteką stemWin i mam z nią problem. Kod mojego programu działał z freeRTOS i obsługą wyświetlacza z sterownikiem SSD1963 po FSMC. Gdzie drzewo projektu wyglądało: http://obrazki.elektroda.pl/5131657900_1... A kod to: http://obrazki.elektroda.pl/9563310500_1... Niby nie mam żadnych...
Wydaje mi się, że zwykła kolejka FIFO spełni swoje zadanie. Kiedyś napisałem coś takiego: fqueue.h [syntax=c] #include <stdint.h> #include <stdbool.h> /**(at)briefWykonuje inkrementacje modulo. * (at)param__val liczba do inkrementacji * (at)param__mod modulo inkrementacji*/ #define INCREMENT_CYCLIC(__val, __mod)do { \ __val =(__val) <...
Cześć, Próbuję się skomunikować pomiędzy RPi i stm32f4. Na RPi korzystam z biblioteki bcm2835 a na stm32f4 z HAL. Być może nie do końca rozumiem zasadę działania SPI i sta te problemy. RPi jest masterem i co 1000ms wysyła dane w postaci tablicy o rozmiarze równym 4 elementy. Te dane są w poprawny sposób odbierane na stm32f4. Na stm32f4 korzystam z DMA,...
I kontynuuję temat. Na razie kod taki: Czyli coś jest nie tak z wykrywaniem kolizji nadal... A moze prosty algorytm wektorowy - mniej wiecej tak z kolizjami radza sobie nowsze gry... [syntax=c] #include <stdio.h> #include <assert.h> #include <math.h> #include <SDL/SDL.h> #include <SDL/SDL_gfxPrimitives.h> typedef struct...
Moje zdanie jest wręcz przeciwne. Jeśli znasz C to potrzebujesz tylko datasheet/user guide. Wiedzą stamtąd zastępujesz stdio. I tyle plus zdrowy rozsądek i podstawy elektroniki. Albert
Dzień dobry! Poniżej kawałek kodu, trochę nie ociosany, co prawda, ale może rzuci jakieś światło na problem. [syntax=c] #include <stdio.h> #include <string.h> #include "stm32f4xx.h" #include "FreeRTOS.h" #include "task.h" #include "timers.h" #include "semphr.h" #include "misc.h" /* moje */ #include "sine.h" #include "timer.h" #include "leds.h"...
Standardowa bibliteka stdio Takiej biblioteki nie ma. Jest plik nagłówkowy stdio.h. Proponuję poznać różnicę miedzy biblioteką a plikiem .h.
Proszę kod bez dodatkowych pustych lini. biblioteka [syntax=c] /* Includes ----------------------------------------... #include "TC.h" #include "systick.h" #include "GLCD.h" #include <stdio.h>; /***************************************... * Function Name : MAX31855_SPI_Init * Description...
Nie wiem o co chodzi, support STM mi powiedział, żebym wgrał kod do ramu oraz wektor przerwań. Cały problem od początku: Zadanie programu jest następujące: ze sterownika sczytuję wartości enkoderów i zapisuję je do pamięci flash. (powinno to być wykonywane timerem co 10ms). Następnie odczytuję te wartości z flasha w celu odtworzenia ruchu i odpowiednie...
Witam mam taki problem, otóż mój STM32F4 bardzo dziwnie się zachowuje. Mój program ma odczytywać z 3 różnych czujników przez I2C dane i przeliczać je. I2C zrealizowane jest na przerwaniach (z najwyższym priorytetem), dodatkowo używam timera 2, by odmierzał czas. Oto kod: [syntax=c]#include "stm32f4xx.h" #include "stm32f4xx_conf.h" #include <stdio.h>...
Najlepszego w Nowym Roku i w następnch (rokach też). Proszęż uprzejmież : [syntax=c] #ifndef NOUVOTON_SD_CARD_H_INCLUDED #define NOUVOTON_SD_CARD_H_INCLUDED // #include "NouvotonSDCard.h" #define __IO volatile typedef struct { __IO uint8_t CSDStruct; /* CSD structure */ __IO uint8_t SysSpecVersion; /* System specification version */ __IO uint8_t Reserved1;...
Pewnie się "o dziwo kompiluje", bo nie masz dołączonego nagłówka stdio.h Tak czy siak: - za mały stos - stos nie wyrównany do 8 - za mało pamięci na stertę to trzy przyczyny które odpowiadają za 99% problemów. Aha - no i doprecyzuj, czy układ się sypie PRZED czy PO sprintf(), bo nie do końca jest to jasne. Kolejna sprawa - istnieje pewna niewielka szansa,...
Witam. Próbuję odpalić program UART na STM32 – odbieranie danych z kursu. W kodzie nie mam żadnych błędów, ale po naciśnięciu klawiszy nic się na terminalu nie wyświetla. Gdzie może być problem? Używam Tera Term, przy wysyłaniu ciągu bajtów przez UART wszystko działało. Próbowałem wcisnąć a i enter, ale nic to nie dało. USART_BaudRate = 115200...
dlaczego nie połączysz go z PC za pomocą USB Niestety, ale USB wykorzystuję w innym celu. Co do kodera - znalazłem coś takiego w internecie: [syntax=c]//1999 Cristi Cuturicu #include "Definicje_sprzet.h" //#pragma hdrstop #include <stdio.h> #include <stdlib.h> #include <string.h> #include "GPIO_procedury.h" #include "Katalogi_SD.h"...
Program działa, ledy się świecą. Oto kody: stm32f4_discovery_lcd.c : [syntax=c] #include "stm32f4xx.h" #include "stm32f4_discovery.h" #include "stm32f4_discovery_lcd.h" #include "fonts.c" /** (at)addtogroup Utilities * (at){ */ /** (at)addtogroup STM32F4_DISCOVERY * (at){ */ /** (at)defgroup stm32f4_discovery_LCD * (at)brief This file includes the LCD...
Metoda z memcpy jest prostsza, z unią nie poszłoby mi tak szybko - musze najpierw troche poczytać i 'zalapać' jak to w praktyce stosować. Nie wiem dlaczego tak sądzisz?: [syntax=c]#include <inttypes.h> #include <stdio.h> typedef union { uint8_t B[4]; float F; } FB_t; int main() { FB_t liczba; liczba.F = 1.24; printf("konwersja %f = %d %d...
Uruchomiłem poniższy kod na CubeIDE na płytce z mikrokontrolerem F407VET i przerwanie od DMA ładnie tu działa. Z F030 muszę niestety jeszcze powalczyć. Zauważyłem, że jak nie dodałem warunku while((SPI1->SR & SPI_SR_BSY) == 0) obraz był przekoszony, czyli były błędy w transmisji. https://obrazki.elektroda.pl/1742074200_...
Zmodyfikowałem nieznacznie kod: [syntax=c]#include "main.h" #include<string.h> #include <stdio.h> UART_HandleTypeDef huart1; //tu jest podłączony modem UART_HandleTypeDef huart6; //tu jest podłączony kowerter uart<--->usb DMA_HandleTypeDef hdma_usart1_rx; DMA_HandleTypeDef hdma_usart1_tx; DMA_HandleTypeDef hdma_usart6_rx; DMA_HandleTypeDef...
Witam To mój pierwszy ARM, niestety jak na razie nawet nie mogę zmienić poprawnie stanu na pinie [syntax=c]#include <stdio.h> #include <stdlib.h> #include "diag/Trace.h" #include "stm32f10x.h" #include "stm32f10x_gpio.h" #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wunused-parameter" #pragma GCC diagnostic ignored "-Wmissing-declarations"...
Udało się. Skrypt linkera skopiowałem z przykładu z diodami. Musiałem pozmieniać tylko kilka zmiennych w moim pliku startupa. Udało mi się odpalić moją funkcje printf, ale z 10k kodu zrobiło mi się 32k :| Trochę przesada. Mója funkcja printf wygląda następująco: #include <stdarg.h> #include <stdio.h> #include "lcd.h" int _printf(const...
Koledzy. W tych ARM-ach stawiam pierwsze kroki, więc proszę mi wybaczyć lamerstwo, jeśli mi się zdarzy. Posiadam płytkę HY-miniSTM32 z wyświetlaczem HY32D i procesorem STM32F103VCT6. Używam środowiska CoIDE w wersji najnowszej, czyli 1.7.5 i toolchain GNU Tools ARM Embedded\4.7 2013q3 Ściągnąłem i otworzyłem pod CoIDE projekt glcd, umieszczony kilka...
Witam, Program jak poniżej w debuggerze zaiwesza się już na lini f_open. W momencie gdy zakomentuje linie z buforem BYTE buffer[256] program rusza i otwiera plik. Również gdy zmniejsze rozmiar tablicy np do 20 to program też przechodzi dalej i fresult zwraca FR_OK. Czym to może być spowodowane ? [syntax=c]#include "stm32f10x.h" #include "stm32f10x_gpio.h"...
Naprawdę proponuje na początek coś bardziej przyjaznego początkującym (bo po pytaniach sądząc do nich się zaliczasz). Oczywiście zaraz grko stwierdzi że dla początkujących nie ma nic lepszego niż pisanie makefile-ów i skryptów linkera "z palca", ale jednak lepiej mieć przyjemność z programowania, niż nieprzyjemność z konfigurowania czegoś czego się...
Tak wygląda cały kod (main.c), może być w nim trochę śmieci ale próbowałem wielu kombinacji różnych rzeczy i są tutaj dopóki nie zacznie to działać : [syntax=c] #include <stm32f4xx.h> #include "LCD.h" #include <stdio.h> #include "stm32f4xx_dma.h" #include "MT9D111.h" #include "PeripheralsConfig.h" #define DCMI_DR_ADDRESS 0x50050028 static...
Przydatne MACRA do zarządzania wieloma bitami naraz: [syntax=c]//https://stackoverflow.com/qu... #include <stdint.h> typedef __uint32_t uint; //======================================... #define STRINGIZE(arg) #arg #define...
Cześć, skonfigurowałem DMA i 2 UARTY (właściwie jeden USART, jeden UART), tak żeby odbierać dane z GPSa na UART4 i poprzez DMA przesyłać dane na stringa, a następnie wysyłać do putty`ego przez USART2. Na pewno dobrze skonfigurowałem UARTy, dane odbieram, natomiast DMA nie działa. Pewnie popełniłem błąd gdzieś w konfiguracji, ale porównywałem ją z różnymi...
50 kB na taki projekt to przecież nie jest jakoś specjalnie dużo. uyheeyeyyyyy, nie? 24kb na biblioteki (c) wydaje mi się dość sporo... wynik takiej oto komendy - `arm-none-eabi-nm -ClS --radix=d --size-sort tutaj-nazwa-twojego-pliku.elf` To bardzo fajna komenda, wklejam końcówkę bo Elektroda nie puszcza: [syntax=bash]536876876 00000001 B Appli_state/home/maciej/dron2/output//.....
Cześć, Czy spotkał się ktoś z takim "dziwnym" wyjściem cyfrowym w STM32L0 albo jakimkolwiek innym ? 816422 816423 Jest to wyjście z PWM'a, przepuszczone jeszcze dodatkowo przez komparator. Zafalowanie występuje przy każdym przełączeniu. Gdyby to były kwestie ns, us to ok. To trwa ~10ms (!!). [syntax=c] #include <stdio.h> #include <stdlib.h>...
[syntax=c] #include <stdio.h> #include <stdlib.h> #include <stdint.h> #define ROZMIAR_TAB 128 #define BASE_ADDRESS 0x080000 /* run this program using the console pauser or add your own getch, system("pause") or input loop */ unsigned char data[ROZMIAR_TAB] = {0}; int i, addr = 0; uint32_t tmp = 0; void BOOT_Save_32B(uint32_t address,...
Witam, Mój komputer był już tak powolny, że byłem zmuszony przywrócić system, niestety... Teraz już komputer śmiga aż miło, ale niestety nie wszystko śmiga :not: Zainstalowałem, tak jak uprzednio (przed kilkoma laty) eclipse, bibliotekę HAL (czyli cały pakiet SW4STM32) i zintegrowany CubeMX. Niestety moje projekty nie kompilują się poprawnie. Wyskakuje...
Witam! Napisałem taki oto kod... w teorii powinien zmieniać nazwę urządzenie BT, ale nie zmienia ;) Komendę kończę zwrotem "\r" ponieważ tak jest napisane na stronie Microchipa: "A variety of universal asynchronous receiver/transmitter (UART) commands are used to control and configure the RN4870 module. All commands contain one, two or three case-insensitive...
Dobra, poprawiłem to. Nie włączam przerwań. Dobrze konfiguruję UARTa? Na terminalu to powinno automatycznie odbierać? [syntax=c]/* Includes */ #include <stddef.h> #include <stdio.h> #include "stm32l1xx.h" //defined USE_STM32L_DISCOVERY #include "discover_board.h" #include "stm32l_discovery_lcd.h" /* Private typedef */ /* Private define */...
Dzień dobry. Chcę przerobić program służący do pomiaru odległości z czujnika HC-SR04 z std na hal.Problem polega na tym że jeśli mam timer TYLKO z skonfigurowanym kanałem pwm służącym do aktywacji czujnika, czujnik normalnie się aktywuję i zwraca sygnał echo (im większa odległość tym dłuższy stan wysoki, sprawdzałem diodą), po dodaniu (analogicznie...
Witam wszystkich, mam następujący problem: próbuję odtworzyć plik audio (wav) na odtwarzaczu VS1003B (rys. 1). Korzystałem z przykładowego firmware'u ze strony producenta, plik: "vs1003an_playrec.zip". Niestety po otworzeniu pliku wavz karty sd i wrzuceniu do funkcji VS1003PlayFile następuje hard fault (rys.2). Inicjalizacja modułu przebiega prawidłowo....
Witam. Od dwóch dni próbuję odebrać dane z komputera na procesor. Próbowałem wysłać liczbę np: "11" odebrać ją na procesorze, dodać do niej liczbę np:"1" i ponownie wysłać na terminal (używam Realterm). Problem w tym, że nie potrafię odebrać danych z komputera. Zepsuty kabel ani układ nie wchodzi w grę bo jest echo po zwarciu maxa232 na pinach 11 i...
Nie używam przerwań, nie inicjuje NVIC, generalnie program jest prosty jak konstrukcja cepa (ale i tak coś zwaliłem :), i wiem że nie robi się tak opóźnień w programie :) #include "stm32f10x_conf.h" #include <stdio.h> void RCC_Conf(void); //void NVIC_Conf(void); void GPIO_Conf(void); void delay_ms(u16);...
Witam Mam problem z FreeRTOS'em. Nie widzę błędu w kodzie, mam nadzieje ze jakiś kolega znajdzie problem w moim kodzie. Przyznaje się ze zaczynam zabawę s RTOS. Poniżej kod. [syntax=c] #include "misc.h" #include "stdio.h" #include <stm32l1xx_gpio.h> #include <stm32l1xx_rcc.h> #include <stm32l1xx_flash.h> #include "discover_board.h"...
Zmieniłem tą konfigurację pinów w GPIO. Tylko teraz w ogóle nie spełnia mi warunku: [syntax=c]while(SPI_I2S_GetFlagStatus(SP... SPI_I2S_FLAG_RXNE) == RESET);[/syntax] A tu cały kod poprawiony. Niestety dalej nie działa. :( Jakieś jeszcze pomysły co może być nie tak? [syntax=c]/* Includes */ #include <stddef.h> #include <stdio.h> #include...
Hej. Jestem bardzo świeży w temacie mikrokontrolerów i od razu mam problem z taką błahostką jak odczyt danych z czujnika DHT11. Moje urządzenie to STM32L152RBT6, korzystam z znienawidzonych (sic!) tutaj bibliotek STM32L1xx_StdPeriph_Driver. Póki co chcę ich używać. Nie mam w zwyczaju pisać na żadnych forach ponieważ wolę wcześniej poszukać jednak tutaj...
Witam! Mam problem z uruchomieniem modułów radiowych RFM12 pod STM32. Uruchomiłem je bez problemu na ATmegach8 korzystając z funkcji opisanych w [url=http://www.elektroda.pl/rtvforum/vi... poście. Jest to programowy SPI i przepisałem funkcje od nadajnika tworząc coś takiego: [syntax=c] #include "stm32f10x.h" #include "GLCD.h"...
Zaczynam przygodę z STM32 i na początku już schody z którymi nie mogę sobie poradzić. Mam zainstalowane Eclipse jak i Sourcery 4.7.3, ściągnąłem przykładowy projekt z strony Freddiego do mrugania diodą i tu kompiluje się bez problemu. Lecz nie bardzo leży mi ten przykład (bez obrazy). Lubię mieć wszystko poukładane a w tym przykładzie wszystko jakoś...
stm32 f103rb ssd1963 stm32 stm32 adres
rezystancja oscyloskopu laptop lenovo ładowanie piece ekogroszek ustawienia
Wymiana wentylatora w płycie indukcyjnej INDUCTION YTUBE LDM SMX 8cs: Dane techniczne i zastosowania