(at)tmf - dziękuję za miłe słowa :) Właśnie takie było założenie co do grupy "docelowej". Myślę, że jeszcze długo ATmegi i ATtiny będą punktem startowym dla hobbystów ze względu na nawał informacji w Internecie i mocno zakorzeniony pogląd jakoby wszystko inne było drogie/trudne itd. W sumie chciałem, żeby w poradniku było trochę więcej nawiązań do...
http://obrazki.elektroda.pl/1208484300_1... Projekt OpenMV ma na celu stworzenie niedrogiego i łatwego w obsłudze modułu wizyjnego, który dałoby się oprogramowywać w języku Python. Docelowo OpenMV ma stać się "Arduino wśród modułów wizyjnych", jak opisuje autor przedstawiający aspiracje tego projektu. Realizacja projektu rozpoczęła...
Witam. Posiadam mikrokontroler STM32F429 na płytce 32F429IDISCOVERY. Napisałem obsługę wysyłania i odbierania znaków przez USART, jednak program nie pracuje. Program przedstawia się następująco: -Załączam taktowanie do układu USART2: -Konfiguruję piny D5 (Rx) i D6 (Tx) jako alternatywne: - Konfiguruję układ USART2 do pracy: - Piszę funkcję obsługującą...
Zacznij od zrobienia tego na pollingu, czyli w pętli while(1), bez przerwań, ale z poprawnym odczytywaniem flag TXE i RXNE przed zrobieniem czegokolwiek. Proponuje więc wrzucić do tej pętli coś takiego: [syntax=c]if ((USART3->SR & USART_SR_RXNE) != 0) { uint16_t x = USART3->DR; while((USART3->SR & USART_SR_TXE) == 0); USART3->DR = x; }[/syntax] Tym...
A to co? USART1->SR &= ~USART_SR_RXNE; Zacznij od UARTa bez przerwań, kiedy uruchomisz echo - zabierz się za przerwania.
To jest źle - zbędne: USART_ClearFlag(UART5, USART_IT_RXNE); .. ale błąd schował się chyba jednak gdzie indziej.
Nie jestem pewien czy dobrze zrozumiałem Twoją radę. Dołączyłem do projektu GUI pliki znajdujące się w projekcie czujnika, stworzyłem drzewo katalogów w Keilu tak aby było połączeniem drzew z obu projektów, dodałem w zakładce C/C++ adresy do plików nagłówkowych, po skompilowaniu zniknęły błędy związane z dołączaniem plików, ale pojawiło się mnóstwo...
Cześć, Na inżyniera robię robota kroczącego na 12 serwomechanizmach, 4 nogi, taki pająk. Aby to ładnie zakodować chcę zrobić klasę serwo, klasę noga, klasę robot z odpowiednimi metodami aby kod był przejrzysty i jasny. Problem jest następujący: Klasa serwo ogółem działa, kompiluje się idealnie, aczkolwiek przy próbie użycia jakiejkolwiek zmiennej procek...
Witam Dołączyłem do istniejącego kodu wygenerowanego przez TouchGFX pliki konfiguracji UART wygenerowane przez STM32CubeIDE i nie mogę zlinkować plików. Jest komunikat: TouchGFX/build/ST/STM32F429IDISCO/Core/S... In function `MX_UART5_Init': c:\TouchGFXProjects\MyApplication\Projec... undefined reference to `HAL_UART_Init'...
W ZL'u zrobiłem to tak: void GPIO_Conf(void) { RCC_APB2PeriphClockCmd(RCC_APB2Perip... | RCC_APB2Periph_USART1 | RCC_APB2Periph_AFIO, ENABLE); GPIO_InitTypeDef GPIO_InitStructure; GPIO_PinRemapConfig(GPIO_Remap_USART... ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6; // Tx GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;...
Byłem pewien że jest, ale jak spojrzałem to musiałem z USART'em pomylić (bo w nim jest). W sumie niema sensu aby był taki bit, ponieważ by działał w sumie identycznie jak BSY bo komunikację w obydwu kierunkach inicjuje tylko procesor. W USART może być sytuacja że nadchodzi jakaś informacja z zewnątrz a bufor wyjściowy jest wolny do którego już można...
Pierwsza i pewnie jedyna przyczyna to płytka Discovery. PA2 jest podłączone do wyjścia MEMSa: INT2 i jednocześnie ma być wyjściem TX. "Oba samce" ;) PA3 jest podłączone do TFT: B5 i ma być wejściem RX. Może zadziała, o ile nie używasz TFT. PD5 możesz użyć jako wyjścia TX i powinno działać bez problemu. PD6 jest podłączone do TFT: B2. Może zadziała,...
Czyli z taktowaniem mam problem. Próbuję zrobić tak jak tutaj http://stm32f4-discovery.com/2014/04/lib... U mnie jest: Core Clock = ((HSE_VALUE / PLL_M) * PLL_N) / PLL_P Niestety po takiej konfiguracji STM wariuje, nawet USART wysyła śmiecie. Jak prawidłowo skonfigurować...
Więc tak, to po kolei mam w zakładce Pinout : FREERTOS ADC1 ADC2 ADC3 CAN1 CAN2 CRC DAC DCMI DMA2D ETH FMC I2C1 I2C2 I2C3 I2S2 I2S3 IWDG LTDC RCC RNG RTC SAI1 SDIO SPI1 SPI2 SPI3 SPI4 SPI5 SPI6 SYS TIM1 TIM2 TIM3 TIM4 TIM5 TIM6 TIM7 TIM8 TIM9 TIM10 TIM11 TIM12 TIM13 TIM14 UART4 UART5 UART7 UART8 USART1 USART2 USART3 USART6 USB_OTG_FS USB_OTG_HS WWDG...
Witam serdecznie, Robię hexapoda 18xservo, wykorzystuję do tego niezależne kanały TIM2,3,4,5 i TIM12. Napotkałem problem z kanałem 2 i 3 dla TIM5, nie działa. Żeby nie wrzucać całego programu i nie zaburzać czytelności, przygotowałem mini aplikację testową dla TIM5 PWM, podobnie channel 1 i 4 działa, channel 2 i 3 nie działa. Czy dla pinów PA1 i PA2...
1. W jakim formacie oczekujesz danych ? Jeśli ma być to YUV to przy zasłoniętym obiektywie powinieneś otrzymać ciąg wartości zbliżonych do 0x00, 0x80, 0x00, 0x80, 0x00 .... Przy zasłoniętym obiektywie otrzymuje obrazy, podobne do poprzednich... czyli porozrzucane bez ładu piksele Jaką częstotliwość w rzeczywistości ma sygnał PCLK Gdy jutro będę miał...
Osobiście nie zastanawiałem się nad tym długo, szukałem zestawu który ma chyba wszystko na pokładzie: Ethernet, Can, RS232, USB-RS, 485, pamięci Flash, Sram, Kartę muzyczną, Usb Host OTG, LCD + dotyk, złącze na karty SD i wiele innych... W polsce ktoś sprzedaje RedDragon za ~350zł ja zamówiłem to w chinach przez ebay i zapłaciłem z presyłką ~180zł uważam...
Cały plik main. [syntax=c]/** ****************************************... * File Name : main.c * Description : Main program body ****************************************... * * COPYRIGHT(c) 2016 STMicroelectronics * * Redistribution and use in source and binary forms, with or without...
HAL to w zasadzie to samo co SPL. Jest przykłdem złego designu oprogramowania pod wieloma względami. Oto próbka absurdu: [syntax=c] pif = (USBH_InterfaceDescTypeDef *)0; pcfg = &phost->device.CfgDesc; if((pif->bInterfaceClass == 0xFF) &&(pif->bInterfaceSubClass == 0xFF) && (pif->bInterfaceProtocol == 0xFF)) { return 0xFF; } [/syntax] Przenoszenie kodu...
Witam, Próbuje skomunikować ze sobą STM32F4 z Arduino UNO po UARTcie. Skonfigurowałem UART1 i płytka komunikowała się bez problemu z Arduino. Lecz do mojego projektu potrzebna jest komunikacja przez UART2 (piny PA2-TX i PA3-RX), po skonfigurowaniu UART2 i podłączeniu do do Arduino nie mogę odczytać żadnych danych. Jeżeli podłącze UART1 z UART2 na płytce...
Na 99% nie. Można kombinować z auto-reload i transmisją jednego bajtu, o ile uda się przekonać DMA, że docelowy UART jest pamięcią, a nie peryferialem i o ile będziesz miał pewność, że nigdy dane nie będą równocześnie nadchodziły w takim tempie, żeby zapchać nadajnik. Czyli: nawet gdyby się udało, to jest to rozwiązanie wysoce niepewne i zawodne. Co...
Nie chce mi się oglądać kodu ale tu masz mój działający kod F446 dla usart5 - tak że musisz sobie parametry zmienić. Dowolne długości przesyła. a tu akurat zeruje CR i wszystkie flagi ale to niekonieczne generalnie. [syntax=c] if(DMA1 -> HISR & (DMA_HISR_TCIF7)) DMA1 -> HIFCR |= (DMA1 -> HISR & (DMA_HISR_DMEIF7 | DMA_HISR_FEIF7 | DMA_HISR_HTIF7 | DMA_HISR_TCIF7...
W CoIDE obsługa NVIC jest schowana w "misc.h" z Repozytorium. Taka logika ;) A gdybyś od razu napisał, że korzystasz z STM32F4Discovery, to nie musiałbyś się tak zastanawiać. Przecież na tej płytce linia TX jest na sztywno połączona z VBUS portu USB i wyjściem układu kontroli zasilania na tym porcie, a linia RX jest na sztywno spięta z ID. Jeżeli przypadkiem...
Cześć, Projekt zaraz będę konfigurował od początku. Fakt, podałem za mało danych, wybaczcie, skrajna nerwica mnie na to wzięła. Od początku: Używam SW4STM32, ale chciałbym od tego odejść mocno, bo za dużo automatów i za mało szczegółów, może dlatego, że nie potrafię tego wszystkiego ogarnąć. Kompilatora używałem poprzez naciśnięcie "build". W ustawieniach...
He, he, he... Patrz na to: while (1); Nic, co jest dalej, nie ma szans się wykonać, więc kompilator eliminuje zbędny kod. ...A ponadto masz błąd w inkrementacji wskaźnika. idx = (idx + 1) % BUFSIZE; - to najprostszy poprawny zapis tego, co masz zrobić, chociaż nie zawsze daje optymalny kod. hehe też zauważyłem, dzieki wielkie za pomoc BlueDraco, szkoda...
nie wgłębiając się wTwoj kod, w F4 masz 16 trybów alternate. Musisz mu powiedzieć jaki to tryb. np dla usarta3 Co tu jest nie tak ? To że nie czytasz dokumentacji - jest długa ale HAL nie zwalnia od znajomości procesora.
Ja zwykle w kwestii przerwań robię tak, że funkcja przerwania jest ustawiona jako friend klasy, a dzięki temu może ona odwoływać się do funkcji prywatnych. Pozostaje problem, że gdzieś trzeba tworzyć trzymać odnośnik do obiektu (można to zrobić w konstruktorze lub w jakiejś funkcji typu initialize() czy open() - trzeba sobie gdzieś na potrzeby tego...
Ok przepraszam tak szczerze jeszcze tydzien temu nie wiedziałem co to stm32 i dlatego troche robie takie gafy. Ale staram sie intensywnie uczyć i pisac samemu kazdy kod tylko ten nieszczesny uart mnie zagiął na amen już zmieniam. Pozdrawiam
Ale niby w tym co wyslales - projekt z cubeMX jest 1200 prędkość i konfiguracja w zasadzie taka sama.... ? Dodano po 56 Na stm32f103 dziala predkosc 1200 - testowalem.
Hej, dzieki za odpowiedź. Wklejam kod, powycinałem części odpowiedzialne za komunikację po rs232, żeby nie zaciemniać, myślę że nie mają wpływu na resztę kodu. suma_x to zmienna typu uint32_t [syntax=c]#include <stm32f4xx.h> #include <misc.h> // I recommend you have a look at these in the ST firmware folder #include <stm32f4xx_usart.h>...
Próbuję bawić się systemem FreeRTOS. Mam problem, gdy uruchomię tylko jedno zadanie led lub tx to wówczas one działają. Gdy próbuję uruchomić 2 zadania, nie działa nic. Próbowałem zmieniać rozmiar stosu, priorytety zadań i nic. [syntax=c]#include <stm32f4xx_usart.h> #include <misc.h> #include "stm32f401_discovery.h" #include "usart.h" #include...
Witam, Od pewnego czasu przestawiłem się z AVR na STM32, zbudowałem sobie proste ramię robota na 5 serv + sterownik Maestro od pololu, wszystko ładnie śmiga. Tydzień temu kupiłem sobie takie Gamepad: http://botland.com.pl/joystick/2560-game... . Chciałem za pomocą tego pada sterować ramieniem. I już na 1 kroku...
stm32f429 discovery interfejs stm32f429 stm32f429 disco
wymiana grzałki zawora nagrzewnica polonez przerywać kanał
adblu renault master adblu renault master
Błąd U1208 w Peugeot 3008 1.4 D4D - komunikacja CAN Opel Zafira A 2.0 DTI 2003 – odblokowanie pompy VP44, immobiliser, reset, kody błędów