przerwanie licznik

Znaleziono około 4565 wyników dla: przerwanie licznik
  • [ATmega32] ATmega32 Timer0 CTC - przerwanie nie działa poprawnie, licznik się zeruje

    A co na to symulacja programu? Taki program wgraj: .nolist .include "m32def.inc" .list ; ## START ########################################... .cseg ;=======================================... ;= WEKTORY PRZERWAŃ = ;=======================================... .org 0x0000 rjmp reset_vector ; po...

    Mikrokontrolery AVR   13 Sie 2008 21:39 Odpowiedzi: 4    Wyświetleń: 2559
  • Czy mogę odłączyć prąd niepłacącemu sąsiadowi, którego dom jest podłączony do mojego licznika?

    .... Co też zostało zrobione - pisałem kilkakrotnie, że nalegamy, aby sąsiad załatwił sobie własne przyłącze. Po przeanalizowaniu sytuacji prawnej na podstawie PE (prawo energetyczne) i kc (kodeks cywilny) dochodzę do wniosku, że jakbym ja miał takiego sąsiada, to by trafiła mu się awaria kabla zasilającego. Inne prawne działania są długie i narażają...

    Elektryka Instalacje i Sieci   28 Wrz 2025 07:51 Odpowiedzi: 106    Wyświetleń: 5286
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (2min)...
  • [AtMega16][BASCOM]Problem z odmierzaniem odcinków czasu

    Nie rozumiem jak przerwanie od licznik 8 bitowe mialoby przeszkadzac w dzialaniu pozostalych przerwan czy calego programu.. Przerwanie np przy 16Mhz bedzie generowane 62500 /preskaler na sek od licznika 8 bitowego, a zajętość (stan CLI) procesora oceniam na ponizej 1 uS co chyba nie wplynie na pozostale zadania procesora.

    Mikrokontrolery AVR   10 Maj 2010 11:58 Odpowiedzi: 11    Wyświetleń: 1698
  • Ustawianie Timerow/licznikow w AT89CXXXX jako generator 50Hz

    11.0592 / 12= 0.9216 tyle trwa okres zegara w mikrosekundach . Poniewaz F=50 hz okres 20ms / 2= 10ms =10000 mikrosekund 10000 / 0.9216 = 10851- tyle taktow musi policzyc licznik timera, przerwanie wystapi gdy licznik doliczy do 65535 +1, poniewaz liczy od 0 do 65535 ,trzeba mu wpisac wartosc poczatkowa. zeby odliczył owe 10851 taktow , czyli 65536-10851...

    Mikrokontrolery   26 Mar 2006 15:41 Odpowiedzi: 12    Wyświetleń: 1932
  • ATmega8 Timer0/Timer1 – jak ustawić prescaler, by uzyskać 1s przy 1MHz?

    Jeśli do tego włączysz przerwania, ustawisz licznik T1 w tryb porównywania z kasowaniem, to dokładnie co 1 sekundę wywoła się przerwanie przepełnienia licznika T1. Dalej to już tylko odpowiednia obsługa tego przerwania.

    Mikrokontrolery   14 Mar 2006 21:13 Odpowiedzi: 27    Wyświetleń: 2876
  • REKLAMA
  • Przerwanie przepełnienia AVR w C - czas przekracza 1 sekundę, dlaczego?

    Licznik napewno nie skacze. On sobie liczy płynnie tylko ty czytasz go w przypadkowych momentach. Tak jak pisałem wcześniej, jeden impuls zeruje licznik i startuje jego liczenie a drugie przerwanie bądź przechwytuje licznik bądź go zatrzymuje i odczytuje. Ty wybrałeś tą pierwszą opcję ale nie zwalnia to cię od wyzwolenie tego układu liczącego.

    Mikrokontrolery   09 Sty 2006 14:16 Odpowiedzi: 10    Wyświetleń: 1352
  • Jak zmierzyć okres sygnału 20-300 Hz w Bascomie na 89C4051?

    do mierzenia okresu sygnału najlepiej wykorzystać licznik i przerwanie zewnętrzne. Sygnał pomiarowy wzmocnić tak aby uzyskać przebieg prostokątny o stromym nachylaniu zboczy. Następnie podać sygnał na wejście przerwania zewnętrznego (np. detekcja zbocza 1->0). W przerwaniu włączyć licznik, wyjść z przerwania i oczekiwać na następne przerwanie w którym...

    Mikrokontrolery   29 Mar 2006 00:50 Odpowiedzi: 3    Wyświetleń: 954
  • REKLAMA
  • [Atmega8] Jak zmierzyć czas stanu wejścia z dokładnością 100ms na Atmega8 w C?

    Ja pomiar czasu (i to nawet precyzyjnie) zrobiłem na timerze i przerwaniu od INT0. INT0 ustawiłem na przerwanie od dowolnej zmiany stanu. W funkcji przerwania sprawdzam czy jest to san wysoki czy niski, i uruchamiam z którymś z nich timer i przerwanie od zrównania licznika z rejestrem. Program leci sobie dalej jak chce i co jakiś czas następuje przerwanie...

    Mikrokontrolery AVR   06 Sie 2011 18:22 Odpowiedzi: 53    Wyświetleń: 7573
  • [C][ATmega8]Zmiana sekwencji programu button switch

    Przerwanie od INT0 powinno aktywować przerwania od timera, które co 50ms będą zmieniać stan portu c: INT0: - blokuj przerwania INT0 - licznik sekwencji na portc = 0 - aktywuj przerwanie timera INT TIMERA: - switch (licznik sekwencji) ..... w ostatnik case czy default: 1) blokuj przerwania timera 2) kasuj flagę INT0 3) włącz przerwania int0

    Mikrokontrolery AVR   01 Paź 2019 17:57 Odpowiedzi: 26    Wyświetleń: 1431
  • REKLAMA
  • Jak zmodyfikować schemat z AT89C2051 do pomiaru wypełnienia impulsu?

    ...Jednak w jaki sposób poprzez ten timer zrealizować pomiar wypełnienia? Połącz wejście T0 z wejściem przerwania zewnętrznego INTn i wykorzystaj to przerwanie oraz licznik T1 , do pomiaru wypełnienia.Wszystko zależy od tego , jak "szybki" przebieg masz zamiar mierzyć. Piotrek

    Mikrokontrolery   01 Lip 2010 18:17 Odpowiedzi: 9    Wyświetleń: 3872
  • Jak zmierzyć czas przerwania DMA z I2S z rozdzielczością 1us?

    Chciałbym zmierzyć jak długo wykonuje się przerwanie od DMA po zakończeniu transmisji z I2S. Myślałem nad uruchomieniem jakiegoś timera, który będzie zliczał mikrosekundy, ale kiedy wykonuje się jedno przerwanie z najwyższym priorytetem to inne są hamowane. Dobrze kombinujesz! Ale trochę przekombinowujesz :). Nie potrzebujesz żadnych dodatkowych przerwań...

    Mikrokontrolery ARM   21 Lut 2024 22:50 Odpowiedzi: 6    Wyświetleń: 267
  • Zlicc. imp. na liczniku T0 i rejestrze B proszę o wskazówki

    Najlepiej w tym przypadku włączyć przerwanie od T0 i po każdym przepełnieniu licznika zwiększać o jeden rejestr B org 0 sjmp start org 000bh ;wektor przerwania od T0 inc b cjne b,0,koniec ;tu jakieś instrukcje po odliczeniu 2^24 koniec: reti start: mov b,#0 ;konfiguracja T0 ;program główny end To jest mały zarys zliczania 2^24, należy jeszcze odpowiednio...

    Programowanie   20 Sty 2006 14:50 Odpowiedzi: 12    Wyświetleń: 1283
  • [STM32F030] Przerwanie od porównania TIM1_CC_IRQHandler

    Wg. dokumentacji uC w takiej konfiguracji powinno nastąpić przy stanie licznika 0, czyli wszystko się zgadza. Co to znaczy "zablokowanie przeładowania licznika" oraz że licznik "ma się zatrzymać, ale nie wyłączyć"?

    Mikrokontrolery ARM   06 Mar 2018 22:08 Odpowiedzi: 3    Wyświetleń: 666
  • Jak odczytać dane z GPS GARMIN przez UART na ATMEGA8 w Bascom?

    Pomysł z tym programikiem jest dobry ale lepiej zrobić tak aby wykorzystać przerwanie od uart'u od danych przychodzacych. W obsłudze tego przerwania robimy taki myk że gdy przyjdzie znak "$" to niech sie zeruje licznik (wskaźnik pozycji) i każda nastepna dana z portu niech będzie zapisywana do nastepnej zmiennej. Potem można z tych zmiennych wyciągnąć...

    Mikrokontrolery   12 Lis 2005 16:23 Odpowiedzi: 44    Wyświetleń: 7646
  • ATMega 32 nie wykrywa szybkiego impulsu z czujnika szczelinowego przy 120m/s

    Czekaj, czekaj. Jeden czujnik odpali przerwanie INT0 a w tym przerwaniu sie uruchomi timer. Drugi czujnik po INT1 ma go wyłączyć. Raczej o tym myślałem. Lepiej tak: czy ktoś by mi dokładnie wytłumaczył jak wywoływać timery, zbierać z nich czas, do czego służą poszczególne rejestry. Noty katalogowej tego procka po polsku nie znalazłem, a dobrego poradnika...

    Mikrokontrolery AVR   07 Paź 2017 14:55 Odpowiedzi: 32    Wyświetleń: 3939
  • Mercedes Atego 1217 - Brak połączenia z kompterem diagnostycznym.

    Pytałem o siedzenie, bo pierwsza seria Atego miała siedzenie według mojego opisu, sterowane poprzez sterownik mikroprocesorowy. Sprawa wyglądała tak, że licznik i sterownik siedzenia miały wspólny przewód diagnostyczny. Było dość sporo przypadków, że właśnie sterownik siedzenia dawał zwarcie na ten wspólny przewód diagnostyczny i padała cała komunikacja...

    Samochody Ciężarowe   05 Kwi 2012 06:34 Odpowiedzi: 5    Wyświetleń: 7773
  • STM32 Przerwanie SYSTICK. Jak wrócić do funkcji main?

    OK, dzieki użyłem gotowca Nie używaj gotowców w takiej banalnej sytuacji. Doczytaj co to jest ten Systick. W dużym skrócie to licznik 24 bitowy - to ważna informacja, może zliczyć maksymalnie do ok. 16 mln (2 do 24). Po doliczeniu do zaprogramowanej wartości zgłasza przerwanie. Do ustawiania wartości można użyć funkcji Systick_Config(), ale najlepiej...

    Mikrokontrolery ARM   09 Cze 2019 00:09 Odpowiedzi: 11    Wyświetleń: 1002
  • Problem - Przerwanie TIMER0 zliczanie przez T0 na ArduinoMEGA2560.

    Witam. Trochę inny procek ATmega644 [syntax=c] TCCR1B |= (1 << WGM12); // Mode 4, CTC on OCR1A TIMSK1 |= (1 << OCIE1A); //Set interrupt on compare match TCCR1B |= (1 << CS12) | (1 << CS10); // set prescaler to 1024 and start the timer| (1 << CS11);// OCR1A = 976*8; //wartość do której zlicza licznik [/syntax]

    Arduino   03 Kwi 2018 19:20 Odpowiedzi: 2    Wyświetleń: 636
  • Miernik częstotliwości na ATmega16 - przerwania i liczniki T0, T1

    Uwaga! 1) Jeżeli zmienną licznik będziesz miał zadeklarowaną wewnątrz funkcji obsługującej przerwanie to przykładowa deklaracja powinna wyglądać tak: static uint8_t licznik = 0; 2) Jeżeli natomiast zmienną licznik zadeklarujesz gdzieś w programie głównym, wtedy powinieneś ją przykładowo zadeklarować jako: volatile uint8_t licznik = 0; po co te "przedrostki"...

    Mikrokontrolery   15 Lut 2008 16:19 Odpowiedzi: 12    Wyświetleń: 3465
  • Jak sterować wentylatorem PWM przez Arduino Mega z wyświetlaczem? Oczekuje fachowej pomocy.

    Jęśli chodzi o pytanie nr 3 to tak Dodano po 7 Bezpośrednia odpowiedź na pytanie Aby jednocześnie wyświetlać prędkość obrotową (RPM) wentylatora oraz ustawioną moc (np. w formie procentowego wypełnienia PWM) na wyświetlaczu dotykowym podłączonym do Arduino Mega, należy: - Zliczać impulsy z tachometru (pin TACH) wentylatora, przeliczać je na obr./min...

    Arduino   10 Mar 2025 16:24 Odpowiedzi: 10    Wyświetleń: 261
  • BASCOM - Stabilność funkcji Waitms w generowaniu powtarzalnych impulsów na Atmega8a/Attiny25

    . Zamierzam zrobić tak by mogli wprowadzić korektę (jeśli będzie potrzebna) i zapisać w eeprom. czy to dobry pomysł? Jakoś tak; $Crystal=12000000 Config Timer1 = Timer , Prescale = 8 On Timer1 Inter_1mS Inter_1mS: Counter1 = Counter1 + Licznik (64036 - wychodzi z obliczeń, że da to 1ms) /tu odliczę sobie 103/ Błednie to rozumujesz, albo błednie podałeś...

    Mikrokontrolery AVR   06 Lis 2021 18:15 Odpowiedzi: 10    Wyświetleń: 813
  • Jak zbudować prosty miernik zużycia paliwa do Opla Astry na 89C4051?

    Według mnie ten "czujnik pomiarowy wtrysku" powinien zdać egzamin. Jeśli wtryskiwacz będzie miał zasilanie +12V i sygnał sterowany masą (czy jak to się tam nazywa) to wtryskiwacz na pewno wtedy działa ,a procek otrzyma o tym informacje. Czy wyjście z transoptora podawać jeszcze na tę bramkę 40106 i dopiero na procek? A przerwanie inicjujące licznik...

    Mikrokontrolery   17 Paź 2007 11:18 Odpowiedzi: 66    Wyświetleń: 13446
  • Atmega32A - Moduł L298 - Sterowanie silnikiem DC - PWM

    Może spróbuj sterowania w inny sposób - za pomocą przerwania INT2 (wywoływanego przyciskiem) uruchamiaj i zatrzymuj licznik TC0 (parametry PWM są ustawione u Ciebie poprawnie) tzn ustawiaj bity TCCR0|=(1<<CS00)|(1<<CS01) kiedy chcesz uruchomić licznik i zeruj je jeżeli chcesz zatrzymać. Samo ustawianie wartości wypełnienia czyli rejestr...

    Mikrokontrolery AVR   02 Sty 2018 23:56 Odpowiedzi: 22    Wyświetleń: 1581
  • [Atmega128][c][WinAVR] Timer w trybie asynchronicznym

    Po co koledze ten CTC? Prescaler ustaw na 128 i wykorzystaj przerwanie przepełnienia licznika. Fint = Fosc / preskaler / 2^ilość_bitów_licznika = 32768Hz / 128 / 256 = 1Hz Przy CTC trzeba pamiętać, że występuje taki jeden mały szczegół jak 1+OCRn , gdyż licznik musi przynajmniej zliczyć jeden impuls. A ty go nie uwzględniłeś: Fint = Fosc / (preskaler...

    Mikrokontrolery AVR   08 Lis 2009 21:48 Odpowiedzi: 2    Wyświetleń: 2308
  • Jak zmodyfikować przerwanie EXT0 w '51 do pomiaru czasu zasłonięcia bariery?

    Masz racje sam się pogubiłem w tym INT i /INT Ale to jeszcze lepiej bo przerwanie wygeneruje się w momencie zakończenia pomiaru (o razu masz gotowy wynik i nic więcej nie trzeba sprzwdzać tylko wyzerować licznik do następnego pomiaru) Dobrze,że myślisz i nie dajesz sobie wcisnąć głupot:D

    Mikrokontrolery   05 Mar 2007 23:15 Odpowiedzi: 10    Wyświetleń: 1353
  • Sterowanie 8 serwami z rozdzielczością 100 kroków na PIC16F688 20MHz

    Więc wersja przerwania najprostsza do napisania: 1. Wyłączasz wszystkie serwa (większość jest wyłączona, ale od przybytku głowa nie boli) 2. Zwiększasz licznik o 1; 3a. Jeśli licznik jest nie większy niż ilość serw: - załączasz serwo nr = licznik - ustawiasz timer, aby następne przerwanie było za pożądany czas trwania impulsu do serwo nr = licznik 3b....

    Mikrokontrolery PIC   22 Cze 2011 10:03 Odpowiedzi: 6    Wyświetleń: 1754
  • Enkoder optyczny TCRT5000 - maksymalna prędkość i dokładność pomiaru RPM

    Według mnie to wychodzi tak : dla czujnika z 4 polami odbiciowymi przy prędkości 2000 rmp uzyskasz 8000 imp / min, co daje częśtotliwosć ok. 133 Hz. Przy tej wartości nie bedziesz mial problemów ze Shmittem. Wyjście z czujnika podajesz np. na wejście INT0 mikrokontrolera i w przerwaniu sterujesz wewnętrznym timerem. Po prostu przerwanie INT0 powinno...

    Automatyka Przemysłowa   15 Lip 2011 07:51 Odpowiedzi: 4    Wyświetleń: 1468
  • Jak poprawnie obsłużyć przerwania w C dla mikrokontrolera z przyciskiem i diodą?

    1. Sprawdzasz stan przycisku co jakiś czas, co przerwanie timera, np. 10ms (w przepełnieniu licznika np. Timer0 Overflow można regulować czasem pomiędzy przerwaniami, wpisując na początku obsługi przerwania odpowiednią wartość licznika, oraz wybierając preskaler w odniesieniu do częstotliwości zegara systemowego {1; 8; 64; 256; 1024}). Procedura timera...

    Mikrokontrolery   31 Sty 2007 20:16 Odpowiedzi: 33    Wyświetleń: 5332
  • [Bascom Tinny44] - Instrukcja Load na Timer1 nie działa poprawnie

    Przerwanie miałbyś z częstotliwością 32000Hz(8000000/250), gdybyś tylko przeładowywał Timer w przerwaniu. [syntax=basic4gl] Prztimer1: Load Timer1, 250 '<----- w tym miejscu na przyklad Incr Licznik If Licznik > 100 Then Licznik = 0 End If[/syntax]

    Mikrokontrolery AVR   11 Lut 2015 18:57 Odpowiedzi: 25    Wyświetleń: 1680
  • [LPC2378] Przerwanie timera0 wywołuje się tylko raz - analiza kodu ARM

    To Ci powinno ruszyć, napisałem kiedys pod Keila uVision3 V3.63. Dziala z Makieta Olimex'u LPC-2378-STK-A: // (LPC2378) mandaryn 2009 #include <lpc23xx.h> int flaga=0; // 0 -> dioda OFF, 1 -> dioda ON __irq void przerwanie (void) { if(flaga==0) // Gdy dioda wylaczona { FIO2SET|=0x00000001; // Wlaczenie diody...

    Mikrokontrolery ARM   07 Kwi 2009 15:16 Odpowiedzi: 11    Wyświetleń: 2023
  • [STM32] Jak uruchomić przerwanie RTC w STM32? Konfiguracja i debugowanie.

    Twoje obliczenia dalej są dalekie od optymalnych... Można to zrobić o wiele prościej: sekundy = licznik % 60; licznik /= 60; minuty = licznik % 60; licznik /= 60; godziny = licznik % 24; licznik /= 24; Dopiero od tego momentu robi się nieprzyjemnie, bo trzeba myśleć o miesiącach, dniach, latach przestępnych itp. chyba że zadowala Cię znajdująca się...

    Mikrokontrolery ARM   27 Maj 2012 14:59 Odpowiedzi: 30    Wyświetleń: 5055
  • [ATMEGA128] Timer1 CTC nie generuje przerwań przy 16MHz, OCR1A=62500

    Działa. Pewnie o czymś zapomniałeś na wstępie. Mój działający kod: .include "m128def.inc" .cseg .org0x0000 rjmpreset ;skok po resecie systemu .org0x0018 rjmpdata ;skok po wykryciu zgodności reset: ldi r16, high(RAMEND) out SPH, r16 ldi r16, low(RAMEND) out SPL, r16 rcallKONFIGURACJA_TIMER1 sei loop: nop rjmploop ;......

    Mikrokontrolery AVR   06 Lip 2008 08:32 Odpowiedzi: 23    Wyświetleń: 4139
  • Sumator PWM na ATtiny2313 nie działa - czy błąd w schemacie? Czy obsługuje 6 kanałów?

    Czego oczekuje NAZE Ci niestety nie powiem. Poszukaj informacji w manualu. Po wyłączeniu nadajnika dioda przy attiny powinna zgasnąć, bo brak PWM to brak PCINT, a tam jest załączana. Możesz dopisać symulację dodatkowych kanałów i sprawdzić, czy coś to pomoże. Dodaj sobie np. drugi output compare do tego licznika, który już masz. Jak zliczysz 6 wyłączeń...

    Początkujący Elektronicy   19 Maj 2018 22:57 Odpowiedzi: 3    Wyświetleń: 510
  • [ATmega16A] ATmega16A - Dlaczego kod wykonuje się wolniej niż oczekiwano?

    Zajrzyj do dokumentacji atmegi16 opis trybu CTC i rejestru TCCR2 ustawiłeś preskaler 8 i OCR2=0 czyli licznik liczy od zera do zera, kiedy osiągnie zero zostaje wyzerowany, cokolwiek to znaczy ;) Nie jestem w stanie stwierdzić czy licznik powinien zgłaszać przerwanie co 8 cykli zegara, czy częściej - warunek wystąpienia przerwania jest zawsze spełniony,...

    Początkujący Elektronicy   08 Cze 2013 11:55 Odpowiedzi: 6    Wyświetleń: 1107
  • [attiny2313] [attiny2313][C] Jak użyć jednego timera do PWM i overflow jednocześnie?

    Można wywołać przerwanie TIMERA, w trybie PWM, w momencie przeładowania licznika, a więc gdy licznik przekroczy ustawioną dla danej rozdzielczości wartość maksymalną. Musisz tylko włączyć przerwania dla danego Timera. Oczywiście częstotliwość wywoływania tego przerwania jest ściśle powiązana z ustawieniami PWM (jest równa częstotliwości działania PWM)....

    Mikrokontrolery AVR   17 Lip 2011 19:30 Odpowiedzi: 5    Wyświetleń: 1326
  • Mikrokontroler 8051. Obsługa licznika T0 z obsługą przerwań.

    wyliczyłem dla 10 ms. Przy zegarze 12 MHz cykl rozkazowy trwa 1 us (tak jest taktowant licznik T0) 1 ms = 1000 us , czyli 10ms = 10000 cykli 65536 - 1000 = 55536 dec = d8f0 hex U ciebie widzę jeszcze jedną nieprawidłowość , w głównej pętli czekającej na przerwanie 2 x masz dostęp do rej. IE, a podczas tego dostępu przerwanie nie może być wykonane. Takich...

    Mikrokontrolery Początkujący   23 Cze 2015 19:03 Odpowiedzi: 20    Wyświetleń: 1572
  • Generacja PWM na 8051 z EdSim - jak ustawić TH0 i TL0?

    Masz narzucony zegar 12MHz i on jest podstawą do obliczeń. Timer będzie taktowany zegarem 1/12 Fosc czyli 1MHz i tego nie zmienisz. Masz do odmierzenia 2 czasy 3360us i 10640us. Wybierając tryb 2 Timera utrudniłeś sobie sprawę bo maksymalny okres który możesz zliczyć do 256us. W takim przypadku musisz zrobić dodatkowy programowy licznik. Największy...

    Mikrokontrolery Początkujący   14 Lip 2020 00:00 Odpowiedzi: 5    Wyświetleń: 816
  • [AVR] [AVR][C] Timer1 - przerwanie działa tylko raz, naprzemienne zapalanie portów

    Robak timer ze względu na wartości początkowe nigdy nie osiągnie wartości choćby 1 więc jakim cudem ma być zgłoszone przerwanie od porównania B? a wykonuje się raz bo flaga jest na początku ustawiana tak ze warunek jest spełniony. I to błąd tego programu. Wcześniej piszesz że przerwanie jest inne a tryb inny. Druga sprawa to skoro jest tryb CTC i włączony...

    Mikrokontrolery AVR   10 Kwi 2011 20:31 Odpowiedzi: 12    Wyświetleń: 2930
  • [ATMEGA8][C/ECLIPSE] - DS1820 i współpraca z wyswietlaczem LED

    Proszę bardzo: [syntax=c]ISR(TIMER1_COMPA_vect) { static uint8_t licznik=1; // zmienna do przełączania kolejnych wyświetlaczy if (licznik==1) wylacz_czwarty_i_wlacz_pierwszy_segment(... if (licznik==2) wylacz_pierwszy_i_wlacz_drugi_segment(); if (licznik==3) wylacz_drugi_i_wlacz_trzeci_segment(); if (licznik==4) wylacz_trzeci_i_wlacz_czwarty_segment();...

    Mikrokontrolery AVR   17 Sie 2012 20:14 Odpowiedzi: 10    Wyświetleń: 1953
  • [C] [C][ATmega88] - Jak poprawnie obsłużyć przerwanie Timera0 dla diod LED?

    Wartość początkową ustalam odejmując 256 i 125, stąd TCNT0 = 131. Dlaczego tak to liczysz? Używasz trybu normalnego Timera0. Timer 0 w trybie normalnym liczy od 0 lub wartości początkowej ustawionej w rejestrze TCNT0 do wartości 0xFF. Przy 8 MHz i podziale przez 256 obliczenia wyglądają następująco: 8Mhz/256 = 31 250 31 250/256 (od 0 do 0xFF) = 122...

    Mikrokontrolery   29 Mar 2013 11:23 Odpowiedzi: 15    Wyświetleń: 2949
  • Atmega16 i AVR Studio - problem z multipleksowaniem i funkcją inkrementacji

    Drogi kolego , popełniłeś szkolny błąd :D W procedurze obsługi przerwania Timer0 masz ... SIGNAL(SIG_OVERFLOW0) //obsługa multipleksowania wyswietlaczy { //extern unsigned char wyswietl[7]; unsigned char licznik;//<-- ********** błąd !!!!!!!!!!! ... zmienną licznik , tyle że jest to zmienna lokalna , czyli istnieje w pamięci...

    Mikrokontrolery   17 Paź 2006 18:33 Odpowiedzi: 2    Wyświetleń: 1246
  • Obsługa przerwań w C: problem z diodami i wyświetlaniem czasu na LCD

    EA = 1; TMOD = 0x01; TR0=1; TH0 = 0x4C; TL0 = 0x00; Przed while(1) licznik TO inicjuj tylko raz Nie wiem jaka była intencja ale licznik raczej jako 8bit z autoprzeładowaniem TMOD=2, bo w pętli trudno określi co będzie pierwsze - przerwanie czy inicjacja i przerwania może nigdy nie doliczyć ; brakuje ET0=1; deklaracja unsigned int licznik; jako globalna...

    Mikrokontrolery   08 Sty 2007 21:48 Odpowiedzi: 4    Wyświetleń: 1758
  • [mega32][C] timer, przerwania i precyzyjne odmierzanie czasu

    Wszystko co napisałem powyżej pozostaje w mocy. Tryby normalny i CTC działają przy odmierzaniu czasu podobnie: obydwa tryby odliczaja ileś tam tyknięć rejestru TCNT i generują przerwanie. W przypadku trybu normalnego to liczenie następuje od wartości ustawianej w TCNT do wartości 0 (256), a w trybie CTC od wartości 0 do OCR (lub ICR). Zacznijmy od tego,...

    Mikrokontrolery AVR   16 Lip 2008 18:30 Odpowiedzi: 34    Wyświetleń: 7740
  • [ATmega16] [ATmega16][Bascom] Jak sterować 5 halogenami niezależnie za pomocą pilota?

    hmmm no ja to robiłem wtedy w Bascomie mniej więcej tak: ustawiałem sobie tak któryś Timer, żeby przerwanie wykonywało się powiedzmy 64 albo 128 czy ze 200 razy w ciągu czasu trwania jednej połówki czyli w trakcie ok 10ms tak? Gdy pojawiło się przerwanie INTx to odpalałem ten Timer, który zaczynał tykać i wykonywać przerwanie tyle razy ile ustalonych...

    Mikrokontrolery AVR   01 Wrz 2010 20:53 Odpowiedzi: 14    Wyświetleń: 2999
  • Tytuł: Licznik dystansu rowerowego na Arduino Nano, OLED i Cholotron: D2, całkowity i wycieczkowy

    Prawie dobrze, poza tym, że nie czytasz co tu ludzie piszą i psujesz kod coraz bardziej, teraz dodałeś zapis EEPROM w przerwanie zliczające impulsy, operacje na EEPROM są jeszcze wolniejsze niż liczenie na floatach, na koniec używaj do pokazywania kodu c/c++ Syntax, opcja w edytorze postu po lewej na górze: [syntax=c]Cytat: #include <Wire.h> #include...

    Arduino   29 Sty 2023 22:19 Odpowiedzi: 10    Wyświetleń: 579
  • Czy da się automatycznie policzyć ilość cykli zegara?

    Sądzę że to niemożliwe do policzenia podczas kompilacji ponieważ w programie może być pętla, a kompilator nie wie ile razy zostanie wykonana. W moim kodzie akurat w tym miejscu nie ma pętli ale są 3 warunki czyli co najmniej 2 bliskie skoki. Czyli też nei wiadomo ile czasu się bedzie wykonywać, bo skok to 3 cykle, a brak skoku to dwa cykle. Może są...

    Mikrokontrolery   06 Sty 2011 20:30 Odpowiedzi: 7    Wyświetleń: 2846
  • Jak zaprojektować stoper na AT89C51 z wyświetlaniem binarnym?

    a wiec tak zakładamy że przy up pracuje kwarc 12MHz. jeśli nie wymagasz dużej dokładnośći to timer ustawiasz w tryb 1 ( 16 bit ) tak aby generował przerwanie np: co 10ms; przy 12MHz cykl wynośi 1us czyli przerwanie będzie co 10000 cykli ( 10000 us = 10ms ). wartość po której następuje przerwanie to zmiana z 65535 na 0000. czyli do rejestrów licznika...

    Początkujący Elektronicy   23 Maj 2006 18:37 Odpowiedzi: 6    Wyświetleń: 1185
  • [BASCOM] Uproszczenie kodu licznika i wygaszanie zer nieznaczących

    Przeorganizowałem twój kod z pierwszego postu bo w tym z dzieleniem i modulo to może działać ślamazarnie. Jeśli ci pasuje oczywiście. Licznik obsługuj w przerwaniu timera. A zmieniaj tylko wartość zmiennej za pomocą przycisków. To musisz sobie dopisać. Gdyby obliczenia w przerwaniu były za długie, przenieść je do głównej pętli, ale tutaj zawsze będzie...

    Mikrokontrolery AVR   28 Lip 2018 22:14 Odpowiedzi: 28    Wyświetleń: 1380
  • Jak zapisać i przetworzyć 20 znaków z COM na AT90S2313 w BascomAVR?

    powinno byc cos takiego (to tylko fragment kodu) dim znaki(19) as byte dim licznik as byte licznik=0 enable interrupts enable urxc on urxc odbierz 'jak odbierze znak to przerwanie do:loop:end 'glowna petla tu robisz co chcesz odbierz: znaki(licznik)=inkey()'o... znak trafi do tej zmiennej incr licznik if licznik...

    Mikrokontrolery   07 Lut 2005 23:45 Odpowiedzi: 5    Wyświetleń: 1481
  • Jak zrealizować licznik częstotliwości mrugania oczu? Metody i technologie

    Może założyć na oprawkę okularów coś w rodzaju transoptora refleksyjnego. Bo przecież gałka oczna odbija promieniowanie lepiej niż powieka. I wtedy przy mrugnięciu następowałoby przerwanie strumienia i zliczenie impulsu. Oczywiście wszystko zrealizowane w podczerwieni, modulowane i o znikomej mocy.

    Projektowanie Układów   15 Maj 2005 18:50 Odpowiedzi: 1    Wyświetleń: 1344
  • ATMEGA32[C] tryb CTC i odliczanie dokładnie 1 sekundy

    1. W trybie CTC licznik liczy aż do osiągnięcia ustalonej wartości, następnie może (ale nie musi) generować przerwanie i zawsze jest automatycznie zerowany i liczy od nowa. 2. Tak, możesz w przerwaniu załadować TCNT dowolną wartością od której licznik będzie liczył. Tylko w przypadku rejestrów 16-bitowych pamiętaj, że koniecznie najpierw musisz załadować...

    Mikrokontrolery AVR   26 Sty 2011 22:20 Odpowiedzi: 16    Wyświetleń: 2826
  • ATMEGA 8 - Jak ustawić przerwanie timera co 1s z prescalerem 128?

    W dokumentacji niestety dla licznika 1 nie występuje preskaler 128. Występuje natomiast 256. Zakładając, że licznik pracuje w trybie CTC (WGM12 =1) i zakładając 8MHz źródło sygnału zegarowego (tak jak jest w komentarzu w kodzie) należy wpisać do OCR1A= 31249 oraz ustawić preskaler na 256 czyli CS12=1 A tak na przyszłość ...nota katalogowa. Tam wszystko...

    Mikrokontrolery AVR   05 Gru 2014 09:46 Odpowiedzi: 11    Wyświetleń: 1491
  • Jak zrealizować licznik motogodzin na ATmega8 z pamięcią 24C02?

    Licznik motogodzin ? czyli jak długo pracuje silnik bez zliczania obrotów (zwykłe mechaniczne tak mają). Biorąc pod uwagę twój wzór to silnik pracujący na wolnych obrotach będzie nabijał mniej motogodzin i odwrotnie jeśli będzie hulał na full to w tej samej jednostce czasu nabije więcej motogodzin . Jeśli wiesz jak zliczać impulsy z wału to dorób sobie...

    Mikrokontrolery   21 Maj 2009 23:46 Odpowiedzi: 7    Wyświetleń: 3582
  • Przerwania i PWM, ATmega8A - Brak reakcji na wektory przerwań

    Raczej 255 = 0xFF (8bit). Przerwanie wykonuje się przy zrównaniu licznika z wartością 255, licznik liczy w górę a preskaler to 256, zakładając częstotliwość CPU na 1MHz przerwania wychodzą co: 256/1MHz*255 = 65ms . (dla 8MHz to około 8ms) Tego co nie jestem pewien, to to czy licznik (mam na myśli rejestr TCNT1 ) jest zerowany przy wartości maksymalnej...

    Mikrokontrolery Początkujący   29 Mar 2015 01:56 Odpowiedzi: 49    Wyświetleń: 2775
  • Timer0 i przerwania – czy licznik działa podczas obsługi przerwania? Jak to działa?

    To już zalezy czy zezwalacz na zagnieżdżanie przerwań. W momencie wejścia do procedury obsługi przerwania, global interrupt enable (czy jak się to nazywa w twoim przypadku) jest wyłączany. Oczywiście, w pierwszej linii obsługi przerwania możesz je odblokować, i wtedy koljne przerwanie może przerwać wykonywanie aktualnego. Niektóre kontrolery mają też...

    Mikrokontrolery   22 Lis 2013 23:32 Odpowiedzi: 11    Wyświetleń: 2130
  • Jak zaprojektować układ generujący impulsy na '51 z timerem T0?

    Można by tak: zegar 12 MHz i wtedy cykl maszyny trwa 1 us, timer T0 ustawiasz w tryb 2 (autoreload) wpisując do jego rejestrów TH0 i TL0 wartości takie by przerwanie od niego było co 10us (problem kroku załatwiony). Tworzysz licznik programowy w którym będziesz odliczał potrzebną ilość wcześniej ustalonych przerwań. Po przekręceniu licznika reakcja...

    Mikrokontrolery   23 Gru 2004 12:15 Odpowiedzi: 5    Wyświetleń: 1383
  • [atmega32][bascom] 4 przyciski, jedno przerwanie i powerdown

    Żeby zrobić za pomocą Timera - to nie możesz używać trybu PowerDown tylko Sleep - żeby właśnie Timery mogły działać to po pierwsze. W taki trybie jednak będziesz miał nieco większy pobór prądu niż w pełnym PowerDown. Więc wszystko zależy na ile ma wystarczać bateria o ile jest to coś zasilane z baterii. Bez PowerDown'a na pewno będzie to sporo krótszy...

    Mikrokontrolery AVR   07 Wrz 2009 14:13 Odpowiedzi: 21    Wyświetleń: 6285
  • Asembler 89c2051: Pomiar i wyświetlanie na LED7SEG przy przerwaniu INT0

    Kilka pytań i spraw, ktore być mogą okazać się pomocne: Z wartości przeładowania T0 (D8EF) i faktu że przerwanie chodzi 100 razy/sek domyślam sie ze używasz kwarcu 12MHz . Jednak jesli ma to byc równo 100Hz to zauważ że podana u ciebie wartosć początkowa jest za mała o 1, bo powinno byc: T0pocz = FFFFh - (Fxtal / 12 / Fto) + 1 = D8F0h (a nie D8EFh)...

    Mikrokontrolery   25 Lip 2006 17:29 Odpowiedzi: 10    Wyświetleń: 2259
  • Przetwornica 12/230V jakiej sprawności maksymalnej można się spodziewać

    Usiadłem przy Atmedze328P i uruchomiłem SPWM dla Twojego przykładu. Zdefiniowałem następujące wyjścia sygnałów: - PD0 - sterowanie lewym dolnym MOSFETem mostka H - PD1 - sterowanie prawym dolnym MOSFETem mostka H - PD5 - sterowanie lewym górnym MOSFETem mostka H - PD6 - sterowanie prawym górnym MOSFETem mostka H Wyjścia PD5 i PD6 są niezmienialne, ze...

    Układy Zasilające   08 Cze 2023 14:02 Odpowiedzi: 25    Wyświetleń: 1461
  • STM32F4 - debugger STLink zaburza działanie programu.

    Moim zdaniem nie powinno być konfliktu. Dodatkowo licznik nie pracuje bardzo szybko TIM9->PSC = 799; Rozumiem. Przerwanie bardzo wolno, pętla główna bardzo szybko. Chodziło mi o to, czy nie za szybko. Bo w niej masz szybką sekwencję Read - Modify -Write. Test miał potwierdzić wyrabianie się szyny za corem. Ale skoro Twoim zdaniem jest inaczej to trudno...

    Mikrokontrolery ARM   18 Mar 2015 17:20 Odpowiedzi: 19    Wyświetleń: 1440
  • Jak połączyć dwa ATMega8 bez SPI, UART i I2C?

    Proponuje coś na zasadzie prostego SPI, z wykorzystaniem przerwania sprzętowego, niech linia z przerwaniem sprzętowym będzie linią zegara, dowolna linią danych, jeśli zmieni się stan na lini przerwania sprzętowego niech to przerwanie w programie odczytuje bit z lini danych i niech wraca do programu, a jeśli licznik bitów osiągnie odpowiedni stan, czyli...

    Mikrokontrolery   10 Maj 2005 20:19 Odpowiedzi: 15    Wyświetleń: 2317
  • [Atmega32] [Atmega32][ASM] Problemy z odbiorem RC5 - przerwanie INT1 i synchronizacja zegara

    Co do programu przedstawionego w załączniku. Strasznie marnujesz czas procesora, powinienes w przerwaniu wykonac kilka instrukcji a ty wykonujesz wszystko. Uboczną stroną jest jescze to ze musisz zapisywac wykorzystywane rejestry na stosie i "uziemiasz sobie licznk 0" Proponowałbym taki sposób: czujnik dołaczasz do wejscia into lub int1 ustawiasz na...

    Mikrokontrolery AVR   14 Gru 2008 21:48 Odpowiedzi: 9    Wyświetleń: 2586
  • [bascom]Timer zamiast waitms do obslugi dgran przyciskow i 1wire

    Wracajac do tematu czy moglbym prosic przynajmniej o pseudo kod obslugi przykladowo drgania w przyciskach , wysterowania przekaznika np przez 2s oraz komunikacji 1wire jednym timerem (atmega8 ma az 2 timery wiec pewnie szybko skoncza sie jego mozliwosci chcac napisac kod bez zatrzymywania) Cały dowcip polega na tym że z tego 8 bitowego timera możesz...

    Mikrokontrolery AVR   15 Sty 2012 14:24 Odpowiedzi: 11    Wyświetleń: 3032
  • Nowy licznik Normax1 Apator - dziwne zachowanie prądu w mieszkaniu

    I cuda sie dzieją jak odłączę wtyczkę z gniazdka od tv to znika prąd w całym mieszkaniu ale korków nie wybija włączę wraca . Powyższy cytat wskazuje na przerwanie przewodu N lub PEN, gdzie obwód zamyka się przez kablówkę. Jest to sytuacja skrajnie niebezpieczna grożąca porażeniem lub pożarem! Należy natychmiast odłączyć napięcie i wezwać elektryka!...

    Elektryka Dla Każdego   19 Mar 2018 21:45 Odpowiedzi: 4    Wyświetleń: 825
  • Jak ustawić ADC w STM32F030F4P6 do pomiaru napięcia co 10 minut?

    Przetwornika nie ustawiasz, bo to nie jego rola. Możesz to zrobić na zylion sposobów. 1. Ustaw sobie alarm w zegarze RTC - i jak dostaniesz przerwanie to inicjuj konwersję. 2. Ustaw sobie wakeup timer w RTC i jak wyżej. 3. Sprawdzaj jakiś licznik zmieniany np. SysTick - jak jego wartość będzie większa niż poprzednia plus 600000 to inicjuj konwersję....

    Mikrokontrolery ARM   07 Paź 2019 09:02 Odpowiedzi: 3    Wyświetleń: 546
  • Jak napisać program w C dla ATMega 128 z odliczaniem czasu na wyświetlaczu?

    Jako ze nie przepadam za pisaniem na maile, to odpowiem tutaj... Musisz skonfigurowac odpowiedni timer i przy przerwaniu, jakie generuje int czas=0; int timer0=131; SIGNAL (SIG_OVERFLOW0) { czas++; if (czas==5000) BUUM(); //jezeli czas osiagnal 5000ms, to wywolaj funkcje BUUM(); TCNT0 = timer0; // zaladowanie do...

    Mikrokontrolery   05 Gru 2005 17:01 Odpowiedzi: 5    Wyświetleń: 3167
  • [ATmega88pa] [ATmega88pa][C] - Timer nie wywołuje przerwań dla programowego PWM

    Generalnie w takich przypadkach nota układu twoim przyjacielem. Poczytaj to co napisałem w komentarzach. [syntax=c]#include <avr/io.h> #include <avr/interrupt.h> int main(void) { uint8_t i = 0; DDRD = 0xff; //TCCR2A |= (1<<WGM21)|(1<<WGM22); // źle ten tryb jest zarezerwowany TCCR2A |= (1<<WGM21) // CTC //TCCR2A |= (1<<CS20)|(1<<CS21)|(1<&l...

    Mikrokontrolery   12 Kwi 2015 16:54 Odpowiedzi: 2    Wyświetleń: 714
  • Licznik Geigera-Mullera zliczanie impulsów na PIC16F

    AVE... Jakiego PICa konkretnie chcesz użyć? Zasada pomiaru jest dość prosta: najpierw ustawia się któryś z timerów, by odmierzał 40 sekund i po odmierzeniu wywołał przerwanie. Potem tworzy się pętlę, która w nieskończoność sprawdza stan wybranego przez Ciebie pinu. Gdy jest tam logiczna jedynka, to dodajesz 1 do zmiennej. Gdy timer skończy zliczać czas,...

    Mikrokontrolery PIC   05 Kwi 2011 08:43 Odpowiedzi: 44    Wyświetleń: 9270
  • Algorytm programu obsługi wyświetlacza LED 7 segmentowego 4 pozycyjnego

    trebuch1 Średnio to wytłumaczyłeś :] adrian_krc Skonfiguruj jeden z liczników tak, aby generował przerwanie ze stałym okresem, np. co 1ms. Jak będzie 0,5ms albo 3ms to też będzie działać. Licznik może pracować w trybie 0 lub 1 (wtedy będziesz musiał go przeładować/ORować w obsłudze przerwania. Może też pracować w trybie 2, ale to może być za szybko...

    Mikrokontrolery   21 Sty 2014 20:41 Odpowiedzi: 9    Wyświetleń: 5679
  • Jak uruchomić licznik T2 z automatycznym przeładowaniem w 89S8252?

    Witam Licznik T2 działa, problemem jest brak zezwolenia na przerwanie od T2 - ustawiasz tylko globalne zezwolena na przerwania. Poniżej poprawiony, działający kod. Oprócz tego wprowadziłem jeszcze kilka poprawek, wyjaśnienia w komentarzach. org 0000h ljmp Start org 002Bh ;ljmp Licznik2 ;! ;Licznik2: ;!te dwie linijki zbedne clr TF2 ;clr EXF2 ;!...

    Mikrokontrolery   14 Lis 2005 09:19 Odpowiedzi: 2    Wyświetleń: 987
  • Atmega8, C - Niedokładny pomiar czasu z dokładnością do 1ms, 8MHz oscylator

    Rzeczywiście to pomogło. Zastanawia mnie, dlaczego jak licznik był w trybie normalnym wywoływane było przerwanie... Bo przerwanie jest od porównania. Gdy TCNT1 = OCRA1 to jest wywoływane przerwanie. A wytłumaczysz mi dlaczego OCR1AL ma wynosić 124, a nie 125? Bo tak jest napisane w datasheet. Zresztą zauważ że taka sytuacja jest sensowna. Zwróć uwagę...

    Mikrokontrolery AVR   16 Kwi 2013 22:39 Odpowiedzi: 17    Wyświetleń: 2724
  • Problem z odczytem danych z wyświetlacza sekwencyjnego

    Przyjrzałem się tej Twojej (znaczy - nie Twojej :)) płytce i wygląda mi, że podchodzisz do problemu od złej strony. Na tej płytce wyświetlaczy jest licznik 7493, który steruje multipleksowaniem (to widać nawet na tym niewyraźnym zdjęciu, które zamieściłeś). Zatem wystarczy tylko podać na wejście INT sygnał z wejścia zegarowego 7493 aby mieć stabilny...

    Mikrokontrolery AVR   16 Mar 2009 13:12 Odpowiedzi: 63    Wyświetleń: 7438
  • Czy AVR obsługuje I2C w przerwaniach bez zakłóceń? PCF8583 i PCF8574

    Co ile masz przerwanie od timera bo jak się domyślam stan klawiatury odczytujesz kilkadziesiąt razy na sekundę?? Napisze to po raz kolejny: Wywal odczyt po IIC klawiatury z obsługi przerwania!!! I rób to tak samo jak odczyt czasu w programie głównym na podstawie flagi. Po drugie po co odczytujesz za każdym razem czas z PCF'a??? Skoro masz przerwanie...

    Mikrokontrolery   09 Gru 2004 16:08 Odpowiedzi: 18    Wyświetleń: 3894
  • Opóźnione załączanie - po włączeniu . Nagroda 50pkt za schemat.

    Myślę, że mikro-kontroler będzie idealny. ATmega 8 będzie ok choć moim zdaniem trochę nadmiarowa. Ale jak jest w szufladzie ...jak najbardziej. Co do programu..wydaje mi się, że to raczej dość łatwa sprawa. Np. wejścia układu po obniżeniu napięcia do akceptowalnych przez AVR'a można podać na wejścia INT0 i INT1. Zmiana stanu na wejściu INT0 niech spowoduje...

    Projektowanie Układów   01 Maj 2014 08:37 Odpowiedzi: 29    Wyświetleń: 5727
  • AT90PWM - Jak skonfigurować przerwanie od Timer0? Kod nie wchodzi do przerwania

    Kolega nas zwiódł tym wpisem, że zawsze mu się udawało skonfigurować Timer. ...a to był chyba zawsze "Zufal" :D CTC to skrót od Clear Timer on Compare - czyść/zeruj Timer kiedy jego licznik wynosi tyle co OCR0A. Kiedy więc OCR0A ustawisz na 100, a OCR0B na 200 to Timer doliczy do 100 i się wyzeruje. Nigdy nie dojedzie do 200 bo to CTC Teraz pomyśl co...

    Mikrokontrolery AVR   26 Wrz 2016 15:12 Odpowiedzi: 8    Wyświetleń: 858
  • Częstotliwość generowania przerwań przez Timer1 Atmegi8

    Witam. Nie mogę dobrać parametrów timera tak by osiągnąć zadaną częstotliwość. Potrzebuje teraz osiągnąć by timer1 się przepełniał 10 razy na sekundę czyli co 100ms. ] Do tej procedury nie musisz wcale zmieniac fusebitów. Możesz w zupełności pracowac z f-taktowania 1MHz wykorzystując wewnętrzny, wbudowany oscylator RC z fabrycznym ustawieniem. Mega8...

    Mikrokontrolery AVR   05 Maj 2019 05:44 Odpowiedzi: 9    Wyświetleń: 681
  • Atmega168 Bascom - Przerwanie co 5us i odczyt 8 bitów

    Myślałeś o tym by zatrzasnąć stan linii danych w rejestrze na zboczu i odczytać zawartość rejestru już później przez CPU. Mógłbyś dodać licznik i mala pamięć SRAM oraz bufor bo tak małego FIFO raczej nie kupisz... Ale moim zdaniem będzie droższe i większe niż dodanie prostego uC który będzie w pętli robił to czego potrzebujesz - ile teraz kosztuje najtańszy...

    Mikrokontrolery Początkujący   18 Lis 2014 09:04 Odpowiedzi: 65    Wyświetleń: 4908
  • Atmega 328p, 6 PWM'ów oraz czas pomiędzy pomiarami ADC

    Zdaje się, że PWM-y generują przerwania a te pochodzą jak stwierdziłeś od zegarów. To w czym problem? Wyzwalaj pomiary A/D od przerwań PWM. Jak będzie za gęsto to dodaj prosty licznik w zmiennej z porównaniem i uruchamiaj przetwornik co n-te przerwanie od TOVn. Biorąc sygnał z wyjścia PWM i dzieląc go przez 2 uzyskasz przebieg o stałym współczynniku...

    Początkujący Elektronicy   16 Paź 2017 21:46 Odpowiedzi: 2    Wyświetleń: 576
  • Książki z przykładami do projektowania układów mikroprocesorowych z T2

    Istnieją dwie cyfrowe metody pomiaru częstotliwości: 1. Pomiar ilości impulsów wzorcowych w trakcie trwania okresu sygnału mierzonego. Konkretnie mierzymy imp. wzorcowe w trakcie trwania połowy okresu - zwykle, gdy jest poziom wysoki. W takiej sytuacji jeżeli zmierzysz N imp. wzorcowych w trakcie połowy okresu, to: Tx=2*N*Tw, gdzie Tx okres przebiegu...

    Mikrokontrolery   24 Sty 2011 15:45 Odpowiedzi: 7    Wyświetleń: 2638
  • [C] Nierówne zliczanie impulsów w przerwaniach INT0 i INT1

    Poniższy zapis: ISR (INT0_vect) { } Oznacza, że deklarujesz funkcję/kod obsługi przerwania INT0 trybie blokującym (ISR_BLOCK). Oznacza to, że jeśli w trakcie wykonywania funkcji obsługującej przerwanie INT0 pojawi się inne przerwanie, np INT1 to nie zostanie ono obsłużone. Rozwiązaniem może być deklaracja ISR z atrybutem ISR_NOBLOCK....

    Mikrokontrolery AVR   27 Paź 2018 14:56 Odpowiedzi: 20    Wyświetleń: 1455
  • [AVR] [C] - Jak ustawić dynamiczny baud-rate w AVR dla UART?

    W sumie jeśli pierwszy bajt wyślesz jako 0b01010101 a program rozpozna, że rozpoczęła się transmisja to dałoby się conajmniej dwukrotnie zmierzyć jaki czas trwa stan wysoki i na podstawie tego można już określić jaką prędkością transmisji nadawca się posługuje. Z tym, że trzeba taki bajt synchronizujący wysłać - a nie zawsze będzie to możliwe. Można...

    Mikrokontrolery AVR   15 Cze 2008 18:10 Odpowiedzi: 6    Wyświetleń: 2517
  • [STM32] Jak optymalnie wyzwalać dwa DAC MCP4728 przez I2C z STM32?

    mozesz tez przy wiekszym nieco udziale rdzenia (ale wtedy bedzie już w pełni automatyczne i jedyne co musisz liczyć to co ile transmisja do ADC ma być wyzwalana). Czas ten musi być większy niż czas transmisji + 210ns. Zauważ że w przypadku 100k I2C ta częstotliwosc nie może być wieksza niż ~590Hz a w przypadku 400k 2370Hz. Jezeli potrzebujesz większej...

    Mikrokontrolery ARM   15 Sie 2016 11:06 Odpowiedzi: 6    Wyświetleń: 1305
  • S7 300 - Jak wyzerować/ustawić szybki licznik przez przerwanie sprzętowe

    witam. Może ktoś pomóc?

    Automatyka Sterowanie PLC   25 Cze 2019 19:35 Odpowiedzi: 1    Wyświetleń: 2727
  • [AtMega8] AtMega8 i Bascom: SPI - dane z Mastera do Slave odbierane po 3 próbach

    Cały problem jest w tym żeby te dwie ATmegi się zsynchronizowały. Przerwanie od SPI występuje po zakończenia transmisji pierwszego bajtu. Zanim nastąpi obsługa przerwania to pierwszy bajt zostanie utracony. Nie mamy też gwarancji że dwie Atmegi "wystrzeliły" :) równocześnie i Slave nie czyta np. 4 bajtu nadanego przez Mastera. Jeżeli to by była np....

    Mikrokontrolery AVR   10 Lut 2012 19:30 Odpowiedzi: 10    Wyświetleń: 3171
  • Atmega8: Jak działa przerwanie z T0/T1 do zmiany stanu LED?

    Wszystko ladnie tlumaczycie tylko ze nie posilkowaliscie sie nota katalogowa i ten program nie bedzie dzialal. ldi r16,0b10000000 out TIMSK,r16 Jesli spojrzec do noty to siodmy bit w TIMSK to OCIE2, czyli nic nie ma wspolnego z T1 czy T0. Mowilem ze ten program jest ZUPELNIE nie czytelny. Na samym pczatku juz kicha jest: .org 0x0005 to wektor od Timer1...

    Mikrokontrolery   25 Wrz 2005 13:31 Odpowiedzi: 8    Wyświetleń: 3014
  • PIC16F628A, 7-segmentowy wyświetlacz - Jakie MOSFETy do poprawy jasności?

    Schematu nie widzę. Napisałem Ci już jakie tranzystory możesz tam zapakować. Kosztują <0,50PLN/sztukę w TME, więc tanio. W dokumentacji do wyświetlaczy sprawdź maksymalny prąd i na początek ogranicz prąd maksymalny do tej wartości (prawdopodobnie 20-60mA). Program do napisania od nowa. 1. Po co zewnętrzny prescaler, jeżeli licznik TIM0 ma wbudowany...

    Mikrokontrolery PIC   30 Paź 2013 23:23 Odpowiedzi: 32    Wyświetleń: 7008
  • Atmega8 - Tym razem; przerwanie sprzętowe - nie działa

    Wyrzuć te delay'e. Zmienną licznik jak radzili koledzy zmień na volatile. Zmień sei(); na SREG |= (1<<7); Jeśli będzie działać, to zapytam jakiej wersji avr studio używasz? [syntax=cpp] #include <avr/io.h> #include <avr/interrupt.h> volatile uint8_t Count = 0; ISR(TIMER0_OVF_vect) { Count++; TCNT0 = 0; } int main(void) { DDRB = 0xFF;...

    Mikrokontrolery Początkujący   03 Kwi 2013 20:44 Odpowiedzi: 30    Wyświetleń: 3789
  • [Mega8][C] Bardzo dokładny zegar - problem z Timer1

    Ja bym zmienil tryb pracy timera, tak, zeby nie trzeba bylo co przerwanie przeladowywac jego rejestrow - np. na CTC. Wtedy tym ile trwa obsluga przerwania sie nie martwisz - bo tam tylko zwiekszasz licznik sekund, a timer liczy swoje, czyli nic sie nie gubi. Kolejna sprawa to kwarc - jaki masz? Zapewne cos w stylu 4,000kHz, czyli sam kwarc ma +/-1kHz,...

    Mikrokontrolery AVR   18 Lis 2009 17:32 Odpowiedzi: 24    Wyświetleń: 4001
  • DS1820 nie odpowiada na reset z AT90S2313 – testowane różne czasy, assembler

    No cóż, jak dla mnie to 2 sprawy do przerobienia : 1. Pomiar czasu na Timer0 - jakaś parka bajtów w SRAM, służąca za licznik, który co przerwanie zmniejsza swoją wartość do zera, ale się nie przekręca. Jak chcemy zmierzyć czas, to cli, zapis licznika, sei i już tylko sprawdzamy czy licznik jest wyzerowany, a w międzyczasie program może wyskoczyc do...

    Mikrokontrolery   28 Mar 2005 22:13 Odpowiedzi: 9    Wyświetleń: 1506
  • [Atmega32][Avr-assembler] - Timer1 w trybie porównania przerwanie co 1s

    Wartość dla 1 sekundy: OCR1A=((częstotliwość procesora)/preskaler)-1 Wartość dla 4 sekund OCR1A=((częstotliwość procesora)/preskaler)-4 Jedynka w podanym przeze mnie wzorze nie oznacza 1 sekundy. Jeden trzeba odjąć z innych względów. Po prostu licznik nie zaczyna liczyć od 1 tylko od 0, więc odliczanie np. do 5 oznacza (0 1 2 3 4 5), czyli 6 impulsów....

    Mikrokontrolery Początkujący   06 Maj 2016 18:29 Odpowiedzi: 22    Wyświetleń: 2190
  • [Atmega8][C++] - ADC i wyświetlacz 7seg nie współpracują

    Wyłącz przerwanie ADC - bit ADIE nie powinien być ustawiony. W przerwaniu timera, kiedy zmieniasz licznik cyfr na 0, odczytaj ADC do zmiennej pomocniczej, a potem tę zmienną rozbij na cyfry. Nie rób tego w pętli głównej bez potrzeby w kółko. W pętli głównej tylko uśpij procesor. ((ADC % 1000) % 100) % 10 to dokładnie to samo co ADC % 10. Nie używaj...

    Mikrokontrolery Początkujący   09 Mar 2013 11:02 Odpowiedzi: 8    Wyświetleń: 2139
  • KrzysioCart Micro SD - rewolucja dla fanów konsoli Pegasus/Famicom.

    http://obrazki.elektroda.pl/5144790300_1... Przedstawiam Wam swoje najnowsze dzieło - KrzysioCart MicroSD - kardridż do konsoli Pegasus, który będzie ostatnim, jaki kupisz - żaden inny już nie będzie potrzebny. Kardridż obsługuję 82% wszystkich gier, jakie wyszły na konsolę NES / Famicom / Pegasus. Obsługiwane są następujące mappery...

    DIY Konstrukcje   22 Gru 2022 18:12 Odpowiedzi: 106    Wyświetleń: 87504
  • Klawiatura matrycowa czy zwykłe przyciski - zakłócenia

    Moim zdaniem jak zrobisz prawidłowe procedury debouncingu (chociaż może nazwa nie jest idealnie trafiona), to żadne zakłucenia nie powinny tutaj przeważyć. Jeżeli np ustawisz tak timer, że przerwanie będzie sie "uruchamiało" co 10ms, następnie sprawdzasz wszystkie kolumny (czy tam wiersze). Tam gdzie wykryjesz wciśnięcie przycisku zwiększy wartość licznika...

    Mikrokontrolery AVR   23 Cze 2010 11:59 Odpowiedzi: 15    Wyświetleń: 3400
  • Atmega128(atmel) - licznik 1-9999. Wyświetlacz 7-segmentowy.

    A liczenie Ci samo idzie bo umieściłeś kod "liczący" w jakimś przerwaniu: SIGNAL(SIG_OVERFLOW0) { licz++; } Nie wiem co to jest, ale wygląda jak przerwanie od Timera0. Dodano po 2 Już pomijam fakt że obsługa przycisków w przerwaniu (bez żadnego odkłócania, bo samo wykorzystanie przerwania to może jeszcze nie jest tragedia) jest trochę...

    Mikrokontrolery   31 Sty 2010 01:42 Odpowiedzi: 6    Wyświetleń: 3966
  • [Attiny2313][avr-gcc] i sprzętowy PWM działający nie do końca jak powinien

    To wywal przed while lub do init() , nie ma sensu aby procesor to ustawiał milion razy na sekundę : Natomiast kod w przerwaniu zmień na : PORTB = (0<<PB1); jest równoważny PORTB = 0; , więc zeruje również PB0 . Operatory logiczne proszę się zaprzyjaźnić... ;) Ostatecznie proponuję takie kodzio:[syntax=C]#include <avr/io.h> #include <avr/interrupt.h>...

    Mikrokontrolery   02 Sie 2012 21:01 Odpowiedzi: 2    Wyświetleń: 1413
  • ATMega8 - Jakie rejestry timera zerować przed uśpieniem mikrokontrolera?

    Pierwszy i bardzo poważny problem zauważyłem w funkcji TIMER1_COMPA, jest nim linijka rjmp uspij. Gdy się wykona, to przerwania pozostaną zablokowane, oraz kilka bajtów na stosie zostanie uwięzionych - głównie adres powrotu z przerwania. Można temu zaradzić poprzez wstawienie pop + pop + sei przed rjmp. Drugi problem, to karygodna pętla główna - dławienie...

    Mikrokontrolery AVR   15 Sie 2014 19:22 Odpowiedzi: 17    Wyświetleń: 2613
  • [ATMEGA8] ATMEGA8 C - Przerwanie co 1s przy 16MHz i preskalerze 1024 nie działa poprawnie

    A może przyczyną jest nie wyzerowany licznik preskalera (strona 75): Bit 0 PSR10: Prescaler Reset Timer/Counter1 and Timer/Counter0 When this bit is written to one, the Timer/Counter1 and Timer/Counter0 prescaler will be reset. The bit will be cleared by hardware after the operation is performed. Writing a zero to this bit will have no effect. Note...

    Mikrokontrolery AVR   28 Kwi 2011 17:38 Odpowiedzi: 13    Wyświetleń: 3993
  • [BASCOM] Jak wyeliminować migotanie wyświetlacza LED w termometrze BASCOM?

    W bascomnie ciężko zrobić LED + Ds18b20 wszytko psuje Waitms 750. Zwiększ do 8 a jak możesz do 16MHz kwarc. A od kiedy to musimy czekać 750ms nie robiąc nic innego? Od czego mamy timery? Przepraszam najmocniej Kolegę, ale jeśli Kolega tego zrobić nie potrafi to: 1. Nie oznacza że się tego zrobić nie da - ja nie potrafię zbudować komputera klasy PC...

    Mikrokontrolery   11 Lut 2013 10:10 Odpowiedzi: 46    Wyświetleń: 8542
  • RC5 - Kolejny, ulepszony gotowiec BASCOM bez Getrc5

    Witam Jak wielu spotkałem się z problemem problemem kłopotliwej obsługi pilota z RC5. Po poszperaniu w necie wpadłem na http://www.elektroda.pl/rtvforum/topic20... ten temat. Jak się okazało wszystko na tym programie pracowało, ale nie zawsze. Kłopotem było napisanie programu "pod pilota". Oczywiście pochwała dla Sabotaz'a który problem "ruszył"...

    Mikrokontrolery AVR   05 Lut 2015 15:56 Odpowiedzi: 4    Wyświetleń: 1485
  • Dlaczego VHDL (EPM240T100) jest lepsze od rysowania schematów?

    Użyłem tutaj dwa razy bloku process, który (jak mi się wydaje) działa podobnie jak przerwanie w procesorze i tutaj rodzą się pytania, dlaczego jak w procesie dam wyłącznie count_24_bit <= count_24_bit + 1 ; to nic się nie dzieje, a dopiero kiedy obuduje to jakimś if'em to działa? no i czy takie procesy są wykonywane równolegle, czy mają jakieś priorytety?...

    Programowalne układy logiczne   18 Paź 2020 20:06 Odpowiedzi: 19    Wyświetleń: 1302