enkoder przepełnienie timera

Znaleziono około 30 wyników dla: enkoder przepełnienie timera
  • Xmega A1 - Jak poprawnie zrealizować USART z przerwaniami?

    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...

    Mikrokontrolery AVR   15 Gru 2014 21:18 Odpowiedzi: 9    Wyświetleń: 1851
  • REKLAMA
  • Jak zliczać impulsy? XMEGA, system zdarzeń i timery.

    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ń.

    Mikrokontrolery AVR   23 Mar 2022 08:16 Odpowiedzi: 29    Wyświetleń: 753
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • STM32f4-DISCOVERY - Enkoder - znaczny błąd w odczycie

    (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...

    Mikrokontrolery ARM   22 Wrz 2015 22:50 Odpowiedzi: 19    Wyświetleń: 1122
  • REKLAMA
  • [STM32][C] Kaskadowe podłączenie tim4 w trybie enkodera do tim3

    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...

    Mikrokontrolery ARM   24 Kwi 2012 18:14 Odpowiedzi: 19    Wyświetleń: 2699
  • XMega128A3 - Implementacja PID dla silników DC Dagu DG01D z enkoderem hallotronowym

    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; } //...

    Mikrokontrolery AVR   24 Sty 2017 22:28 Odpowiedzi: 34    Wyświetleń: 2310
  • [STM32F4][C] - Obsługa Timera Encoder Mode za pomocą DMA

    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...

    Mikrokontrolery ARM   22 Mar 2013 22:15 Odpowiedzi: 8    Wyświetleń: 4584
  • Enkoder (zdarzenia, dekoder) - wyskalowanie wyniku - XMEGA

    Witam, zrealizowałem obsługę w przerwaniu od przepełnienia timera lecz nie do końca idealnie to działa. Dodałem regulacje precyzyjną i zgróbną wartości zadanej. Przy regulacji precyzyjnej generalnie działa wszystko dobrze, lecz przy regulacji zgrubnej gdy przycisk enkodera jest wciśnięty to zawrtośc zadana potrafi niekiedy skakać o duże wartości np....

    Mikrokontrolery   26 Wrz 2017 10:27 Odpowiedzi: 30    Wyświetleń: 1548
  • Zliczanie impulsów enkodera 100 impulsów/obrót – AVR, wyświetlacz nie reaguje

    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...

    Mikrokontrolery AVR   27 Gru 2012 23:08 Odpowiedzi: 20    Wyświetleń: 4389
  • Jak dostosować program w Bascomie do pomiaru prędkości silnika BLDC?

    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,...

    Mikrokontrolery AVR   14 Maj 2009 09:36 Odpowiedzi: 21    Wyświetleń: 3563
  • REKLAMA
  • Jak utrzymać robota na linii prostej i stałą prędkość na ATmega 128?

    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...

    Mikrokontrolery   22 Cze 2011 21:43 Odpowiedzi: 13    Wyświetleń: 1983
  • REKLAMA
  • Jak zbudować miernik prędkości obrotowej z Atmega8, LCD i GP1S51VJ000F?

    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...

    Mikrokontrolery AVR   24 Sty 2011 00:38 Odpowiedzi: 62    Wyświetleń: 10806
  • Silnik prądu stałego Enkoder - STM32 biblioteka st.

    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ż,...

    Mikrokontrolery ARM   04 Sty 2018 13:25 Odpowiedzi: 4    Wyświetleń: 1083
  • [XMEGA][QDEC] Jak poprawnie skonfigurować enkoder inkrementalny?

    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....

    Mikrokontrolery AVR   23 Cze 2019 13:22 Odpowiedzi: 11    Wyświetleń: 750
  • [STM32F4] - Enkoder inkrementalny - zliczanie obu zboczy sygnału.

    Co do wartości 4096 w ARR. To by mnie nie zdziwiło, haczyk jest w tym że wpisałeś do ARR 0x4096 (16534) a to już wyglądało "podejrzanie" :) Uprzedzam, że nie wiem czy w tej nocie jest coś ciekawego... po prostu pamiętałem, że był jakiś pdf o 32bit resolution timer. Tak czy siak idea jest taka, że jeden licznik (master) przy przepełnieniu wysyła sygnał...

    Mikrokontrolery ARM   23 Sie 2015 20:18 Odpowiedzi: 4    Wyświetleń: 1164
  • [atmega8L][c] - Regulacja prędkości obrotowej silnika.

    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...

    Mikrokontrolery AVR   28 Gru 2015 21:04 Odpowiedzi: 37    Wyświetleń: 3297
  • Jak napisać kod w Bascom dla przepływomierza 648 impulsów/litr na ATmega32?

    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]...

    Mikrokontrolery AVR   11 Wrz 2014 07:38 Odpowiedzi: 62    Wyświetleń: 7749
  • potrzebna wstawka assemblerowa dla przerwania ATmega16

    Ż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)...

    Mikrokontrolery AVR   29 Maj 2009 09:08 Odpowiedzi: 34    Wyświetleń: 3276
  • Stany nieustalone uC, opóźnienie załączenia tranzystora

    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...

    Programowalne układy logiczne   21 Sty 2015 17:22 Odpowiedzi: 127    Wyświetleń: 14322
  • [STM32F030CCT6][C]Timer 3 nie współpracuje z enkoderem.

    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...

    Mikrokontrolery ARM   05 Sty 2019 22:15 Odpowiedzi: 4    Wyświetleń: 447
  • stm32 - Obsluga enkodera - nie resetujący się licznik

    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)...

    Mikrokontrolery ARM   11 Paź 2013 11:56 Odpowiedzi: 6    Wyświetleń: 1956
  • Attiny85 - Enkoder na przerwaniach - adaptacja działającej na Arduino procedury

    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...

    Mikrokontrolery Początkujący   31 Gru 2020 19:28 Odpowiedzi: 15    Wyświetleń: 1293
  • Analiza dwóch niezależnych przebiegów prostokątnych

    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...

    Mikrokontrolery   04 Sty 2012 15:55 Odpowiedzi: 3    Wyświetleń: 1205
  • Czy przerwanie jest "przechowywane"? Uszkodzona Atmega?

    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>...

    Mikrokontrolery AVR   06 Sie 2019 15:46 Odpowiedzi: 21    Wyświetleń: 1149
  • Mini oscyloskop DIY na STM32

    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....

    DIY Zagranica   11 Wrz 2020 06:03 Odpowiedzi: 15    Wyświetleń: 27819
  • [STM32F030][C] Timer1 - problem z przeładowaniem przy ARR>1999

    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...

    Mikrokontrolery ARM   04 Sty 2019 23:03 Odpowiedzi: 5    Wyświetleń: 642
  • ATMEGA8 - Dziwne zachowanie pętli while przy przesuwaniu tekstu w AVR GCC

    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...

    Mikrokontrolery AVR   06 Lut 2014 23:26 Odpowiedzi: 4    Wyświetleń: 1407
  • Arduino: Jak zaimplementować wielozadaniowość z leOS 2?

    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...

    Arduino   17 Lip 2018 12:05 Odpowiedzi: 5    Wyświetleń: 1509
  • Errata - dokument ważniejszy od noty katalogowej mikrokontrolera?

    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....

    Tematy tygodnia   18 Maj 2023 08:59 Odpowiedzi: 5    Wyświetleń: 1557
  • Jak skopiować wektor ISR do RAM w STM32F303?

    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...

    Mikrokontrolery ARM   21 Wrz 2015 10:11 Odpowiedzi: 13    Wyświetleń: 1527
  • Bascom: Obsługa przerwań Timer0 i Timer2 na AT89S53 - problem z priorytetem

    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). Chyba mnie źle zrozumiałeś.... zrób tak: Czekaj: Disable Timer1 N = 1 Counter0 = Czas Start Timer0 Enable Timer1 Return Przynajmniej...

    Mikrokontrolery   10 Sie 2006 18:06 Odpowiedzi: 11    Wyświetleń: 1487