przerwanie timera atmega8

Znaleziono około 1453 wyników dla: przerwanie timera atmega8
  • Dlaczego przerwanie timera w ATmega8 nie działa? Dioda na PB1 nie świeci

    Witam, jeśli to nie pomyłka przy przepisywaniu to powinno być: SIGNAL (SIG_OVERFLOWx) gdzie x to jeden lub zero w zależności o który timer Ci chodzi. Pozdrawiam, Grzesiek.

    Mikrokontrolery   21 Kwi 2005 20:07 Odpowiedzi: 18    Wyświetleń: 10052
  • REKLAMA
  • Dlaczego przerwanie przepełnienia timera 0 nie działa na Atmega8 w avr-gcc?

    wiesz... coś mi chodzi po głowie, że przy którejś wersji gcc albo avr-libc nastąpiły jakieś zmiany nazewnictwa procedur obsługi przerwań. Głowy nie dam że tak było, ale w każdym razie u mnie procedura obsługi od przerwania pochodzącego od przepełnienia timera 0 nazywa się: ISR (TIMER0_OVF_vect) { ... } A druga rzecz, to z całą pewnością...

    Mikrokontrolery   08 Mar 2011 14:44 Odpowiedzi: 18    Wyświetleń: 3129
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (2min)...
  • [ATMEGA8] ATMEGA8 C - Przerwanie co 1s przy 16MHz i preskalerze 1024 nie działa poprawnie

    Hmmm, ... Możesz wkleić aktualny kod łącznie z zerowaniem preskalera? Czy wcześniej używasz Timera do innych celów?

    Mikrokontrolery AVR   28 Kwi 2011 17:38 Odpowiedzi: 13    Wyświetleń: 3993
  • REKLAMA
  • Timer na Atmega8 w Bascomie - nie działa poza symulatorem, co sprawdzić?

    Witam. Dzięki temu $regfile = "M8DEF.dat" kompilator wie z jakim procesorem ma do czynienia. Jeżeli tego nie miałeś w pierwotnym programie, to kompilator brał tę informację z ustawienia w Opcjach. A pewnie był tam wpisany procesor, który nie miał timera nr 2. To samo z przerwaniami - wektor przerwań od timera nr 0 jest różny dla różnych typów procesorów...

    Mikrokontrolery   31 Sty 2007 08:08 Odpowiedzi: 14    Wyświetleń: 1891
  • [Atmega8] Jak zmierzyć czas stanu wejścia z dokładnością 100ms na Atmega8 w C?

    //timer 1 16bit konfiguracja (ICP1) TCNT1=0; //ustawienie poczatkowej wartosci timera 1 TCCR1B |= (1<<ICES1); //pomiar na narastajacym zboczu TIMSK |= (1<<TICIE1) | (1<<TOIE1); //zezwolenie na przerwanie od ICP i od overflow TCCR1B |= (1<<CS12) | (1<<CS10) ; //prescaler 1024...

    Mikrokontrolery AVR   06 Sie 2011 18:22 Odpowiedzi: 53    Wyświetleń: 7576
  • AVR ATmega8 Timer0 CTC – konfiguracja rejestrów do przerwania co 2ms

    Skoro 122 wywołuje zmianę stanu diody co sekundę, to gdy doliczysz do 0.244 to będziesz miał przerwanie co 2ms :D Pojedyncze przerwanie jest wołane co 8 milisekund. Albo zmień preskaler albo użyj innego timera i po ludzki włącz ctc

    Mikrokontrolery Początkujący   03 Kwi 2015 20:23 Odpowiedzi: 39    Wyświetleń: 3945
  • Atmega8 - Dlaczego flaga TOV0 nie aktywuje diody LED1 w ISR?

    Jak ma włączone przerwania przepelnienia to jak się flaga ustawi, przerwanie nastąpi, flaga się skasuje i w pętli zawsze będzie nieustawiona. Dlatego pytałem: Przerwania od timera wyłączone? Odpowiedział: Przerwania włączone. Wnioskuję więc, że timer stoi - źle ustawione bity CS ale ciężko coś powiedzieć, bo kod programu jest ściśle tajny. Usunąłem...

    Mikrokontrolery AVR   14 Sty 2019 18:21 Odpowiedzi: 10    Wyświetleń: 588
  • REKLAMA
  • Jak uzyskać precyzyjne przerwanie 1 kHz na ATmega8 przy 16 MHz?

    (at)atom1477 Jeśli ja wygeneruje przerwanie co 1 ms, to muszę mieć potem możliwość coś zrobić, czyli w przerwaniu muszę chociaż zmienną inkrementować, albo zrobię toggle pin i połączenie z głównym MCU przez INT0 tak jak pisałem post wcześniej . Mam kwarc 20ppm i nie jest on wystarczająco stabilny, dlatego poszedłem na DS3231 i źródło timera od T1....

    Mikrokontrolery AVR   26 Cze 2016 16:44 Odpowiedzi: 32    Wyświetleń: 2841
  • Gasniecie LCD przy dużej czestotliwośći. atmega8

    Jednym z wielu błędów w Twoim kodzie jest przetwarzanie w pętli głównej zmiennych adc1 i adc2 zapisywanych w przerwaniu timera. To są zmienne 16-bitowe, więc pomiędzy odczytem jednej i drugiej połówki przerwanie timera może zmienić wartość zmiennej. Blokuj przerwania na czas ich odczytu, czytaj je w pętli głównej raz, skopiuj do innej zmiennej roboczej...

    Mikrokontrolery   25 Lut 2015 00:03 Odpowiedzi: 7    Wyświetleń: 918
  • ATMega8 - maksymalna częstotliwość pomiaru bez preskalerów, kod w Bascom

    jak chcesz takie duze czestotliwości mieżyć to musisz użyć timera żeby liczył zewnętrzne impulsy, wtedy drógim timerem wyzwalasz przerwanie co określony czas (im dłuższy tym lepszy bo pomiar dokładniejszy) liczysz ile było ilmpusów z zewnątrz w okreslonym czasie. wydaje mi się że tą metodą dało by sie mieżyć nawet do 100Mhz ale jest jedno zalożenie...

    Mikrokontrolery   26 Sty 2006 22:05 Odpowiedzi: 3    Wyświetleń: 2613
  • Atmega8 - Mikrokontroler nie chce wyjść z uśpienia

    Nie pamiętam, jak działa makro sleep_mode(); ale przecież przechodzisz do trybu uśpienia w przerwaniu od timera a jak wiadomo wejście w dowolną procedurę obsługi przerwania blokuje globalne zezwolenie na obsługę przerwań, wiec prawdopodobnie w chwili uśpienia skutecznie blokujesz także przerwanie zewnętrzne, przez co nie możesz później wzbudzić procesora...

    Mikrokontrolery AVR   25 Sie 2014 00:00 Odpowiedzi: 4    Wyświetleń: 1002
  • Maksymalna częstotliwość kwarca wewnętrznego Atmega8 i konfiguracja Timer1

    Jaka jest maksymalna częstotliwość pracy kwarca wewnętrznego Atmegi8? ATmega nie ma w środku kwarc u , tylko oscylator RC, to tak gwoli ścisłości. Mam ustawione 4Mhz i kiedy ustawiam prescaler w timerze 16bitowym na 64 (TCCR1B|=1<<CS11|1<<CS10;) tak aby przerwanie spowodowane przepełniniem timera było wywoływane mniejwięcej co 1s 4000000/64/2^16...

    Mikrokontrolery   26 Wrz 2007 12:49 Odpowiedzi: 2    Wyświetleń: 2446
  • ATmega8 - Timer w trybie CTC i wykorzystanie przerwań.

    Kiedyś napisałem prosty przykład użycia Timera w trybie CTC dla AVR w AVR Studio w języku C. W załączniku znajduje się ten gotowy kompletny program powodujący przerwanie od porównania (Compare) co około 250 ms i generujący przy okazji falę prostokątną na wyjściu OC0A. Otrzymujemy w ten sposób przebieg prostokątny na tej nóżce o okresie 2 Hz (2x250 ms...

    Mikrokontrolery AVR   12 Sty 2014 10:47 Odpowiedzi: 9    Wyświetleń: 6885
  • 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
  • REKLAMA
  • Atmega8 debugowana w avr studio i jeszcze raz counter0

    zrób to mniej więcej tak: .INCLUDE "m8def.inc" .cseg ; początek segmentu pamięci programu .org 0 rjmp RESET ; wektor ZEROWY (po resecie) .org OVF0addr ; wektor przerwania od przepełnienia Timera0 rjmp Przerwanie_T0 ; i tu właśnie skok do obsługi tego przerwania RESET: LDI R16, HIGH( RAMEND) OUT SPH, R16 LDI R16, LOW( RAMEND) OUT SPL, R16 ; porządek...

    Mikrokontrolery   30 Gru 2006 20:02 Odpowiedzi: 4    Wyświetleń: 1157
  • Miernik częstotliwości ATMEGA8 i MB510 (max 2,1GHz)

    272 to taka nieciekawa wartość do mnożenia. Ja zrobiłem tak: Przerwania z TIM0 i TIM1 TIM0 zlicza impulsy z wejścia zliczającego, i gdy się przepełni jest króciutkie przerwanie inkrementujące parę 3 rejestrów. TIM1 zgłasza przerwanie równiutko co pół sekundy. Na samym początku obsługi przerwania jest odczytywana wartość impulsów z TIM0, i jest on resetowany....

    Mikrokontrolery   09 Sie 2007 12:42 Odpowiedzi: 16    Wyświetleń: 6755
  • [Atmega8] Atmega8 Bascom - Nadpisywanie zmiennej w przerwaniu int0/int1, reset timer1

    Ten sam kod, który zaprezentowałem w pierwszym poście , natomiast przerwanie wywołane już na nodze portb.0 i działa zmienna nie jest nadpisywana. Cała reszta kodu bez zmian poza zmianą przerwania. Przerwania skonfigurowane prawidłowo. Moze przerwania masz skonfigurowane prawidlowo... ale..... Czy mozesz wyjasnic w jakim celu, w obsludze przerwania...

    Mikrokontrolery AVR   09 Maj 2009 18:31 Odpowiedzi: 14    Wyświetleń: 2821
  • Wykaz wszystkich pinów Atmega8 po polsku - gdzie znaleźć?

    PC6 (RESET) - opcjonalnie nóżka resetująca procesor PD0 (RXD) - odbiornik UARTA PD1 (TXD) - nadajnik UARTA PD2 (INT0) - przerwanie zewnętrzne PD3 (INT1) - przerwanie zewnętrzne PD4 (XCK/T0) - taktowanie USARTA albo impulsy dla timera VCC - zasilanie cyfrowe GND - masa PB6 (XTAL1/TOSC1) -do podłączenia kwarcu (wejście) PB7 (XTAL2/TOSC2) -do podłączenia...

    Mikrokontrolery   02 Gru 2005 11:01 Odpowiedzi: 7    Wyświetleń: 1938
  • Atmega8 - Jak zredukować opóźnienia przy obsłudze przycisków i czujników DS18B20?

    Witajcie, W oparciu o Atmegę8 zrobiłem sobie prosty sterownik. Odczytuję temp. z dwóch czujników ds18b20 i na jej podstawie steruje elektrozaworem. Chciałbym dodatkowo wprowadzić obsługę 3 przycisków. Problem w tym, że sam odczyt temp. z czujek powoduje pewne opóźnienia np. czas konwersji jest dosyć spory bo 750ms w związku z tym reakcja na przyciśnięcie...

    Mikrokontrolery   17 Gru 2013 22:06 Odpowiedzi: 12    Wyświetleń: 1851
  • Optymalizacja przerwań w AVR-GCC na Atmega8 bez zbędnych operacji na stosie

    $katalog_WinAVR$/doc/avr-libc/avr-libc-u... Tworzysz osobny plik w asemblerze (.S, nie .s) zawierający procedurę obsługi przerwania, kompilujesz do pliku .o i linkujesz z pozostałymi plikami. W dołączanym wo WinAVR szablonie Makefile jest przewidziane miejsce na wypisanie źródeł w asemblerze (ASRC = $tu wpisz nazwy plików$). Przykład,...

    Mikrokontrolery   22 Wrz 2007 11:50 Odpowiedzi: 4    Wyświetleń: 2034
  • Atmega8 – program do sterowania LED, zliczanie impulsów Z1, regulacja częstotliwości

    No Dobra program juz prawie napisałem i głowiłem sie nad wersja ze zmiennym PWM+f... ale z tego co mi odpisałes to wnioskuję ze coś tu mi nie gra... A nie możnaby programowo realizować ten restart co 80ms? Moze napisz dokładniej co to ma być a coś doradzimy :) Pozdro No wlasnie o to chodziło by nie restartorwać tego zewnetrznie bo chyba prosciej zaimplementowac...

    Mikrokontrolery   13 Maj 2007 13:20 Odpowiedzi: 8    Wyświetleń: 2651
  • Automatyczna nawijarka do przystawek gitarowych na ATmega8

    http://obrazki.elektroda.pl/2954571700_1... Davide Gironi skonstruował automatyczną nawijarkę do przystawek gitarowych. Jeśli ktokolwiek z Was wykonywał kiedyś taki pick-up, to wie, jak trudne i jednocześnie, jak ważne jest dobre nawinięcie jego uzwojenia. Zaprezentowana nawijarka CNC pozwala istotnie uprościć ten proces. Układ sterowany...

    DIY Zagranica   21 Lut 2023 20:20 Odpowiedzi: 10    Wyświetleń: 17502
  • HPS 2014 Hybrydowy laboratoryjny zasilacz sieciowy

    http://obrazki.elektroda.pl/9589280700_1... HPS 2014 Hybrydowy laboratoryjny zasilacz sieciowy. Parametry użytkowe zasilacza w skrócie: 1. Wykorzystanie tanich i łatwo dostępnych elementów. 2. Wydajność prądowa min 3A (dla niskich napięć może dochodzić do 5A). 3. Rozdzielczość DAC 12bit. (filtrowany PWM 4.9kHz) 4. Rozdzielczość ADC...

    DIY Konstrukcje   15 Wrz 2015 13:51 Odpowiedzi: 11    Wyświetleń: 7389
  • Szopka Bożonarodzeniowa

    Witam. Chcę przedstawić szopkę Bożonarodzeniową. http://obrazki.elektroda.pl/9749389200_1... Całość wykonana własnoręcznie z pomocą kochanej żonki. Opiszę co i jak. Szopka ma ruchomy żłobek, dwie pochodnie i ognisko, na filmikach wszystko widać. Opiszę konstrukcję, do sterowania wszystkim użyłem Atmegi8. Trzy sprzętowe kanały PWM posłużyły...

    DIY Konstrukcje   29 Gru 2016 14:24 Odpowiedzi: 4    Wyświetleń: 5991
  • Termostat, uniwersalny sterownik urządzeń ~230V

    http://obrazki.elektroda.pl/5336859500_1... Projekt został zrealizowany na potrzeby sterowania urządzeniami zasilanymi z sieci 230V , świetnie nadaje się jako sterownik do wytrawiarki lub innych tego typu urządzeń, w których konieczne jest utrzymywanie stałej temperatury. Układ oparty jest o mikrokontroler ATmega8 firmy Atmel , który...

    DIY Konstrukcje   24 Lut 2018 08:59 Odpowiedzi: 21    Wyświetleń: 11949
  • Atmega8 - Odblokowanie globalnych przerwań hamuje pracę mikrokontrolera

    pomyliłes timery, zrobiłeś przerwanie od timera 2 a włączyłeś timer 1.

    Mikrokontrolery AVR   21 Lis 2011 20:57 Odpowiedzi: 12    Wyświetleń: 2498
  • Atmega8 timer i przerwanie INT1 - jak wstawić do programu?

    Chyba o to chodziło. Faktycznie tak to ma działać (instrukcja). Wielkie dziękuję. A co do wyglądu, hmm.. trochę poprawiłem, ale tamto było bardziej czytelne (dla mnie) :), nieistotne, już sobie radzę pomału w treści [syntax=c] #define F_CPU 12000000UL #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> int main()...

    Mikrokontrolery AVR   14 Maj 2012 07:12 Odpowiedzi: 40    Wyświetleń: 5719
  • [ATMEGA8] ATMEGA8 BASCOM – Odbiór kodów RC5 w pętli głównej działa, w INT0 zawsze 255

    Dziwne jest to że w starszej wersji ten kod działa, a raczej nie powinien :). W helpie pisze że funkcja GetRC5 wykorzystuje timer0 i przerwanie od tego timera. Umieszczenie tej funkcji w przerwaniu INT0 wydaje się być błędne. Przerwanie od timera się nie wykona, dopóki nie zakończy się obsługa przerwanie INT0.

    Mikrokontrolery AVR   18 Sty 2012 23:55 Odpowiedzi: 12    Wyświetleń: 6229
  • Timer do silników rakietowych/fajerwerków etc.

    Wstęp Modelarstwo rakietowe to piękny sport uprawiany przez nielicznych. Jego piękno tkwi w modelach rakiet oraz wielu silników rakietowych które tworzą amatorzy tego sportu. Elektroniczne moduły zapalające silniki są nieodzownym elementem stanowiącym bezpieczeństwo tego sportu. Moja propozycja timera (spark ignition system) do silników rakietowych...

    DIY Poczekalnia   17 Lip 2014 07:52 Odpowiedzi: 2    Wyświetleń: 5883
  • Konfiguracja timerów w Atmega8 - timer1 nieprawidłowo odlicza czas

    Hmm. Dobrze napisałeś, że Tobie się wydaje, że obydwa Timery odliczają dobrze, a tak nie jest. Wydaje mi się, że chciałeś uzyskać przerwanie co 8ms ? Więc musisz po każdym przeładowaniu timera go ładować początkowa wartością. Czyli dla timer0 to będzie 6, a dla timera1 to będzie 57536. Ale i tak nie wiem czemu musisz używać dwóch timerów by generować...

    Mikrokontrolery AVR   05 Paź 2011 14:08 Odpowiedzi: 7    Wyświetleń: 3101
  • ATMEGA8 – konfiguracja timera do zliczania impulsów z czujnika i RPM na LCD 4x20

    Timer- np. Timer1- jako licznik zlicza impulsy zewnętrzne. Podane na odpowiednią końcówkę- T1 w wypadku ATmega8. Nie potrzebuje żadnego preskalera- bo preskaler dzieli impulsy z zegara- a tu nie ma co dzielić. Ustawiamy bity CS10-CS12 na external clock source- falling lub rising. Czy ustawiamy końcówkę T1 jako wejście- nie pamietam. Można ustawić. Ilość...

    Mikrokontrolery AVR   27 Sie 2010 20:59 Odpowiedzi: 22    Wyświetleń: 4024
  • [timer0] Jak uzyskać przerwanie co 0,5s, 1s, 2s na Atmega8 z timerem0?

    Przy ustawieniu kwarcu na 1MHz i preskalera na 1024 w przypadku tego timera przerwanie bedzie miało miejsce co 0,262s (tak mi podaje taki mały programik). Czy dla 8 bitowego timera jest w takim razie w jakikolwiek sposób realizowalne przerwanie co np 1sek? Czy tylko mogę wykorzystać do tego timer 16bitowy?

    Mikrokontrolery   25 Lut 2006 09:02 Odpowiedzi: 6    Wyświetleń: 1650
  • Konfiguracja timera 1 na ATMEGA8 dla funkcji ~244Hz bez bibliotek

    Okej, jakoś sobie poradziłem z tą konfiguracją timera. Natomiast pojawił się inny problem. Ogólnie to próbuję zrobić multipleksowe sterowanie dwoma wyświetlaczami 7-segmentowymi z użyciem układu PCF8574. Sytuacja wygląda w ten sposób, że w pętli głównej loop() chcę modyfikować dwie zmienne odpowiadające każdej z cyfr, a przerwania chciałem użyć jako...

    Arduino   28 Sie 2020 15:01 Odpowiedzi: 7    Wyświetleń: 510
  • Atmega8 - Przerwanie CTC nie działa, dioda świeci cały czas

    po ustawieniu rejestrów podanych wyzej nic sie nie zmienia [syntax=c]void timer_init() { TCCR1A |= (1 << WGM12)|(1 << CS12)|(1<<COM1A0);//CTC ,preskaler256 TCNT1 = 0; //wartosc poczatkowa timera TIMSK |= (1<<OCIE1A); // przerwanie Compare Match A OCR1A = 31250;//porównanie wartosci (około 1s) }[/syntax]

    Mikrokontrolery Początkujący   25 Mar 2015 11:58 Odpowiedzi: 15    Wyświetleń: 1269
  • Jak zrobić prosty alarm na Atmega8 z kontaktronem i buzzerem?

    http://mikrokontrolery.blogspot.com/2011... uznajmy, że zrobiłbym tak, iż w tym przerwaniu miga sobie dioda czuwania jak mogę zrobić aby ta dioda gasła po włączeniu alarmu PORTC &= ~czuwanie nie działa :(, pytanie brzmi - Jak zatrzymać przerwanie od przepełnienia timera ?

    Mikrokontrolery Początkujący   10 Wrz 2014 20:15 Odpowiedzi: 10    Wyświetleń: 1593
  • Atmega8 Bascom - Nie działa obsługa timera gfdzie jest błąd

    A co jest nie tak? Możesz opisać dokładniej problem. Load Timer0 , 1 Po tej komendzie licznik przepełni się po jednym cyklu. Czy na pewno to ma Tylko jeden cykl? Ciągle jest wykonywane przerwanie i dlatego procesor nie ma czasu na resztę operacji.

    Mikrokontrolery Początkujący   06 Lis 2013 07:50 Odpowiedzi: 16    Wyświetleń: 2580
  • [atmega8] Jak zliczać impulsy między pomiarami czujnika na ATmega8 w Bascom?

    witam jest proste w asm ale w c też nie powinno być problemu. Przerwania INT0 i INT1 mogą być wyzwalane zmianą stanu napięcia wysokim lub stanem niskim . Odpowiednio ustawić bit w rejestrze MCUCSR. Ustawić bit aktywujący przerwanie w rejestrze GICR. mierzysz czas przez odczyt TIMERa

    Mikrokontrolery AVR   15 Wrz 2010 17:54 Odpowiedzi: 2    Wyświetleń: 1995
  • atmega8 - możliwe przyczyny dziwnego zachowania pamięci w programie z przerwaniami

    Masz dwa poważne błędy: alokacja dużej tablicy na stosie w przerwaniu timera i odblokowanie przerwań w przerwaniu timera. Ten drugi błąd służy zapewne do zamaskowania poważniejszego błędu - koncepcyjnego. Przerwanie timera nie powinno przeszkadzać w obsłudzie przerwania UART, a zapewne przeszkadza, bo wykonuje się za długo.

    Mikrokontrolery AVR   21 Sie 2015 09:34 Odpowiedzi: 26    Wyświetleń: 1506
  • Który kod lepiej opóźnia program na ATmega8 z zegarem 1MHz?

    OK, uzywam juz w tym celu timera... Tylko nie do konca orientuje sie z preskalerem i czestotliwoscia.. Tzn, jak uzykac jakies w miare dokladne wartosci...? Mam uC pracujacy na wew. oscylatorze 1MHz [ATMega8, Timer0]... Chcialbym, zeby przerwanie wywolywalo sie co 1 albo 10ms, jak dobrac preskaler i wartosc poczatkowa timera [8bitowego]?

    Mikrokontrolery   28 Wrz 2005 19:42 Odpowiedzi: 8    Wyświetleń: 1071
  • [Atmega8] Atmega8 i TSOP1736: Błąd w odbiorze RC-5, ekran LCD się zawiesza

    TIMSK ^= (1 << OCIE1A); - powoduje zmiane stanu pinu na przeciwny, jesli chcesz wyzerowac to stosuj TIMSK &=~ (1 << OCIE1A); a jesli ustawic to TIMSK |= (1 << OCIE1A); Nastepne - to, ze blokujesz przerwania od timera nie znaczy, ze timer w tym czasie nie liczy - w efekcie pierwsze przerwanie wcale nie nastepuje po 1778 cyklach...

    Mikrokontrolery AVR   06 Lis 2009 22:18 Odpowiedzi: 6    Wyświetleń: 1958
  • Atmega8 - Bascom - reset przy wywołaniu funkcji w przerwaniach, jak to naprawić?

    Nie jestem pewny czy procesor zdąży wykonać to co masz w tym przerwaniu , zanim przyjdzie następne (mam na myśli wszystko ).Program w przerwaniu ma być krótki , chyba że pierwsza linijka jest taka " Disable timer0 " , ale w twoim programie taka instrukcja raczej odpada. I jeszcze jedno , co się dzieje jeżeli podczas transmisji po i2c lub 1Wire przyjdzie...

    Mikrokontrolery AVR   12 Lis 2012 21:18 Odpowiedzi: 10    Wyświetleń: 2022
  • [Atmega8][assembler] Przerwanie z timera 0 nie działa

    Bo jak ma działać? Widać kolega nie do końca rozumie mechanizm przerwań, skoro czeka na przerwanie INT0, a włącza przerwanie przepełnienia Timera0. Adresem przerwania przepełnienia Timera0 jest OVF0addr, a nie INT0addr. Przerwanie od INT0 wyzwalane jest ZEWNĘTRZNIE zboczem lub stanem na fizycznym wejściu INT0 mikrokontrolera, a nie Timerem. Skąd ten...

    Mikrokontrolery AVR   07 Lis 2010 06:58 Odpowiedzi: 2    Wyświetleń: 2422
  • Atmega8 - Tym razem; przerwanie sprzętowe - nie działa

    To może po kolei: 1. Co chcesz uzyskać i jak w związku z tym chcesz zaprogramować timery? 2. Jaka jest częstotliwość procesora i czy ją poprawie zdefiniowałeś? 3. Nie uruchamiaj timera przed jego zaprogramowaniem - robisz to obecnie z oboma timerami. 4. Popraw tę bzdurę: licznik = 0; for(licznik==0;licznik<100;) 5. Wyrzuć ze swojego kodu przełączanie...

    Mikrokontrolery Początkujący   03 Kwi 2013 20:44 Odpowiedzi: 30    Wyświetleń: 3789
  • ATMega8 USART – ryzyko utraty danych przy odbiorze bez przerwań, jak zapobiec?

    Przeczytałem wątek i nie rozumiem jednego: 1. Timer 2 dyktuje tempo. 2. Timer 1 (obsługiwany całkowicie programowo) decyduje o długości trwania impulsu. Czemu nie zrobisz tak, że w przerwaniu Timera2 ustawiasz Timer 1 i KOŃCZYSZ JEGO OBSŁUGĘ, a resztę (tzn. wyłączenie nóżki) realizujesz przez przerwanie Timera 1? (BTW, moim zdaniem to wszystko da się...

    Mikrokontrolery AVR   02 Mar 2011 22:38 Odpowiedzi: 33    Wyświetleń: 3727
  • Zegarek na LCD i atmega8 ,brak precyzji...i Timer'ów.

    Tak, lecz wymaga to wpisania do timera wartości początkowej <>0 ... Czyżby :?: OCR1A=4000000/256-1,preskaler=256, Mode 4(CTC) i ... masz przerwanie co 1s , bez przeładowywania TCNT1 . To tylko jedna z kilku możliwych konfiguracji Timera1. Piotrek

    Mikrokontrolery   22 Wrz 2007 16:04 Odpowiedzi: 38    Wyświetleń: 5731
  • Jak skorygować spóźnianie zegara na Atmega8 z kwarcem 7,3728MHz?

    witam problem w tym że wejście do przerwania i wpisanie nowej wartości do timera trwa kilka taktów i przez to powstają te przekłamania zamiast próbować z dziwnymi poprawieniami danych wykorzystaj przerwanie "compare" i ustaw automatyczny reset wartości timera. wtedy wszystko było by automatycznie.... ;) pozdrawiam

    Mikrokontrolery   19 Lip 2010 20:55 Odpowiedzi: 10    Wyświetleń: 3343
  • [Bascom] ATmega8 Bascom – jak zmierzyć czas trwania jednej pętli Do-Loop za pomocą Timera?

    No niestety: zajrzyj do helpa . Dokładniej tu, gdzie jest opisane jak: - skonfigurować timer - włączyć timer - wyłączyc timer - odczytać stan timera Pseudokod: SKONFIGURUJ TIMER ZRESETUJ TIMER DO WLACZ TIMER (tu kod ktory sprawdzasz) WYLACZ TIMER ODCZYTAJ TIMER (tu obsluga wartosci wzietej z timera) ZRESETUJ TIMER LOOP Zeby takie pomiary...

    Mikrokontrolery AVR   27 Paź 2010 09:46 Odpowiedzi: 7    Wyświetleń: 5362
  • Ulepszenie kodu sterownika silnika krokowego na ATmega8 w C - porady?

    Co do timera to na wejście podajesz sygnał podzielony przez prescaler, czyli: 1, 8, 64, 256 lub 1024. Potem możesz za pomocą trybu CTC osiągać dodatkowy podział przez wartość regulowaną z zakresu 1-256 dla wersji 8-bit lub 1-65536 dla 16-bit. A co do uruchomienia na timerze - wrzucasz ten kod do timera i wywalasz ręczne delaye - kod wykona się jednorazowo...

    Mikrokontrolery AVR   10 Maj 2013 17:07 Odpowiedzi: 15    Wyświetleń: 3078
  • Jaki mikrokontroler wybrać do...?

    Witam. Przeczytałem cały temat od początku do końca i nie znalazłem dużo informacji na temat PIC. Kilka osób (m.in. McRancor) pisało że woli PIC od AVR. A ja mam pytanie czemu?? Weźmy np popularnego ATmega8 i PIC16F84a. Porównując te dwa procki, PIC (wg mnie) wypada słabo. Po pierwsze cena, brana z jednego sklepu: ATmega 5zł, PIC 9zł. Po drugie ten...

    Mikrokontrolery Początkujący   15 Kwi 2019 17:34 Odpowiedzi: 1285    Wyświetleń: 267430
  • ATmega8 bez galwanicznej separacji, gorąca masa – wpływ zakłóceń 230V na MCU

    Poprawilem juz te volatile'y i dalem nowe funkcje obslugi przerwan. BTW. Czy przerwanie timera powinno byc tak: [syntax=c]ISR(TIMER1_OVF_vect) { display(); //do PWM to triac motorPwm(); }[/syntax]? Ale nijak nie wiem w jaki sposob: 1) zawiesic wykonanie przerwan, gdy zmieniam obroty silnika 2) poczekac te 4 sekundy na zatrzymanie sie silnika, przeciez...

    Mikrokontrolery AVR   04 Sty 2012 18:40 Odpowiedzi: 56    Wyświetleń: 9146
  • Jak skonfigurować Timer1 na ATmega8 dla IRDA z przerwaniem co 32us?

    Potrzebuję pomocy w konfiguracji Timer1 (ten mam wolny) ewentulanie modyfikacja obecnej konfiguracji Timer0. Obecna konfiguracja jest dla odliczania odpowiedniego czasu dla ramek RC5 odbieranych przez odbiornik TSOP322 przy taktowaniu procesora z F_CPU=8MHz, w celu oszczędności energii chcę zrobić odbieranie przy częstotliwości 1MHz. Jak widać z obsługi...

    Mikrokontrolery Początkujący   15 Lut 2014 14:12 Odpowiedzi: 3    Wyświetleń: 1080
  • [Atmega8] Jak przekształcić wartość z timera1 Atmega8 na obroty na minutę?

    Ja też Bascoma nie znam więc Ci wytłumaczę jak ja bym to zrobił, może Ci się przyda. Masz zmienną impuls która jest inkrementowana w przerwaniu od zdarzenia zewnętrznego np zboczem opadającym. Ustawiasz sobie jeden Timer zgłaszający przerwanie (np od przepełnienia) powiedzmy co 1 ms. Deklarujesz zmienną milisekunda którą za każdym razem inkrementujesz...

    Mikrokontrolery AVR   10 Kwi 2013 22:59 Odpowiedzi: 18    Wyświetleń: 3296
  • [bascom] Atmega8 Bascom – jak płynnie regulować częstotliwość PWM 10Hz–100kHz i wyświetlać?

    Propozycja z 2 timerami może jest koncepcyjnie prostsza, ale zobaczmy - zalecana fext dla timera powinna być < fclk/2.5, czyli TOP timera generującego ustawiasz na min. 2 -> fext = fclk/3 (wypełnienie 1/3 lub 2/3). Stąd widać, że potrzebujesz 3x większej częstotliwości zegara niż w przypadku rozwiązania z pojedyńczym timerem. Poza tym z dwoma...

    Mikrokontrolery   04 Sty 2009 13:01 Odpowiedzi: 17    Wyświetleń: 7440
  • wysyłanie IR przy użyciu UART w oparciu o atmega8

    Mija się. Kluczuj wyjście timera programowo w przerwaniu timera. Ponieważ przerwanie to będzie zgłaszane z częstotliwością 38 kHz, procesor musisz pędzić na minimum 8 MHz (lepiej więcej) i praktycznie żadnego innego przerwania już nie obsłużysz - w tym musisz zrobić wszystko.

    Mikrokontrolery   11 Sty 2014 12:01 Odpowiedzi: 9    Wyświetleń: 1998
  • Czy można używać RTC i trybu Power Down w Atmega8 z Bascom?

    Według niej w trybie idle zatrzymany zostaje zegar CPU, zegar Timerów działa nie przerwanie. Zatem nie będą występowały ŻADNE problemy z stabilnością zegara RTC, gdy: -w pętli głównej procesor będzie wprowadzany do trybu IDLE --w przerwaniu od TIMERA co 4ms odświeżane są wyświetlacze LED - Jest zgłaszane co przerwanie od licznika TIMER2 pracującego...

    Mikrokontrolery Początkujący   15 Wrz 2012 09:57 Odpowiedzi: 29    Wyświetleń: 4692
  • [Atmega8][winavr] problem z konfigiracją Timera1 PWM

    W celu zezwolenia na przerwanie TIMER1_COMPA należy ustawić flagę OCIE1A, a nie TICIE1. Co do trybu PWM to chyba tylko w takim trybie mogę uzyskać porównanie licznika z którymś z rejestrów (OCR1A) w trakcie inkrementacji. Nie tylko w takim trybie. W trybie Normal też uzyskasz przerwania w momencie zrównania wartości timera z rejestrem OCR1A, dodatkowo...

    Mikrokontrolery AVR   18 Lut 2011 15:43 Odpowiedzi: 10    Wyświetleń: 2688
  • [Atmega8] Jak mierzyć czas w Atmega8 dla prędkościomierza z czujnikiem hallotronowym?

    Nie lepiej wykorzystać przerwanie ICP1 timer1. Tam przepisywać zapamiętaną wartość timer1 (timer1 w konfiguracji timera zmienna = capture1), i przeliczać na prędkość, znamy przecież drogę (odległość między magnesami) a potrzebujemy tylko czas pomiędzy kolejnymi przerwaniami wywołanymi tymi magnesami. Po co zliczać ilość impulsów (drogi) w danym czasie...

    Mikrokontrolery AVR   22 Sie 2012 22:33 Odpowiedzi: 26    Wyświetleń: 6469
  • Atmega8 - Timer nie generuje przerwań, zegar nie działa poprawnie

    przepraszam,ta komenta stop timer1 była tam przez pomyłkę,wpisałem ją a przed kompilacją usunąłem i wkleiłem tutaj zły kod jak było on timer czas działało tak samo...w symulatorze wszystko działa,a w procku nic;/ ustawianie czasu działa,ale zegar stoi w miejscu nie wiem czy to coś pomoże,ale po wskazaniach tego timera wygląda na to że albo w ogóle nie...

    Mikrokontrolery   21 Sty 2007 14:18 Odpowiedzi: 4    Wyświetleń: 1089
  • ATmega8 - Programowanie wyłącznika schodowego w C, brak reakcji mikrokontrolera

    Zacznij od napisania, jak są podłączone przyciski. Zupełnie nie rozumiem czemu w celu zapisu bajtu do rejestru DDR używasz pięciu operacji logicznych na tym rejestrze zamiast napisać po prostu: DDRC = Wyjscie; To samo z PORTC. Dalej . sprawdzasz, czy przyciski są zwolnione, ale nie sprawdzasz, cza są wciśnięte. Przy takiej realizacji - pętla i delay...

    Mikrokontrolery Początkujący   31 Lip 2013 22:02 Odpowiedzi: 3    Wyświetleń: 1212
  • [Bascom] Jak podłączyć klawiaturę AT PS/2 do Atmega8 w Bascom? Konfiguracja i kod

    No pewnie że jest w helpie- to jest ta podstawowa zasada getatkbd. Ale jak wejdziesz w przerwania gdzie dasz wait- a oczekiwanie na kod klawisza nie wyłącza przerwań- to będą błędy. Podobnie będzie gdy przerwanie od Timera będzie np. co 100us- a nie wiadomo co ile jest- co ile Autor daje.

    Mikrokontrolery   07 Maj 2010 11:20 Odpowiedzi: 14    Wyświetleń: 3065
  • Atmega8 - Nieprawidłowe działanie przerwań zewnętrznych z enkoderem i LEDami

    Kurczę, przez ponad 20 lat projektowania urządzeń z mikrokontrolerami nigdy nie zdarzyło mi się wpaść na tak dziwaczny pomysł, jak przerwanie od przycisku/styku/impulsatora służące do czegokolwiek innego niż obudzenie urządzenia z głębokiego uśpienia. Poczytaj coś o uczciwym ignorowaniu drgań styków przy użyciu przerwania timera, a potem zabieraj się...

    Mikrokontrolery Początkujący   13 Lip 2013 18:53 Odpowiedzi: 19    Wyświetleń: 3321
  • Dlaczego timer w Atmega8 nie działa na wewnętrznym zegarze?

    Co to za bełkot!? 1. Timer do odmierzania czasu skonfigurowany jako licznik impulsów z zewnątrz! 2. Podprogram obliczania czasu nigdy nie będzie wywołany z pętli głównej! 3. Wyświetlana ma być wartość licznika. Podaj kolego na koncówkę 11 impulsy z zewnątrz to je zacznie zliczać i wyświetlać. Bedziesz miał przynajmniej licznik impulsów. Program do zegara...

    Mikrokontrolery   28 Wrz 2006 23:35 Odpowiedzi: 2    Wyświetleń: 1316
  • Interferencja przy regulacji fazowej i pomiarze 1Wire na ds18b20

    Jesli ktoś miał by pomysł jak to ogarnąć w bascomie to bardzo proszę o propozycję. Przecież napisałem. Przenieś Triak = 0 do Triakwl: i poprzedź Waitus . Na czas transakcji 1-wire wyłącz przerwania. Jak będzie zawieszał przerwania na całą transmisję 1-Wire to będzie mu migać. Może spróbować, jak pisałem wcześniej, zawieszać na 15us przy transmisji...

    Mikrokontrolery AVR   06 Kwi 2019 11:44 Odpowiedzi: 34    Wyświetleń: 1743
  • Atmega8 - Timer nie działa poprawnie przy zegarze 8MHz i preskalerze 8

    Witam. Napisałem sobie prosty kod: /** * Timer - test */ #include <avr/io.h> #include <avr/interrupt.h> #define T0_INIT 0xFF //Wartość początkowa timera volatile uint32_t timer; //Odliczanie czasu przez timer /** * Przerwanie przepełnienia timera */ SIGNAL ( SIG_OVERFLOW0 ) { TCNT0 = T0_INIT; if ( timer > 0 ) timer--;...

    Mikrokontrolery   27 Kwi 2007 21:49 Odpowiedzi: 2    Wyświetleń: 1269
  • Atmega8 i czestotliwosc generatora wewnetrznego >8MHz

    Częstotliwość tu nie odgrywa większej roli. Regulację uzyskuje się przez zmianę śrendiego czasu wyświetlania cyfry. Czyli np, dwa przerwaina timera - overflow - zmiana cyfry, przerwanie compare - wygaszenie wyświetlacza. Regulujesz jasność przerwaniem compare, dla 16-bitowego licznika masz głębię 16-bitową (teoretycznie). Tego typu koncepcję masz pokazaną...

    Mikrokontrolery AVR   29 Gru 2012 15:48 Odpowiedzi: 18    Wyświetleń: 2304
  • Programowanie Atmega8 w Bacomie AVR do sterowania silnikiem krokowym

    Sposobow jest wiele. Np: Zrob sobie prosta tablice w ktorej bedziesz trzymal wartosci dla portu sterujacego cewkami silnika. Konfigurujesz sobie jeden z timerow zeby Ci generowal przerwanie co jakis czas. W obsludze przerwania wstawiasz ta tablice i zwiekszasz za kazdym razem indeks o 1. np: unsigned char a SIGNAL(SIG_XXX) // jaies przerwanie...

    Mikrokontrolery   11 Sty 2007 15:28 Odpowiedzi: 10    Wyświetleń: 2558
  • Problem z czasem odliczanym przez uC ATmega8 (wew kwarc)!!!

    Potrzebuję odliczać czas z przedziału od 10ms do 99 godz. Zrobiłem to w taki sposób że ustawiony czas zamieniam na ms (liczba 4 bajtowa) i zliczam ilość przerwań od timera ustawonego na przerwanie 1ms. Wszystko fajnie tylko czas mi się rozjeżdza gdyż dokladność kwarcu jest ok 1%. Czy można jakoś zwiększyć stabilność wewnętrznego kwarcu (ATmega8)? Jaki...

    Mikrokontrolery   02 Lis 2004 11:08 Odpowiedzi: 6    Wyświetleń: 1953
  • Wybór procesora AVR do sterowania diodą RGB z PWM w Bascom, czy ATMega8 się nada?

    Taka sama, jak sprzętowego, tylko musisz mieć przerwanie timera zgłaszane z częstotliwością równą iloczynowi częstotliwości PWM i liczby poziomów jasności - to zwykle za dużo na oprogramowanie tego w ciężkawej zabawce pt. Bascom. Jest na ten temat u Atmela dobra nota aplikacyjna.

    Mikrokontrolery Początkujący   24 Lut 2013 16:21 Odpowiedzi: 29    Wyświetleń: 4417
  • [atmega128][C] Jak powinno wyglądać prawidłowe przerwanie?

    Witam od dawna korzystam z przerwania od timera 0 w stylu sei(); SIGNAL (SIG_OVERFLOW0) { ... ... ... } wiem że to przestarzały sposób i wykorzystuje się teraz inny zapis i powinno się teraz inaczej pisać, na procesorach ATmega8 i ATmega16 działało bez żadnego problemu teraz pracuję na ATmega128 i już program się nie działa....

    Mikrokontrolery AVR   08 Gru 2009 20:09 Odpowiedzi: 7    Wyświetleń: 1584
  • Atmega8 C - Licznik częstotliwości na wyświetlaczach 7 segmentowych

    Zacznij od uruchomienia samego wyświetlania. Przerwanie timera zgłaszane z częstotliwością np. 300 x liczba_cyfr Hz, a w procedurze obsługi tego przerwania jakieś 8..10 linii kodu realizujących wyświetlanie cyfr na wyświetlaczu, przechowywanych w posatci tablicy. Kiedy to Ci zadziała, bierz się za resztę. Cały program, który to robi, zapewne zmieści...

    Mikrokontrolery Początkujący   27 Lip 2013 07:44 Odpowiedzi: 9    Wyświetleń: 1848
  • Pomiar częstotliwości na atmega8, program w bascom

    Witam. Chciałem w celach edukacyjnych zrobić częstotliwościomierz. Ponieważ nie mam za bardzo skąd wziąć zewnętrznych impulsów postanowiłem, że jeden pin procka będzie je generował, a przerwanie int0 będzie liczyć ile tych impulsów było. Do odmierzenia czasu posłużył timer1, który ma odliczyć sekundę (więc wynik od razu w Hz). Po upływie sekundy ma...

    Mikrokontrolery Początkujący   08 Paź 2014 16:28 Odpowiedzi: 4    Wyświetleń: 1875
  • [ATmega8] [ATmega8][C] - Przeróbka kodu z ATmega328 na ATmega8, Timer0 na Timer2, LCD pusty

    Próbuję przerobić przykład "Przyklady\LCDAlfa\LCDAlfa-transact-int\... z książki [url=http://helion.pl/ksiazki/jezyk-c-dl...

    Mikrokontrolery AVR   03 Sty 2016 19:19 Odpowiedzi: 2    Wyświetleń: 951
  • Atmega8 - Zegar z kwarcem 16MHz spóźnia się o 12s na dobę, jak to poprawić?

    Próbowałem ustawić prescale timera 1 na 8 co powinno dać przerwanie co 32,768ms i w przerwaniu zwiększałem liczniki mikro\milisekund co eliminowałoby opóźnienie przed zmianą wartości licznka. Wynik bez większych zmian - również około 1s\2h, może minimalnie mniej. Czy to znaczy, że miałeś kod, w którym nie modyfikowałeś timera ? Bo właśnie to Ci chciałem...

    Mikrokontrolery   02 Wrz 2009 09:26 Odpowiedzi: 16    Wyświetleń: 2925
  • Sterowanie 4 serwomechanizmami przez potencjometrem na Atmega8

    Wyrzuć rezystory 10k z miejsc, w których są i wstaw po jednym takim rezystorze pomiędzy plusem a górą każdego potencjometru. Suwaki potencjometrów podłącz bezpośrednio do wejść ADC. Cały kod powinien korzystać z dwóch przerwań timera pracującego w trybie CTC ze stałym okresem 20 ms. Przerwanie końca okresu czyta poprzedni pomiar ADC, wyzwala pomiar...

    Mikrokontrolery AVR   02 Sie 2013 20:47 Odpowiedzi: 13    Wyświetleń: 3573
  • Atmega8 i kontrakton – wielokrotne przerwania zamiast jednego impulsu na obrót

    Pytanie jak szybko kręci się koło. Jeżeli nawet będzie to 3000 obr/min, to jeden obrót zajmie 20 ms. Przerwanie od timera możesz uruchomić co 5 ms, a przy krótkim programie to nawet znacznie częściej. Czyli w najgorszym przypadku będziesz miał cztery odczyty licznika na jeden obrót koła. To będzie jeszcze mało?

    Mikrokontrolery   18 Paź 2006 17:34 Odpowiedzi: 20    Wyświetleń: 4016
  • Wybór mikrokontrolera do kontrolera ruchu: ATMega8 czy AT90s2313?

    Cześć Attiny26 może przyjąć przerwania od każdej nogi, robisz licznik od jakiegoś wewnętrznego timera i zliczasz od 0 do 255, jeśli doliczysz do 255 to włączasz alarm, liczysz oczywiście na tylu zmiennych naraz ile Ci potrzeba. Teraz dodajesz do tego przerwania od czujników, jeśli przyjdzie przerwanie to zerujesz odpowiadającą mu zmienną i znowu ją...

    Mikrokontrolery   26 Sie 2009 05:29 Odpowiedzi: 15    Wyświetleń: 3071
  • ATmega8 – wybudzanie z trybu uśpienia przez pin inny niż INT0/INT1, jak to zrobić?

    aha, uzywasz juz timera do multipleksowania. To spoko jak jest wywolywanie przerwanie to wraca spoworotem do petli (tak jest przynajmniej w bascomie). Dodano po 28 Dodaj do petli glownej tryb powersave i wytestuj!

    Mikrokontrolery   15 Lis 2009 15:40 Odpowiedzi: 13    Wyświetleń: 3898
  • Atmega8 Bascom - Żarzące się czerwone diody w układzie 16 LED

    Tego się tak nie robi. Uruchom przerwanie timera. Zapisz wartości strowania portów dla kolejnych kroków w tablicy stałych. W przerwaniu timera testuj przycisk, a co pewną liczbę przerwań wyrzucaj na porty kolejną wartość z tablicy.Przy takim podejściu cały kod zmieści się w kilkunastu liniach, może dwudziestu paru, a jego długość nie będzie zależała...

    Mikrokontrolery Początkujący   26 Sie 2013 09:03 Odpowiedzi: 28    Wyświetleń: 3459
  • GCC, ATMega8 (8MHz), Timer1 i problem z odliczanie 1s

    Witam Mam jakiś błąd w programie ale nie mogę dojść gdzie. Przed mian'em mam obsługę przerwania dla SIG_OUTPUT_COMPARE1A która teoretycznie powinna się wywoływać co 1s. Timer1 ustawiony w tryb compare na preskalerze 256, ustawienia timera są na początku maina. SIGNAL(SIG_OUTPUT_COMPARE1A) // sygnal porownania od timera 1A { sec++; sec%=60;...

    Mikrokontrolery   07 Cze 2007 21:06 Odpowiedzi: 12    Wyświetleń: 3349
  • Jak zaprogramować generator impulsów 1-20Hz na ATmega8 w Bascom?

    Witaj. Postaram się w miarę szybko wyjaśnić algorytm działania programu. Procesor jest taktowany z częstotliwością 4MHz, i ta częstotliwość jest dzielona przez 1024 w preskalerze timera 0 - na wejściu timera 0 mamy impuls co 0.256 ms. Timer 0 jest tak skonfigurowany, że wywołuje przerwanie po jego przepełnieniu. Chcemy mieć przerwania z regulowaną częstotliwością...

    Mikrokontrolery   10 Lut 2008 21:48 Odpowiedzi: 12    Wyświetleń: 3918
  • Krótki impuls załącza pierwszy przekaźnik a długi drugi Atmega8 program

    Generalnie zakładam, że jak ktoś prosi o pomoc w jakiejś kwestii to jej oczekuje, a nie krytyki, że robi coś źle.. Ale wydaje mi się, że inne pokolenia nie chętnie by z tego korzystały. Może lepiej zamiast 2 różnych czasów zrobić tak: jeżeli pyknę raz wyłącznikiem, to po sekundzie zapala się pierwsze światło jeśli pyknę 2 razy to zapala się drugie jeśli...

    Mikrokontrolery AVR   20 Cze 2011 08:59 Odpowiedzi: 18    Wyświetleń: 3950
  • Przerwanie INT0 w ATmega8 - problem z wyświetlaniem po powrocie

    SIGNAL(SIG_INTERRUPT0) { short int a; lcd_xy(0,0); write_text("Temp:")... GIFR = 0x40; a = odczytaj_temp(); write_temp(a); zapis_twi(0x00,0x04); //reset flagi wyst przerwania w pcf GIFR|=_BV(INTF0); lcd_xy(1,0); zapis_twi(0x07,0x80); //ustawienie wart poczatkowej...

    Mikrokontrolery   16 Gru 2006 19:16 Odpowiedzi: 4    Wyświetleń: 1250
  • [AVR] Dlaczego sygnał prostokątny z Timer2 w ATmega8 ma 6,5 kHz zamiast 125 kHz?

    Witam, mam pytanie odnośnie timera w atmega8. Zdefiniowałem w programie dla Timer2 tryb pracy CTC i bez preskalera (TCCR2 = _BV(WGM21) | _BV(CS20)) oraz generowanie przerwania przy zliczeniu do 4 (OCR2 = 4). Nie dokonywałem żadnych zmian przy zegarze wewnętrznym z którego korzystam, zatem z tego co wiem ma on częstotliwość domyślną 1MHz. Przerwanie...

    Mikrokontrolery AVR   05 Wrz 2012 00:35 Odpowiedzi: 7    Wyświetleń: 1788
  • Wyswietlacz widmowy na atmega8 - wyswietla tylko 1/3 okregu

    [syntax=c] #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #define TIMER0_ON (TIMSK |= _BV(TOIE0)) #define TIMER1_ON (TIMSK |= _BV(TOIE1)) #define TIMER0_OFF (TIMSK &= ~_BV(TOIE0)) #define TIMER1_OFF (TIMSK &= ~_BV(TOIE1)) #define led1_ON PORTD |= (1<<PD1) #define led2_ON PORTD |= (1<<PC0)...

    Mikrokontrolery AVR   03 Gru 2017 22:39 Odpowiedzi: 5    Wyświetleń: 657
  • Jak sterować 4 serwomechanizmami z Atmega8? Cykl obrotów i alternatywy?

    Metod to jest milion. Jedną z nich może być jak najbardziej zrobienie tego na procku ATmega8 jak i każdym innym gdyby miał robić tylko to ;) .... Do sterowania serwami spokojnie można napisać własną obsługę programową bez korzystania ze sprzętowych PWMów jeśli jest ich za mało w procku. Tak więc do wyboru do koloru ;) Ja właśnie w tym robociku wykorzystałem...

    Mikrokontrolery   19 Lut 2010 23:40 Odpowiedzi: 1    Wyświetleń: 1620
  • AVR ATTiny2313 Timer - przerwanie 1Hz działa z prędkością 0,5Hz, dlaczego?

    Witam! Mam dość nietypowy problem z AVR-kami. Ostatnio używałem Timera na ATTiny2313. Ustawiłem preskaler /256, kwarc 8MHz, timer 16bit w trybie porównania i przerwanie. Wartość do porównania była ustawiona na ok. 31250. Ostatecznie powinienem otrzymać przerwanie z częstotliwością ok. 1Hz. To zwiększało licznik i on był wyświetlany. I tu pojawił się...

    Mikrokontrolery   28 Sie 2006 12:35 Odpowiedzi: 2    Wyświetleń: 1548
  • Jak skonfigurować przerwania w ATmega8 w języku C z użyciem GCC?

    Na początek zdecyduj jakie przerwanie ci jest potrzebne... Jeżeli od timera to szukaj opisu przerwania w rozdziale opisującą jego konfiugurację... Po pierwsze trzeba uaktywnić przerwania czyli sei() Przerwania timerów aktywuje się w rejestrze TIMSK... Odpowiednio uart w swoich rejestrach posiada bity odpowiadające za aktywację przerwania od TX, RX itd......

    Mikrokontrolery   13 Lis 2010 16:13 Odpowiedzi: 48    Wyświetleń: 19564
  • Atmega8 i counter0, prescaler, przepełnienie licznika, wyliczenie 1 s.

    Witam. Prescaler jest to dzielnik częstotliwości. Jeżeli użył byś kwarcu 8 MHz oraz timera 0 przepełnił by ci się on 31250 razy.Aby zmniejszyc częstotliwość wyrzucanych przerwań używa sie prescalera. Np ustawiając prescaler 64 uzyskasz przerwanie co 0,00204800 s. Co do drugiego pytania to w BASCOM'ie licznik się zeruje chyba że wpiszesz mu jakąś wartość....

    Mikrokontrolery   30 Gru 2006 15:35 Odpowiedzi: 3    Wyświetleń: 2280
  • Jak zapewnić dokładny pomiar czasu reakcji w ATMEGA8 dla dwóch strzelców?

    Co do bascoma...jako ze generuje wolny kod to nie możesz wepchnąć rozbudowanej obsługi licznika w przerwanie, bo pogubisz takty albo wykopyrtniesz procesor bo sie stos przepełni(w przypadku gdybys w obsłudze przerwań nie wyłączał przerwań, a w trakcie trwania jego obsługi wystąpiło następne przerwanie i tak w kółko) Musisz wziąć pod uwagę czas reakcji...

    Mikrokontrolery   15 Mar 2008 22:10 Odpowiedzi: 9    Wyświetleń: 6058
  • ATmega8 ADC – dlaczego odczyt ADC zawsze 0? Prośba o sprawdzenie kodu C

    Witam ponownie, przestudiowałem kilkukrotnie podane wyżej linki postaram sie juz nie wklejać nie przemyślanego kodu:) w międzyczasie zabrałem sie za modyfikacje kodu i tak jak zakładałem w początkowej fazie projektu czyli ponowny pomiar po odczekaniu 1 sekundy używając przerwania timiera w trybie porównywania ctc.Proszę o sprawdzenie poprawności kodu...

    Mikrokontrolery AVR   02 Kwi 2015 20:34 Odpowiedzi: 97    Wyświetleń: 6825
  • Atmega8 + MAX6575LZUT: brak odczytu temperatury, konfiguracja INT0 i timer1

    robie uklad gdzie chce wykorzystac element max6575lzut.. zapoznalem sie z dokumentacja jednakze nie otrzymuje wartosci zmierzonej.. moze wiecej szczegolow.. uklad podlaczylem do wejscia portd.2 (int0) uP atmega 8... wybralem 5us/K (przez odpowiednie polaczenie wyprowadzene ukladu max).. w programie na wstepie ustawiam port jako wyjscie i ustawiam w...

    Mikrokontrolery   02 Sty 2008 12:37 Odpowiedzi: 4    Wyświetleń: 1179
  • ATtiny13 Bascom - dwie funkcje w jednym przycisku jedna zależna od drugiej

    xury dla początkującego wait czy waitms to najprostsze rozwiązanie choć już naczytałem się, że nie najlepsze i by tego unikać właśnie poprzez timery w jednym z tematów mirekk36 to nawet zademonstrował na atmega8 oraz ganił za używanie wait oraz waitms Nie poradziłem sobie w przełożeniu kodu z atmegi na attine :( Sprawdzone i działa rewelacyjnie WIELKIE...

    Mikrokontrolery Początkujący   22 Kwi 2016 21:04 Odpowiedzi: 39    Wyświetleń: 4284
  • Atmega8 - Implementacja przerwań dla DMX z UART i timerem RS485

    Zakładam, że można pominąć czasy Mark Time Between Frames (MTBF) oraz Mark Time Between Packets (MTBP), ponieważ zgodnie ze standardem mogą one być równe 0. Gdyby przyjąć, że zmiany w poszczególnych kanałach nie są od siebie zależne, czyli nie trzeba zmienić najpierw wszystkich (lub wybranej grupy) wartości kanałów, a dopiero później przesłać je w jednym...

    Mikrokontrolery AVR   17 Wrz 2012 17:07 Odpowiedzi: 14    Wyświetleń: 2667
  • Jak poprawnie skonfigurować timer0 na ATmega8 do liczenia kanałów DMX?

    Szukałem odpowiedzi na to pytanie, lecz nie znalazłem, wiec postanowiłem rozpocząć nowy temat. Otóż mam problem z liczeniem kanałów DMX, a dokładnie z timerem0 którego używam w tym celu. Mikrokontroler to jak w temacie ATmega8, częstotliwość taktowania 8 MHz, ustawienia sprzętowego UART 250 000 baud. Według specyfikacji DMX najpewniej rozpoznać nowy...

    Programowanie   29 Maj 2006 08:41 Odpowiedzi: 1    Wyświetleń: 1356
  • Jak zbudować miernik prędkości obrotowej z Atmega8, LCD i GP1S51VJ000F?

    Spróbowałem własnych sił i oczywiście z pomocą forum, stworzyłem taki kod: int flaga=0; // flaga czy INT0 jest "0" czy "1" int a=0; // zmienna zwiększana przy każdym przepełnieniu licznika 0 int main(void) { //ustawienia wejścia INT0 DDRD&= ~(1<<DDD2); // konfiguracja - WEJSCIE ustawianie zera PORTD|=1<<PIND2;...

    Mikrokontrolery AVR   24 Sty 2011 00:38 Odpowiedzi: 62    Wyświetleń: 10869
  • Atmega8 Bascom - PWM - powolne zmniejsznie/zwiększanie

    Da się i własnie na flagach timera powinno się to zrobić. Samo taktowanie obniżaniem wartości to nie wszystko. Dioda zapala się już przy bardzo małej wartości PWM i potem dokładanie jej czasu intensywność świecenia zmienia coraz mniej. Dlatego przy ściemnianiu mało się dzieje i potem nagle dioda szybko gaśnie. Chciałem wiec uzyskać taki efekt by im...

    Mikrokontrolery Początkujący   05 Maj 2015 15:16 Odpowiedzi: 4    Wyświetleń: 1620
  • [ATTiny2313][Bascom]-sterownik silnika krokowego początkujac

    Ok posiedziałem ciut, poczytałem w necie jak się używa te Timery i ich przepełnienia . Powstał taki oto kod .Proszę wyświetlacz traktować jako pomoc pokazującą mi ile już wystąpiło przepełnień, zresztą bardzo fajnie to pokazuje. Ramowa zasada jest taka - programik ma zliczać przepełnienia do 2108 i się zatrzymać po osiągnięciu tej sumy(wstępnie ta wartość...

    Mikrokontrolery AVR   05 Mar 2011 18:57 Odpowiedzi: 6    Wyświetleń: 4318
  • Jak przeportować odbiór RC5 z ATMega8 na ATTiny13? Rejestry i modyfikacje kodu

    Cześć, chciałem przeportować kod do odbioru RC5 autorstwa Dondu za ATMega8 na ATTiny13 - http://obrazki.elektroda.pl/8294459100_1... REzystory diod 470Ω, nie zmieniłem na schemacie. Pilot samoróbka, ale 100% pewniak. No więc w czym problem? Uruchomiłem przykład na ATMega8, wszystko pięknie śmiga. Program kompiluje się dla Tiny13...

    Mikrokontrolery Początkujący   13 Lut 2014 13:23 Odpowiedzi: 16    Wyświetleń: 3903
  • [Atmega8] [Atmega8][C] Jak dodać funkcję załączania przekaźnika o określonej godzinie?

    Witam, chciałbym przerobić projekt z tego linku http://www.elektroda.pl/rtvforum/topic90... Mianowicie zostawić odliczanie czasu i wyświetlanie go a dodać do niego funkcję w której o wpisanej "na stałe" godzinie w funkcji załączy przekaźnik. Przekaźnik jest 4 modułowy więc potrzebuje 4 wolnych pinów. Kod, który zmodyfikowałem wygląda następująco...

    Mikrokontrolery AVR   05 Lis 2017 11:17 Odpowiedzi: 7    Wyświetleń: 1458
  • ATMEGA8 – obsługa dwóch ADC na przerwaniach, brak wywołania ISR po konwersji

    Witam Programuje 2x ADC które szczytuje mi wartości z potencjometrów podłączonych przez dzielnik napięcia do portów PC0 PC1, za pomocą przerwania ADCSRA ( ADIE -Kiedy ten bit jest ustawiony wraz z I-bitem w rejestrze SREG wtedy aktywne jest przerwanie od zakończenia konwersji.) Robię tak za pomocą przerwania a nie timera bo nie chce aby mi ciągle czytał...

    Mikrokontrolery AVR   16 Lut 2015 09:45 Odpowiedzi: 17    Wyświetleń: 1893