Jest ok. Można to ew. tak zrobić, że wykorzystujesz przerwanie przepełnienia lub porównania licznika i w jego ISR korygujesz CNT. Są jeszcze enkodery z indeksem, dzięki temu masz absolutną pozycję enkodera. Ale to już w zależności od tego do czego wykorzystujesz enkoder.
witam! To niestety nic nie daje, bo właśnie o to chodzi aby podczas wykonywania przerwania od timer2(enkoder), gdy Timer0 się przepełni, procesor powinien zawiesić przerwanie (enkoder) i przejść do obsługi przerwaia od Timer0(czekaj).
W takim przypadku możesz w pozostałych funkcjach przerwań użyć atrybut ISR_BLOCK co spowoduje, że kompilator doda na ich początku rozkaz sei() i każde inne przerwanie będzie mogło przerwać takie przerwanie. Oczywiście wtedy ostrożnie musisz podchodzić do ilości wolnej pamięci RAM, bo w skrajnym przypadku stos może ją przepełnić.
Enkoder rozsądnie byłoby zainstalować w osi rolki dociskowej i sprząć rolki tuż przed markerem i za piłą. Rozdzielczość enkodera powinna zapewnić 1mm dokładności, nie więcej ( chodzi o przepełnienie licznika). Zakładając, że rolka dociskowa ma obwód 250 mm, enkoder powinien mieć 250 imp/obrót. Szybki licznik w tej sytuacji przepełni się po 10 m (9999)....
Problem jaki widzę to że czasem taki uklad drga minimalnie np 1-2 piki enkodera i jak to się trafi na progu przepełnienia, układ będzie ciagle w pętli przerwań.
Możesz próbować zaprogramować 2 liczniki np. na zliczanie 10 imp. Potem sprawdasz przepełnienia licznika. Na podstawie tego trzeba napisać algorytm który będzie tak sterował wyjściem analogowym drugiego silnika aby przepełnienia były jednakowe.
Wielkie dzięki za podpowiedzi : 1. Zdaję sobie sprawę z retro - rozwiązania typu tachogenerator, ale tak jak pisałem problem stanowi licznik związany z enkoderem. Sprawa w detalu wygląda mniej więcej tak - w dotychczasowym rozwiązaniu stosowałem enkoder 1024 imp/obr plus moduł licznika, który w rejestrze 32bit przechowuje stan osi. Prędkość była liczona...
No i w czym Twoja metoda jest lepsza od okresowego odczytu różnicy pomiędzy aktualną a poprzednią pozycją? W tym, że mniej obciąża procesor. Przerwanie wywoływanie jest tylko przy przepełnieniu timera. Dla enkodera o rozdzielczości 1000/obrót potrzeba 65535/4*1000 = ~16 pełnych obrotów enkodera by wywołać to przerwanie (pomijam tutaj małoprawdopodobne...
Zwykły licznik góra - dół i przetwornik DA z wyjściem napięciowym lub prądowym, powinny załatwić sprawę. Do realizacji na procku lub układach TTL/ CMOS. Przy czym, przepełnienie, czyli wyjazd poza zakres, ignorowany. To znaczy, po dotarciu do min/ max następuje nasycenie wyjścia i dalsze kręcenie w tę samą stronę nic nie zmienia. Zmiana kierunku natomiast,...
Prawdę mówiąc nie widzę sensu w realizacji dzielenia przez 40 sprzętowo. Ale jak pisałem, jeśli masz wolny timer, to do rejestru PER timera za pomocą którego realizujesz QDEC wpisujesz 39, wtedy co 40 impulsów wygeneruje ci przepełnienie, które możesz transmitować przez event system jako zegar dla drugiego timera, który w efekcie będzie zliczał co 40...
(at)tmf Tak, gdy włączam tryb enkodera pokazuje mi naprzemiennie 0 i 1. Dziwna sprawa, bo jak robię ten sam projekt, ale z TIM3, to w trybie zewnętrznego licznika jest podobnie, a w trybie enkodera od razu po przekręceniu pokazują się wartości zbliżone do max. wartości przepełnienia timera. Spróbuje z tym filtrem.Jeżeli chodzi o wybór kondensatora...
Szanowni Forumowicze, mam problem z regulacją prędkości obrotowej silnika DC wyposażonego w enkoder za pomocą przerwań INT. Enkoder to czujnik Halla i odbiera impulsy z magnesu neodymowego na wale silnika (magnes 8-polowy). Prędkość kontroluję za pomocą generowanego PWM na atmedze podawanego na mostek L293DNE. Atmega pracuje na 1MHz, a licznik to Timer/Counter0...
A jeśli chodzi o sam enkoder to możesz go powiesić na jednym przerwaniu- np do nogi A. W obsłudze przerwania badasz wyjście B i jeśli jest np niskie to zwiekszasz wartosć zmiennej, jeśli wysokie to zmniejszasz (czy jaki ci tam pasuje). DO tego jeszcze może jakieś sprawdzenie przepełnienia tej zmiennej. Całosć będzie miała... kilkanaście cykli?
No to wzór na prędkość jest taki: V=\frac{n}{Nt} n - ilość impulsów jakie naliczyłeś N - ilość impulsów na obrót enkodera t - czas w jakim naliczyłeś te impulsy Jeśli masz na przykład enkoder inkrementalny z ilością kroków 500 i w czasie 100ms naliczyłeś 374 impulsy to podstawiając do wzoru masz 500/(374*0.1) czyli 13,37 obrotów na sekundę. Zauważ,...
Witam Wszystkich Zazwyczaj używałem fateka do prostych programów drabinkowych ale teraz próbuję okiełzać połączenie z enkoderem. Mam enkoder inkrementalny 500 imp. podłączony do HSC0. Kanał A- X0, Kanał B-X1, maska - X3, kanał Z - X3 Poprzez DR4096 widać zliczające impulsy przy obrocie enkodera. Przy 1 impulsie enkodera otrzymujemy przesunięcie wózka...
Problem już rozwiązany. Nie korzystałem z tych flag - potrzebowałem licznik od -200 do 200. Akumulator był obsługiwany w taki sposób że nigdy nie dochodzi do przepełnienia. Problemem było złe ustawienie filtrów wejściowych (a dokładniej jego brak) .
Witam serdecznie! Zachęcony tematem: http://www.elektroda.pl/rtvforum/viewtop... oraz działaniami z układami FPGA postanowiłem stworzyć driver do mechanicznych enkoderów obrotowych. Aktualnie zaimplementowałem już eliminację drgań styków oraz dekodowanie 2 przebiegów z enkodera na bardziej zrozumiałe dla logiki sygnały (mam 2 wersje: albo...
Korzystam z licznika sprzętowego. Generalnie w rachubę wchodzą liczniki z obsługą enkodera czyli advanced albo general purpose(Najprawdopodobniej TIM1, lub TIM3). Licznik będzie pracował dwukierunkowo z przeładowaniem. Czy jestem w stanie stwierdzić czy przeładowanie nastąpiło na wskutek przekroczenia zakresu od góry czy od dołu? Oczywiście w obsłudze...
Witam, Do STM32F4 mam podłączony enkoder inkrementalny o rozdzielczości 1024 imp/obr. Chciałbym wykorzystać pełne możliwości sprzętowego modułu obsługi takich enkoderów przez F4, czyli zmieniać wartość licznika na opadających oraz narastających zboczach sygnału. W tym celu skonfigurowałem Timer 3 w następujący sposób: TIM3->CR1 |= TIM_CR1_UDIS; Bez...
W moim przypadku, chciałbym aby transfer przez DMA był realizowany przy każdej zmianie wartości CNT. To być może musiałbym wyzwalać jakieś przerwanie z wejść PC6 i PC7, bo tam jest podłączony enkoder. Sam Timer w trybie Encoder Mode może generować przerwanie i DMA request chyba tylko po przepełnieniu. Nie znalazłem żadnej innej możliwości. P.S. A czym...
Witam wszystkich. Jestem zielony w sterownikach PLC, toteż proszę o pomoc doświadczonych kolegów. Próbuję rozgryźć program, który jest zaszyty w moim FATEK'u (układ działa poprawnie) Ne wejściu X1 jest enkoder. Zastosowano konfigurację HSC4, licznik softwarowy,U/D, zlicz w górę X0. W programie głównym jest znacznik (?) M1982 - maskowanie, który jest...
I tak chyba będę musiał zrobić ale wiem że musi być jakiś sposób. W programie użyłem 8 liczników po 2 liczniki na jedno wejście tak że jeden liczy zbocze narastające a drugi opadające tj. 4 liczniki jazda do przodu i cztery jazda do tyłu, a wejścia są dwa tzn. wyjście z enkodera A i B , więc będę musiał trochę po przerabiać . Tylko jaki może być sposób...
Połączyłem bezpośrednio enkoder do uC i po kilku obrotach lewo/prawo pozycja "0" a fizyczne "0" różnią się, nie jest to jakaś duża różnica ale, więc chyba muszą mieć wpływ. Ciekawe jak to jest możliwe?:) Rozrysuj te sygnały i zastanów się jaka sytuacja mogłaby to spowodować? W twoim przypadku zapewne winowajcą jest użycie wewnętrznego podciągania....
Najdokładniej będzie zmierzyć czas pomiędzy impulsami z enkodera - możesz do tego użyć trybu input capture (ICP) timera1. Przy max. prędkości obrotowej masz ok. 100 zdarzeń na sekundę. Przy min. prędkości możesz zwiększać preskaler timera żeby wykluczyć przepełnienie bez "łapania" impulsu. Jeśli odstępy między impulsami z dekodera nie są identyczne,...
Przy enkoderze 100 imp/ obrót wcale nie jest niedokładny pomiar ;) Przykład: mamy silnik, który obraca się z prędkością 300/obr minutę => 5obr/ sekundę = 500 impulsów - czy to jest mało, aby była kiepska dokładność? Dla wyższych prędkości aby nie "zgubić" znacznej ilości impulsów spowodowanej przepełnieniem licznika trzeba dorobić obsługę przerwania...
To właściwie jest oddzielna funkcja, którą należy okresowo wywoływać. Albo przez pooling, albo z przerwania generowanego przez encoder i wtedy można ją jeszcze dodatkowo uprościć. Co do operacji, którą pokazałeś - w moim programiezmienna EncoderState na starszych bitach przechowuje inne wartości, np. stan przycisku enkodera itd. Stąd takie nieco dziwne...
Przyznam że niezbyt zrozumiały jest dla mnie ten program z obsługą enkodera, ciężko mi to ogarnąć wszystko po prostu. O co chodzi tak w skrócie z tym przerwaniem timera? Dodano po 3 Czytam teraz ciekawy artykuł o timerze 0, pisze że jego zadaniem jest zliczanie przychodzących do niego impulsów, jeśli to tak działa, to myślę że idealne rozwiązanie. Dodano...
http://obrazki.elektroda.pl/1913082300_1... jako enkoderów uzywam czujników odbiciowych tcrt5000 ktore odbijaja wiazke na bialych paskach a tłumią na czarnych. Jak zliczam impulsy dizeje sie cos takiego jakby kilkakrotnie byl zczytywany ten sam sygnał. Moze przerwanie nie wraca do miejsca w ktorym zostało wywołane przepełnieniem timera...
Jeśli dobrze pamiętam aby wykonać bazowanie należy podać napięcie +24V na 8 zacisk po modułem, po czym +24V należy podać na wejście Z (symulacja impulsu Z z enkodera). Powoduje to ustawienie bitu SYNC na true, oraz wyzerowanie licznika. Wykonanie kolejnego bazowania (tj. zerowania licznika) jest możliwe dopiero po skasowaniu flagi SYNC, przy czym dokonać...
Żeby przyspieszyć przetwarzanie możesz utrzymywać 2 zmienne: pozycja i delta. W przerwaniu INT0 robisz: push r_temp ; 2 in r_temp, SREG ; 1 push r24 ; 2 push r25 ; 2 lds r24, LOW(adr_delta) ; 2 lds r25, HIGH(adr_delta) ; 2 sbis PIND, 3 ; 1/2 sbiw r24, 2 ; 2/0 adiw r24, 1 ; 2 sts r24, LOW(adr_delta) ; 2 sts r25, HIGH(adr_delta)...
Witam. Wystarczy, że zbudujesz enkoder (np. najprostszym jest tarcza z otworami i układ diody świecącej i fototranzystora, następnie sprzęgniesz to z osią, która porusza Twój wózek ). Im więcej otworów na mniejszej średnicy uda Ci się uzyskać, tym lepiej tzn. dokładnośc pozycjonowania i samej pracy będzie lepsza. Enkoder ten musi podawać impulsy na...
W obu programach masz błąd. W pierwszym: Akurat kod tu nie ma wiele wspólnego zrobiłem to na dwa sposoby i za każdym razem inne wyniki Widać że jednak ma. Chyba to rozgryzłem Proszę mnie poprawić jak się mylę No teraz by było. Przerwanie Int nie dzieli przez 256 więc masz przerwanie co impuls. Tylko po co później to: [syntax=basic4gl]Lj = Li / 250[/syntax]...
Przeczyściłem jeszcze raz enkodery i są dobrze założone. Ale teraz po włączeniu jeszcze dziwniejsza rzecz. Mianowicie karetka jeździ po całej długości i wygląda tak jak by było wszystko w porządku. Już tak nie wariuje, rolki pracują spokojnie. Ale po self-teście kartridż jedzie na pampersa i tam siedzi co jakiś czas przejedzie całkiem na lewo i znowu...
Technicznie wygląda to tak: W każdym takcie zegara (np w 1/1000000 s - przy taktowaniu 1 MHz) zliczany jest jeden impuls. Timer 16-bitowy od 8-bitowego różni się tylko tym, że przepełnienie następuje po 65536 taktach a nie po 255. Ale żeby policzyć dokładnie jedną sekundę to musisz nadal odliczyć ten milion taktów. Jak widać zegar będzie leciał wiele...
Witam!!! Ogólnie z tego co mi wiadomo, to w Canonie niema czegoś takiego że wskazuje dwa błedy naraz (zacięty papier i pochłaniacze) Prawidłowo powinno być: najpierw pochłaniacze, kasujemy błąd i dopiero teraz powinien pokazać się błąd zaciętego papieru(gdy miga na przemian 3 razy - błąd enkodera). W twoim przypadku masz błąd softwerowy, czyli do wymiany...
T3 nie współpracuje z enkoderem. Analogiczna konfiguracja na T1 jak najbardziej działa poprawnie: [syntax=c]//GPIO //GPIOA RCC->AHBENR |= RCC_AHBENR_GPIOAEN;//zegar dla GPIO GPIOA->MODER |= (0<<0) | (3<<2) | (1<<4) | (1<<6) | (1<<8) | (2<<10) | (2<<12) | (2<<14) | (2<<16) | (2<<18); GPIOA->OSPEEDR...
Witam. Enkoder z otworem wygląda następująco (nie posiadam, żadnej noty pdf...) Przypuszczam, że jest to enkoder inkrementalny z wyjściem pojedynczym - sygnały A,B (TTL, Push-Pull, otwarty kolektor). http://img854.imageshack.us/img854/9044/... Sposób podłączenia: http://img232.imageshack.us/img232/29/sc... Jak enkoder kreci sie w...
Witam. Bardzo proszę o pomoc. Około 1,5 roku temu zakupiłem urządzenie wielofunkcyjne Canon Mp 520. Miało starczyć na lata. Przez półtora roku użytkowania sprawdzało się znakomicie. Jednakże pojawił się problem. Przestało drukować czarny kolor. Pozostałe ok. Myśląc że może to wina tuszu zakupiłem drugi (zamiennik ActiveJet). Przełożyłem na nowy. NIe...
Dziękuję, o takie coś mi chodziło :) Napisałem wobec tego takie funkcje: [syntax=c]uint16_t pRegulator(uint16_t output, uint8_t actualValue, uint8_t desired_value, uint8_t kp) { int error = desired_value - actualValue; output += kp*error; return output; } void setActualValue(uint8_t evsysValue, uint8_t *actualValue) { *actualValue = evsysValue; } //...
załączam program, ale to nie jest problem napewno tego.: spark2_nowy.h ioinit.h enkoder.h spi.c [syntax=c] static inline void SPI_SET_SS() { PORTB|=(1<<PB2); } static inline void SPI_RESET_SS() { PORTB&=~(1<<PB2);// SS -> PB2 } void SPI_master_init() { SPI_SET_SS(); SPCR = _BV(SPE) | _BV(MSTR) | _BV(SPI2X);// (SPE) SPI Enable, (MSTR)Master...
No to chyba tak, jak kombinowałem ( tylko może źle to opisałem ). Wybrałem grupę interruptów PCINT, a potem wybrałem dwa interesujące mnie PCINT'y. I w następnej linii kodu ustawiłem flagę "I" komendą sei(). Czyli spełniłem trzy warunki GIMSK = (1<<PCIE); (albo GIMSK = 0b00100000;) -> Włączyłem przerwania PCINTx PCMSK = 0b00011000 ; (albo...
Czesc, No niestety nie hula... probowałem tego. Myśle ze atmega jest zryta jakos... Mimo tego, ze mam obsługe przerwań i tak, wiem ze to musi działać bo skopiowałem to z mojego poprzedniego projektu, to mi się restartuje atmega. Zwrać na płytce nie ma. [syntax=c] #include <avr/io.h> // Załaduj bibliotekę input/output #include <avr/interrupt.h>...
Witam! W wykonywanym projekcie zapędziłem w pewien logiczny róg. Projekt jest wykonywany na rodzinie AVR, ale to ma mniejsze znaczenie. Problem jest następujący, muszę zliczać maksima dwóch niezależnych przebiegów sinusoidalnych (pochodzącego z enkoderów optycznych - elementy myszy komputerowej z lat 90) o częstotliwości maksymalnej 5kHz. Formowanie...
Witam wszystkich, projekt powstał na przełomie marca/kwietnia tego roku w wyniku zapotrzebowania na pompkę perystaltyczną potrzebną przy realizacji pracy magisterskiej. Nigdy wcześniej nie miałem do czynienia z elektroniką (nie licząc podłączania diod z rezystorem i prostych zasilaczy na LM7812) a tym bardziej z mikrokontrolerami. http://obrazki.elektroda.pl/2272591900_1...
Masz ustawione już "DCMI_CaptureMode_SnapShot" i DCMI_SynchroMode_Hardware Proces wczytywania zatrzyma się więc automatycznie po zakończeniu ramki. Zwiększ testowo ilość danych dla DMA. Złap obrazek i odczytaj wskaźnik zapisu. Możesz też zapisać pamięć np. wartościami 0x55 i zobaczyć jaką ich część zmienił uP. Zmieniłem rozmiar bufora- dodałem dodatkowych...
Witam staram sie uruchomić sprzętową obsługe encodera w stm32F4. Generalnie całość już działa problemem okazuje się sam timer. Działa inkrementacja i dekrementacja timera jednakże licznik nie chce się przepełnić zarówno przy zliczaniu w górę i w dół timer dolicza do maksymalnej wartości zapisanej w rejestrze CNT. przy zliczaniu w góre (obrocie koła)...
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....
https://obrazki.elektroda.pl/7793672500_... Przedstawię tu wnętrze kilku starych myszek komputerowych. Część z tych myszek jest tylko dwuprzyciskowa i nie ma nawet kółka. Zobaczymy tutaj jak są one zbudowane oraz na jakich układach bazują, przyjrzymy się też ich protokołowi komunikacji. Jak wygląda w środku myszka kulkowa? Przekonajmy...
Ok, z niechęcią pokażę jeszcze trochę kodu. Od razu wyjaśniam - ten kod to tylko taka tymczasowa partyzantka celem sprawdzenia i wykrycia takich sytuacji jak ta powyższa. Docelowo to będzie zupełnie inaczej zorganizowane. Dane są zbierane do RAMu przy pomocy DMA do podstawy 5-5ms/kratkę. Powyżej już są wyświetlane na bieżąco. Niemniej w obu przypadkach...
Witam. Nie mam już pomysłu na rozwiązanie mojego problemu. Program działa, ale przy przesuwaniu tekstu w tablicy do prawej AVR GCC generuje dużo mniejszy kod (1002 bajty) niż jeśli zakomentuję tę część pętli głównej programu (1366 bajtów). Kompilacja przechodzi bez warningów w obu wypadkach. Dodatkowo po zaprogramowaniu układu program nie wraca do głównej...
Tak jak w temacie. Zrobiłem sterownik na podstawie danych znalezionych w Internecie: http://www.ulrichradig.de/home/index.php... Na tej podstawie zrobiłem następujący schemat na ATmedze32: http://obrazki.elektroda.pl/5298560000_1... Jednak mam problem ze sterowaniem... Jeżeli prąd jest w granicach 2A to MOSFETY...
- Wyświetlanie temperatury z 4 czujników: -wody w basenie -powierzchni dachu -zewnętrznej -wewnętrznej w domu Pamiętaj o zabezpieczeniu ESD. Najlepszy jest DS9503. Jak nie chcesz aby awaria jednego czujnika nie zablokowała wszystkich, zrób osobne magistrale. Doskonale do tego nadaje się DS2482-800. Jak nie chcesz się wykosztować, to użyj uC z odpowiednią...
Witam. Jeśli Twój enkoder to przetwornik obrotowo-impulsowy inkrementalny (taki jak w myszce) to oznacza, że masz do dyspozycji 2 kanały licznikowe i/lub/może 1 kanał znacznikowy. Licznikowe dają określoną liczbę impulsów (najczęściej prostokątnych) na 1 obrót osi, znacznikowy 1 impuls na 1 obrót. Sygnały licznikowe (A i B) są przesunięte względem siebie...
https://obrazki.elektroda.pl/6687159300_... Każdy, kto rozważa przesiadkę z ośmiobitowego mikrokontrolera na coś mocniejszego i o większych możliwościach naraża się na pewien problem, który łatwo przegapić, bo przy ośmiu bitach pojawia się sporadycznie. Ale pomnóżmy liczbę bitów przez dwa, cztery, albo i osiem, i zaczynają się schody....
Kompletnie nie rozumiem po co chcesz dzielić coś przez 100. Masz taki enkoder to wykorzystaj to co masz. Jeśli chcesz, żeby falownik zmienił prędkość po 30 obrotach to znaczy, że enkoder wysłał 30*10000 impulsów. Jak Ci się przepełnia licznik to użyj jakiegoś dodatkowego countera. nie znam Omrona - jestem Siemensowcem
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...
sprawdź sobie czy Ci się licznik nie przepełnia 1 imp enkodera to 4 zliczone zbocza a licznik masz UP/DOWN czyli jeszcze /2 pojemność licznika 65536 /4/2 daje 8192 impulsy enkodera zanim licznik będzie full
Na Mega328 z KB RAM uruchamianie OS nie bardzo ma sens. Zrób wielowątkowość opierając cały program o maszynę stanów. Zapomnij, że istniej delay. Owszem, krótkich delay (mikrosekundy) w AVR przeważnie nie da się przeskoczyć ale nie zawsze. Na 1-Wire, można obsłużyć USARTem. Nie ma żadnych delay i 1-Wire działa na przerwaniach. Masz więc już pierwszy...
wszystko ok tylko zależy do czego to potrzebujesz. jaka dokładność pomiatru cię interesuje? jeżeli chodzi o pomiar dużych prędkości to przemnóż spodziewaną maksymalną prędkość obrotową wały enkodera przez jego rozdzielczość i zastanów się czy to nie za dużo (np. przy 3600 obr/min * te ponad 2000 imp/rev daje 120 000 impulsów/sekundę - do czego by była...
W programie który masz u góry są delay_ms program się zatrzymuje na tym a przerwania są nadal zgłaszane i możliwe że już nastąpiło zliczenie do piędziesiątki a potem zmienna się przepełnia a ty nadal w delay_ms. Pozdrawiam Nie no, tak to nie działa... delay jest po tym jak silniki się wyłączą więc żaden sygnał z enkodera nie przychodzi, a co za tym...
https://obrazki.elektroda.pl/8611332800_... Przedstawiam prostą konstrukcję, która sprawiła mi sporo frajdy. Jest to odtwarzacz plików MP3 z użyciem RaspBerry Pi Pico na mikrokontrolerze RP2040. Pliki wczytywane są z karty SD i odtwarzane z wykorzystaniem PWM. https://obrazki.elektroda.pl/8965810000_... Testy zacząłem...
Czemu nie działa jakieś błedy kompilatora, jak nie tak to może źle napisany kod i się przy większej optymalizacji wysypuje. Jak coś to wrzuć kod nie działający. Heh, no ok, wrzucam więc kod. Od razu jednak uprzedzam, że to jest mój pierwszy program w C i mogą występować rażące programistów błędy. Poza tym kod jest nieco rozlazły - dla mnie bardziej...
https://obrazki.elektroda.pl/5371288300_... Witajcie moi drodzy. Przedstawię tutaj teorię i praktykę implementacji wsparcia protokołu TuyaMCU. TuyaMCU to protokół oparty o UART, służący do komunikacji modułu WiFi z głównym mikrokontrolerem urządzenia Tuya. Protokół ten wykorzystywany jest w wielu produktach IoT, m. in. w ściemniaczach,...
Nie składam winy na bascom tylko proszę o pomoc kolegów. Problemu z zliczaniem impulsów już nie mam. Napisałem program lecz jest on napisany fatalnie dlatego że nie mam pomysłu w jaki inny sposób go napisać. Może koledzy wskażą mi jak to napisać lepiej dlatego że stos mi się przepełnia i program "wariuje". [syntax=basic4gl]$crystal = 8000000 'Deklaracja...
przepełnienie zbiornika amica przepełnienie przepełnienie timera
passat głowica przekaznik bistabilny schemat głośnik hertz samochód
schemat zasilacza impulsowego grzejnik invena
Ładowanie dwóch ogniw 18650 równolegle z TP4056 Losowe wyłączanie komputera przez Avast - przyczyny i rozwiązania