Na schemacie STM32F4 Discovery (dokument DM00039084, strona 39) ten układ - STMPS2141STR do wyprowadzenia nr 1 (IN) ma podłączone +5V. Musi być zasilony właśnie z 5V, żeby w trybie Host możliwa była współpraca z urządzeniami zasilanymi z portu USB (tzw. "bus-powered"). Układ STMPS2141STR jest tylko kluczem/switchem i nie podwyższa napięcia. OTG_FS_SOF...
0. Skasuj flagi TCIE, HTIE, TEIE, DMEIE w rejestrze DMA_SxCR lub odpowiednim DMA_xIFCR. 1. Ustaw CCR1_EN w odpowiednim DMA_SxCR. Kolejna transmisja powinna zostać rozpoczęta. Poszczególne strumienie pozostają w ostatniej konfiguracji, łącznie z adresami.
Witam, w tym temacie http://www.elektroda.pl/rtvforum/viewtop... opisałem partyzanckie podejście - gdy się nad nim męczyłem zacząłem czytać o DMA. Pytanie: czy jest możliwe z użyciem wbudowanej w STM32 jednostki DMA zrealizowanie: weź dwa strumienie danych wejściowych z USARTów i wyślij trzecim?
A teraz pytanie - wiesz co to buforowanie strumieni? Jeśli nie wiesz, to proponuję wywołać PO Twoim fprintf() do wyświetlacza funkcje fflush(). I teraz pytanie - czy gdzieś jest kompletna lista funkcji które nie są zaimplementowane w Bare Metal ? Wszystkie są zaimplementowane. Uwierz mi że to wszystko działa tak jak trzeba - używam osobiście do obsługi...
Witam, mam dwa niewielkie problemy ;) pierwszy to wykorzystanie funkcji printf i pochodnych do wypisywania danych na USART/LCD/cokolwiek innego ;] co muszę zrobić, żebym mógł tak go używać?;] czy można stworzyć po prostu strumień do którego wpisywałbym dane za pomocą fprintf jak to było np. w AVR-GCC? :P czyli np. fprintf(&LCD, "Hello World"); czy...
Poza tym nie trzeba wcale mieć timerów ani zadnego supervisora, jeśli masz gwarancję, że dane przetworzysz szybciej, niz przychodzą. A parser i obróbka może się mielić najzwyklej w pętli głównej. Ja tutaj patrzę od razu pod kątem podpięcia takiego odbioru pod strumienie (czyli FILE, scanf() itd.), które z racji swojej asynchroniczności generalnie potrzebują...
Tylko co do rzeczy ma semihosting? P.S. Oczywiście powinieneś używać sscanf(), bo chcesz przerabiać gotowy string, a nie czytać ze strumienia FILE. No chyba że chcesz [; 4\/3!!
Moim zdaniem użycie tutaj TCP jest błędem i powinieneś użyć UDP. Kto o zdrowych zmysłach otwiera połączenie TCP "forever"? P.S. Jakie jest "sizeof(Dev2PcState)" ? Jaka jest długość bufora ramki TCP? Co z retransmisją pakietów niedostarczonych? Tylko że TCP daje mi to że mam potwierdzenia(ack), a UDP nie działa tak że mogę coś zgubić ? Połączenie otwieram...
Pytanie która z definicji działania funkcji fseek jest prawidłowa ? W tym przypadku mamy do czynienia ze strumieniem znakowym, zatem: Pierwszy opis: The behavior of lseek() on devices which are incapable of seeking is implementation-defined. The value of the file offset associated with such a device is undefined. Drugi opis: On Linux, using lseek()...
Witam ! Czy ktoś może mi w skrócie wyjaśnić na czym polega tryb "DMA_Mode_Circular" w procesorach STM32 ? Potrzebuję zrealizować coś w rodzaju FIFO na ciągłym strumieniu danych przesyłanych z DCMI.
Noo a może jeszcze warto policzyć ile procesor będzie miał czasu pomiędzy klatkami, żeby ją (skompresować?) obrobić, popaczkować, i wysłać do stosu protokołu komunikacji z tym wifi albo innym cudem. Zaden popularny mikrokontroler, włączając w to nawet LPC43xx(at)200MHz, nie wydoli obrabiać strumienia danych 50MB/s...
Czy sam stm32 bezpośrednio odbierający sygnał kamery może obsłużyć kamerkę i następnie wysłać informacje do komputera gdzie zostanie to wgrane na kartę pamięci jako film i czy można wybrać format np h.264 ? czy jest wybór kodeka możliwy. Niestety nie ma opcji. STM32 nie skompresuje do h.264. A bez kompresji to nawet HD nie prześlesz strumieniem do...
Skoro jest tak jak mowisz to ten menadzer w sumie potrzebny nie jest, jesli zrobię ISRa extern "C" ktory będzie 'friend' klasy ktora tego przerwania potrzebuje. Jednak z jakiegos powodu pół roku temu to mi nie działało a kombinowałem również w taki sposob jak opisujesz. W wolnej chwili sprawdze to na spokojnie jeszcze raz ;] No widzisz, przed chwilą...
Nie widzę nic niewłaściwego w krótkiej obsłudze przerwania z częstotliwością 80 kHz. Miewam przerwania do 400 kHz Nie twierdzę, że się nie da. Jednak mam powody, aby oszczędzać takty: strumienie danych docelowo są dwa, układ jest zasilany bateryjnie i wolniejszy zegar jest wskazany, będzie RTOS mający sekcje krytyczne, etc. HAL i tak nie używam. Nie...
Jeżeli masz rozsądne prędkości transmisji (np. 115200) i kod, który nie wymaga dużej mocy obliczeniowej, to raczej nic nie trzeba kombinować. Procek, który idzie na 48MHz, albo jeszcze lepiej na 72MHz, da sobie radę. No chyba, że chcesz mieś strumienie naprawdę szybkie (np. 1Mbit/s), albo bardzo intensywnie przetwarzać odbierane dane, wtedy mogłoby...
W koncu mogę wyrazić swój żal do ST!!... W STM32F1 peryferial I2C jest dokumentnie spie-przo-ny w samym krzemie. Ponad 2 tygodnie walczyłem z stabilnością odczytu z dwóch akcelerometrów i ADC wiszących na kabelku. Ciężko we znaki dał mi się bug powodujący, ze po "misplaced stop" (więc de facto byle durne zakłócenie linii), cały peryferial wisi az do...
Dziękuję za odpowiedź. Sprawdziłem jeszcze obie sekwencje, niestety bez skutku. Tak samo nic się nie pojawia gdy po ustawieni SPI, obu strumieni ustawiam RXDMAEN i TXDMAEN a potem SPE, jak również w innej kolejności zakończenia czyli najpierw SPE a potem RXDMAEN i TXDMAEN. Testowałem też rozbijanie ustawiania SPI, czyli najpierw RXDMAEN , potem strumień...
Tereny pustynne w Chinach zajmują 11,2 proc. powierzchni kraju i wynoszą ponad 120 tys. km2. W porównaniu z 2005 r. powiększyły się o 7,4 proc. --------Główną przyczyną są długoletnie susze, ale w dużej mierze przyczynia się do tego bezmyślna eksploatacja zasobów leśnych.----- Dane te podał chiński Państwowy Urząd Leśnictwa na podstawie badań w ośmiu,...
https://obrazki.elektroda.pl/5099522300_... Jakiś czas temu zrealizowałem pewną konstrukcję, jaką jest kamera Pan Tilt na Raspberry Pi. Z racji tego, że jest to forum traktujące o elektronice skupię się właśnie na takich aspektach. Zanim zacznę opiszę architekturę systemu, czyli co z czym się łączy i jakie komponenty wchodzą w jego...
Powyższy przykład jest właśnie implementacją 'sensownego' mechanizmu odbioru danych przez DMA. Procek tak czy siak musi parsować kazdy odebrany bajt, ale po co ma - co bajt - marnować 12 cykli na wejście do ISRa? Gdy nadawca przerwie strumien, nie stanie się nic. Jak rozsynchronizuje - stanie się to samo - nic . Zauwaz, ze DMA pracuje w trybie circular,...
Sprawdzałem, wychodzi na to że te kanały a raczej 'Strumienie' jak to się nazywa w F4 są właśnie do tych konkretnych kanałów timera, co zresztą CubeMX sam mi 'zaproponowal' podczas wyklikiwania konfiguracji. Wg mnie na 80-90% problem leży gdzieś w konfiguracji DMA ponieważ sam TIM1 działa dobrze i generuje komplementarny PWM. Zależy mi jednak na DMA...
Ta suma CRC nie jest "internetowa". Żeby się zgadzało z CRC liczoną przez programy popularnie zamieszczone w internecie musisz odwrócić strumień bitów. Ja używam makra z Keil'a CRC->DR=__rbit(0x12345678) a na końcu (po obliczeniu CRC za ileś słów) CRC32=(__rbit(CRC->DR))^0xFFFFFFFF i już. Poczytaj na forum ST. Dużo tego jest. Natomiast dlaczego tak...
Wielkie dzięki za pomoc, zdaje się działać :D DMA przenosi tutaj rozdzielczość 640x480, może się komuś przyda : Czy tej metody można użyć do "pixel portu" Analog Devices (chip [url=https://www.digchip.com/datasheets/... Jest to 20 pinów, używanych różnie (np. tylko ostatnie 8), taktowanych 12-110MHz, zegarem...
Raczej nie w PIC32 - errata która potrafi osiągnąć rozmiar datasheeta (przynajmniej mnie) istotnie odstrasza. Egzotyczne architektury typu ColdFire czy SuperH Renesasa są raczej niestrawne dla amatorów i półprofesjonalistów, i szczerze mówiąc, nie mają nic ciekawego na codzien potrzebnego, co by ARMy nie miały. Jedna istotna zaleta co do Renesasa to,...
Dzięki Panowie. O taką odpowiedź mi chodziło. Użycie fdopen() wydaje się dla mnie najbardziej sensowne. Niebawem przetestuję i dam znać czy działa. Zrobię dodatkowe dwa fdopen i będę miał 4 strumienie w systemie: stdout, stderr i 2 otwarte przeze mnie. I świat stanie się piękny ;)
Czy kiedykolwiek zdarzyło Ci się użyć terminu UART tylko po to, by zostać poprawionym przez innego inżyniera, że nie jest to UART, ale USART? W pewnych przypadkach oba te terminy są zamienne, ale w wielu innych używanie ich wymiennie jest niepoprawne. Przyjrzyjmy się, czym dokładnie są USART i UART, a także jakie są pomiędzy nimi główne różnice. Większość...
Jest to możliwe - to że dany kanał jest przyporządkowany - przykładowo - do Timera, nie oznacza że może on wysyłać/odbierać dane tylko do/z timera. Niemniej jednak jeśli chcesz wysyłać dane do UART przez kanał DMA wyzwalany normalnie timerem, to musisz coś wymyślić, żeby nie przepełnić bufora - czyli możesz wysłać tylko jeden bajt i jakoś poczekać...
W moim przypadku to wygląda tak, że mam wypracowaną własną warstwę abstrakcji sprzętu. Przykładowo do SPI jest maszyna stanów co mieli strumień bajtów danych + nagłówek z kolejek (typu FIFO jako bufor cykliczny). Pod to callbacki do sprzętu (open, write, read, close, ioctl), i rybka czy w środku jest if (queue) wyslij czy na przerwaniach. Nagłówek zawiera...
Mam STM32F4 DISC1 (z programem napisanym w C#.NETMF), który odbiera dane z aplikacji Windowsa (napisanej w C#.NET). Aplikacja wysyła zadany przebieg czasowy a STM32 go odczytuje i zapisuje w tablicy. Następnie zgodnie z zadanym przebiegiem czasowym ma sterować procesem. STM32 jest widziany jako wirtualny port COM. Prędkość transmisji - próbowałem 9600...
Witam, Nie znalazłem na forum żadnej informacji w jaki sposób można podpiąć 2 kamery do procesora i złączyć je w 1 strumień. Generalnie widzę to w taki sposób aby zastosować "jakiś interfejs" aby złożył 2 sygnały w jeden (np obraz na górze to kamera 1 obraz na dole to kamera 2) i wejść nim na interfejs DCMI kontrolera. Ale pytanie czy to się da zrobić,...
Kolega felekfala chce prawdopodobnie zastosować sterowanie wektorowe, które to wymaga wielu obliczeń, estymatory strumienia, transformacja mierzonych prądów do innych układów współrzędnych, regulatory PI, filtry cyfrowe NOI... a to wymaga szybkich obliczeń ponieważ okres pętli sterowania jest równy np. 100us.
Dlatego właśnie każdy z nas pisze Ci tu o dwóch buforach na dwa komplety próbek, albo o jednym o podwójnej pojemności - czytaj!!! Timer inicjuje przetwarzanie, a potem kolejne przerwanie timera lub przerwanie od zakończenia transmisji DMA z ADC inicjuje transmisję świeżych pomiarów przez UART. W tym czasie ADC już robi następne pomiary do drugiego bufora....
(at)tadzik85 Jak to robisz dokładnie? (at)Freddie " | tee -" wiele tu nie da, bo powieli stdout, który awk i tak wytnie. Można ew. przekierować jeden strumień na stderr i jego awkować, ale mało to eleganckie.
Dalszy ciąg walk :-) Podłączyłem płytkę z DAC'em do STMF107, ale bez żadnej róznicy w działaniu - nadal to samo. Potem jednak przyszło mi do głowy, że karmienie I2S danymi z Timera może wnosić jakieś przesunięcia czasowe, itp... Przerzuciłem więc procedurę "karmiącą" do przerwania od I2S wyzwalanego bitem TXE. I jest poprawa - dźwięk jest już dużo bardziej...
https://obrazki.elektroda.pl/7656017200_... O komputerach jednopłytkowych czy stare komputery były lepsze od współczesnych platform rozwojowych i SBC? Nie lubię Arduino I to jest jak najbardziej prawda. Arduino to platforma, która miała dać łatwy dostęp do programowania elektroniki ludziom, którzy nie znają się ani na elektronice,...
Problem leży zapewne w odbiorze strumieni danych, a nie w ich nadawaniu - tam prawdopodobnie następuje gubienie danych. Twoje przerwanie DMa jest wzorcem, jak nie należy używać przerwań. Zamiast sprawdzać gdzieś indziej znacznik Datalink_DataSent_Flag możesz przecież równie dobrze sprawdzać znacznik sprzętowy zakończenia transmisji DMA - przerwanie...
Ja na samym początku przerzucam wektory przerwań na początek pamięci RAM. A później wstrzykuję swoją funkcję w miejsce oryginalnego wektora. Po rozmyślaniu na ten temat doszedłem do następujących wniosków. 1. Możliwość dynamicznej rejestracji przerwań (najlepiej w wysoce abstrakcyjny sposób, tak aby funkcje nie musiały być publiczne) byłaby z pewnością...
Mam nieprzyjemność pracować z tymi panelami. Tzn mam kupiony taki zestaw w wersji uruchomieniowej. Z poziomu filmu wszystko pięknie wygląda - niestety/stety wygląda to pięknie - ale dla programisty/projektanta programowanie tego jest drogą przez mękę. dokładnych wad nie pamiętam , bo rzuciłem to w szafę rok temu i nie mam zamiaru tego ponownie tykać...
O jakie konkretnie zestawienia ci chodzi (mam obydwie platformy więc można by zrobić takie porównanie). Średnio przy dekodowaniu strumieni mp3 jest szybszy do 3 razy (dla fixedpoint'ów). Przy filtrach FIR/IRR do 8 razy szybszy (zwykle waha się to w granicach 4-6 razy). Przy obliczeniach wektorowych/macierzowych około 2 razy. Ciężko o jakieś szczególne...
Nigdzie nie napisałem, że odbiorę ramkę CAN za pomocą UART'a i PCta. Ja robię konwersję "o strukurze" CAN->TJA->STM32->FTDI->PCET (miałem pod ręką gotową elektronikę). Natomiast sam układ FTDI można wprowadzić w tryb "BitBand". I za pomocą "układu" CAN->TJA->FTDI->PCET[DLL(FTDI)+aplikacja... (chyba, bo tego nie próbowałem) i przerzucić ramkę do PC'ta...
Co do STM32 to sprawa wygląda tak: -biblioteki do USB-a są na stronie ST -Stos TCP/IP jest na stronie ST ( lwIP TCP/IP stack ) ilość RAM-u na obsługę zależna jest od Ciebie i od kryteriów transmisji. -Polecam FREE RTOS-a, który jest darmowy, pełno przykładów na ten i nie tylko . Sam FreeRtos wydaje się być ciekawy. Trochę gorzej z obsługą TCP/IP. Biblioteka...
Bezpośrednie wywołanie funkcji termf ("double - %d", 1.35); powoduje błędne wyświetlenie. Bo parametr %d nie określa liczby zmiennoprzecinkowej. Trochę pobawiłem się biblioteką (STM32) i jak pisałem wyżej, funkcja termf nie działa prawidłowo gdy brakuje w jej wywołaniu wskaźnika do tablicy (nie wiem dlaczego) Trzeba go dodać: int termf (char *ptr,const...
Mam taki temat - potrzebuję zrobić urządzenie które będzie pobierać dane poprzez np. łącze RS i zapisywać je na pendrivie. Osobiście przychodzi mi na myśl użycie np. płytki Nucleo (powiedzmy F401) bo ma host USB i zrobienie tego w mbed (jeśli uwarunkowania pozwolą). Tu przykład realizacji obsługi pendrive, zapis i odczyt pliku: [url=https://developer.mbed.org/users/va...
Mam serwer webowy (HTTP) na STM32. Podpinam się do 8266 przez UART. Przy tym trybie pracy (+IPD) muszę buforować całą transmisję, bo przeglądarki internetowe generują jednocześnie wiele requestów ze stron internetowych na różnych kanałach. Co gorsza strumień danych ze strony 8622 jest mieszanką tych żądań. Skutkiem tego jest konieczność zarezerwowania...
Szanowny Panie Mechaniku. Ja tylko prostuję nieprawidłowości jakie Pan tutaj na forum wypisuje. Jednym z punktów regulaminu tego forum jest niewprowadzanie w błąd co Pan właśnie robi. Więc proszę nie zarzucać mi nieodpowiadania na pytania, kiedy samemu się pociska pierdoły. UART to 8 (no max 9) bit i żadna cudowna biblioteka tego nie ominie. Z tego...
(at)ElektrodaBot Myślę że koszty można zaniżyć jeśli: - zakupimy używana kosiarkę (nadająca się do przeróbki) do kwoty 500zł - zakupimy tańszy moduł GPS RTK + Stacja bazowa do wykonania w własnym zakresie (może taki: LC29H -- ponoć kosztuje 60USD - -czyli około 250zl) - zamiast drogich platform RPI wykorzystamy coś dla STM32 , ESP32 ?? Mała sugestia...
http://obrazki.elektroda.pl/2463034100_1... Witam wszystkich, Chciałbym tym razem przedstawić projekt gotowego radiomagnetofonu internetowego. Jest to rozwinięcie opublikowanego wcześniej na Elektrodzie małego odtwarzacza MP3. Radiomagnetofon umożliwia granie strumieni radiostacji internetowych, nagrywanie tych strumieni na kartę SD,...
https://obrazki.elektroda.pl/3252078300_... Poniższy artykuł przedstawia – krok po kroku – wykonanie niewielkiego, kieszonkowego oscyloskopu cyfrowego. Nie jest on tak dobry jak zwykły warsztatowy oscyloskop, ale z drugiej strony można zabrać go niemalże wszędzie. Poza tym – nie wszystkie projekty DIY muszą mieć sens....
Witam Chciałbym wykorzystać trzy strumienie DMA1. Strumień 3 wysyła dane przez USART do wyświetlacza 9 bajtów co 5 po załączeniu strumienia 6 strumień 5 przestaje działać (nie generuje 20kHz) , transmisja USART działa poprawnie. Czy kontroler DMA może obsłużyć tylko dwa strumienie ? Nie wiem czy to istotne ale strumienie 5 i 6 używają kanału 7. istotne...
Cześć Projektuje aktualnie układzik do cyfrowego przesyłania dźwięku (właściwie mowy więc wymagania nie są wygórowane). Napotkałem na problem i chciałbym się poradzić kogoś obeznanego w temacie. Mam wzmacniacz mikrofonowy taki jak na schemacie http://www.olimex.com/dev/pdf/ARM/LPC/LP... a sygnał dalej idzie na przetwornik ADC mikrokontrolera...
strumienie kamera strumienie kamery strumienie video
naprawa pilota peugeot wymiana sterownika pompy kbpc2510 mostek
Sprawdzanie diody: przewodzenie 650mV, zaporowe 3.66V, pojemność 10pF HP ZBook 15 wyłącza się po kilku sekundach - przyczyny i rozwiązania