atmega32 przerwa timer

Znaleziono około 1031 wyników dla: atmega32 przerwa timer
  • [C] Atmega32: Przerwania licznika, diody co sekundę, preskaler 256, TIMER1_OVF_vect

    Opczytaj o działaniu operatorów. & to operator iloczynu logicznego, czego się spodziewasz? Ma być PORTC^=0xFF;

    Mikrokontrolery Początkujący   27 Gru 2012 16:24 Odpowiedzi: 17    Wyświetleń: 1740
  • [Atmega32][C][Eclipse] - bład programu gdy przerwamnie timer0 aktywne

    Właśnie o to mi chodzi. Trudno analizować program do odbioru protokołu, którego nie znamy, a komentarze tego nie ułatwiają, a wręcz przeciwnie. Natomiast co do działania rzeczonej instrukcji kompletnie się mylisz. Zerknij do jakiegokolwiek podręcznika C. Ciekawe jest też spostrzeżenie natury ogólnej, a nie tylko Twojego problemu. Większość kodów przewijających...

    Mikrokontrolery AVR   05 Gru 2012 08:49 Odpowiedzi: 12    Wyświetleń: 1818
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • ATmega32 - Program nie wchodzi w obsługę przerwania TIMER0_COMP_vect

    To nie jest nieskończona pętla. To podstawowa funkcja z obsługi UART. Ta pętla czeka na wyczyszczeni buforu tzn. jak nie oczekuje nic na nadanie to nadaj.

    Mikrokontrolery AVR   30 Gru 2012 14:29 Odpowiedzi: 17    Wyświetleń: 2439
  • Dwa duże problemy z przerwaniami od timera na ATmega32

    Co do Twojego pierwszego problemu to prawdę mówiąc nie wiem, ale zwróć uwagę na to że po zakończeniu obsługi przerwania zawartośc R16 i R17 jest zamieniona: ... .org 0x0012 rjmp t1Ovf ... t1Ovf: push r16 push r17 in R16, PORTC ldi R17, 0b00000011 eor R16, R17 out PORTC, R16 pop r16 ; R17 pop r17 ; R16 reti ... Może to wina własnie tego. Co do Towjego...

    Mikrokontrolery   16 Lut 2007 16:21 Odpowiedzi: 2    Wyświetleń: 1257
  • REKLAMA
  • Atmega328p - Odczyt potencjometrów z przerwaniami, wartości 0-255

    No nie bardzo. Pętle busy waits są w przerwaniu niewskazane. Zrób tak jak napisał  (at)BlueDraco : odczyt poprzedniej konwersji-start następnej konwersji-wyjście bez czekania. [syntax=c]ISR(TIMER1_COMPA_vect) { switch(wejscie) { case 2: adc3=ADC; ADMUX = 0; ADMUX = (1<<REFS0)|wejscie; ADCSRA |= (1<<ADSC); break; case 3: adc2=ADC; ADMUX =...

    Mikrokontrolery Początkujący   20 Lut 2020 21:14 Odpowiedzi: 14    Wyświetleń: 1113
  • Błąd w programie multipleksowania LED na atmega32 - przerwania nie działają

    // ================= PROCEDURA OBSŁUGI PRZERWANIA COMPARE MATCH ISR(TIMER0_OVF_vect) Błąd. To jest przerwanie od przepełnienia licznika. Przerwanie od porównania to: TIMER0_COMP_vect . W nagrodę Pomógł od mniej spostrzegawczych użytkowników i moderatorów :) A co do tranzystorów, to oczywiście lepsze by były PNP, ale z NPN też będzie działać (trochę...

    Mikrokontrolery Początkujący   01 Cze 2015 18:16 Odpowiedzi: 22    Wyświetleń: 1497
  • [C] Atmega32 Timer0 CTC – dioda nie zapala się w przerwaniu, kod nie działa

    Istnieje jeszcze jedna możliwość. Jakiego używasz AVR-GCC? Możesz mieć jakąś starszą wersję z błędem, który właśnie objawia się poprzez niepoprawne działanie przerwań COMPARE. Wystarczyłby jeden błąd w adresie wektora TIMER0_COMP_vect i "po zawodach". ps. Nie rzekomo działającego, tylko działającego. Niestety nie mogę ci strumieniowo przesłać video...

    Mikrokontrolery   07 Mar 2011 09:24 Odpowiedzi: 8    Wyświetleń: 1997
  • REKLAMA
  • [Atmega128] [Atmega128][C] - Timer0 blokuje _delay_ms przy aktywnym przerwaniu TIMER0_OVF_vect

    W przypadku programu dla ATmega32 też używasz "avr-g++" do linkowania?

    Mikrokontrolery AVR   06 Wrz 2012 03:28 Odpowiedzi: 15    Wyświetleń: 1779
  • [Atmega328P][C] - Obsługa przycisków z wykorzystaniem timerów

    Z każdym przyciskiem skojarz jedną zmienną, która będzie zawierała stan licznika timera, w chwili wykrycia jego naciśnięcia. W kolejnych przerwaniach overflow sprawdzasz: 1. czy przycisk jest ciągle naciśnięty, 2. jeśli 1. jest prawdą to czy różnica pomiędzy licznikiem timera a wartością zapamiętaną w skojarzonej z przyciskiem zmiennej jest większa...

    Mikrokontrolery AVR   16 Sie 2012 11:12 Odpowiedzi: 15    Wyświetleń: 1656
  • Atmega328 timer0 nie odlicza czasu/nie generuje przerwania (tryb normalny)

    Po pierwsze, timer liczy od 0 do 255, ale to oznacza 256 impulsów pomiędzy przepełnieniami, czyli powinno być 256, a nie 255 * 128us. Po drugie zaokrągliłeś wynik z 32.64 do 32 przed dzieleniem, co w efekcie dało niedokładny wynik ilości przepełnień. W rzeczywistości częstotliwość przerwań można obliczyć dużo prościej: ( 8000000 / 1024 ) / 256 = ok. 30,5176.....

    Mikrokontrolery AVR   11 Kwi 2019 11:28 Odpowiedzi: 9    Wyświetleń: 831
  • REKLAMA
  • [ATMega32] ATMega32: Obsługa I2C na przerwaniach w C - kiedy i dlaczego warto?

    Niektóre z funkcji faktycznie zawierają pętlę oczekującą na zwolnienie magistrali: [syntax=c] while ( TWI_Transceiver_Busy() );[/syntax] Autorzy założyli, że można będzie użyć tej funkcji w dowolnym momencie, niestety powoduje to, że kiedy wywołamy funkcję, kiedy magistrala jest zajęta, to będzie ona czekała na zwolnienie magistrali, co wprowadza czasami...

    Mikrokontrolery AVR   27 Sie 2012 19:25 Odpowiedzi: 21    Wyświetleń: 2946
  • Cykliczne załączanie PWM w ATTiny2313A/ATMega328P

    Cześć Pobierz notę katalogową np. Attiny2313a i popatrz jak wygląda kod obsługi USART'a, bo masz błędy w kodzie. Nie chce mi się wierzyć, że nie da się osiągnąć tego czego oczekujesz na Attiny. W przerwaniach timer'a, czy to jednego czy drugiego, możesz manipulować rejestrami COM0Xn, przerwaniami TIMSK. Powinieneś osiągnąć możliwość włączania i wyłączania...

    Mikrokontrolery AVR   20 Gru 2019 22:11 Odpowiedzi: 19    Wyświetleń: 840
  • Czy przerwania Timer1 i Timer0 w ATmega32 mogą się kolidować?

    To bedzie działac tak jak piszesz. Program wróci do miejsca przerwania czyli po wykonaniu B do przerwania A a potem do programu głównego. Ja to stosuje w większosci programów bo to nawet konieczność np przy stosowaniu UART .

    Mikrokontrolery AVR   05 Lut 2011 01:34 Odpowiedzi: 21    Wyświetleń: 1484
  • [AVR ATmega328] [AVR ATmega328][C] - Timer1 nie wywołuje przerwania, kod nie działa

    Dołącz bibliotekę <avr/interrupt.h>

    Mikrokontrolery Początkujący   19 Gru 2014 19:11 Odpowiedzi: 5    Wyświetleń: 855
  • ATmega32 IAR: Nie działa przerwanie przy przepełnieniu timera T1

    Witam, Popełniłeś kilka błędów: - aby odblokować przerwania od przepełnienia timera 1 trzeba ustawić bit 2 a nie 5 w rejsestrze TIMSK - wektor przerwania od przepełniania timera 1 to nie 0x12 a 0x24 Dobrze jest przy pisaniu w C korzystać z funkcji dostarczanych wraz z kompilatorem "intrinsic function" takich jak __interrupt_enable, __interrupt_disable,...

    Mikrokontrolery AVR   11 Lis 2008 00:00 Odpowiedzi: 3    Wyświetleń: 1440
  • avr-gcc - Atmega32 - przerwania timera 0 restartują program

    Co to może być? Wróżka jest na urlopie. Pokaż kod źródłowy.

    Mikrokontrolery AVR   15 Mar 2010 14:28 Odpowiedzi: 3    Wyświetleń: 1134
  • [bascom] Różnice w przerwaniach między Atmega8 a Atmega32 w Bascom - jak dostosować kod?

    Te procesory się aż tak nie różnią. Dodatkowe funkcjonalności pinów nie przeszkadzają w niczym dopóki ich nie uruchomisz. (PCINT - Pin Change Interrupt trzeba wiedzieć jak włączyć). Jest duża różnica jeśli chodzi o Timery właśnie. Mega8 ma na przykład tylko jeden rejestr Compare dla Timer2 dlatego inaczej się nazywają. Opisałem to u siebie na stronie...

    Mikrokontrolery Początkujący   05 Gru 2014 06:58 Odpowiedzi: 12    Wyświetleń: 1467
  • Atmega328P: wykonanie przerwania po wybudzeniu, SPI i MISO, resetowanie

    WDTON Fuse Unprogrammed: In this mode, the Watchdog Timer is initially disabled, but can be enabled by writing the WDE bit to 1 without any restriction. A timed sequence is needed when changing the Watchdog Time-out period or disabling an enabled Watchdog Timer . WDTON Fuse Programmed: In this mode, the Watchdog Timer is always enabled , and the WDE...

    Arduino   16 Cze 2020 18:26 Odpowiedzi: 14    Wyświetleń: 675
  • ATmega328 - Jak użyć timera bez przerwań do odmierzania czasu?

    ... ale wtedy musisz mieć pewność, że obsłużysz to przed pojawieniem się kolejnej sytuacji ustawienia flagi przerwania. Oczywiście TIFR to tylko przykład, bo flagi są także w innych rejestrach, np. TXC w UCSRA.

    Mikrokontrolery AVR   06 Gru 2015 00:46 Odpowiedzi: 8    Wyświetleń: 1023
  • [ATmega32][c] Przerwanie od porównania w timer1 - ograniczenia

    Niestety problem znów się pojawił: Program nie wchodzi do pętli while, gdzie warunek jest niespełniony dopiero po zatrzymaniu dopiero co ustawionego rejestru licznika, próbowałem jeszcze inny sposób, z bitami zmiennej flag ustawianymi w przerwaniach - do przerwania wchodzi, ale jak wróci do programu to nie wychodzi z pętli - tak jakby warunek był cały...

    Mikrokontrolery AVR   21 Lis 2011 17:23 Odpowiedzi: 10    Wyświetleń: 2467
  • [ATMEGA32] ATMEGA32 BASCOM TIMER1 - Odliczanie czasu w przerwaniu działa nieprawidłowo

    Witam. Zapis (składnia) Load Timer1 jest zły. Sprawdź w pomocy Bascoma.

    Początkujący Elektronicy   20 Gru 2014 12:32 Odpowiedzi: 3    Wyświetleń: 675
  • [Atmega32][Avr-assembler] - Timer1 w trybie porównania przerwanie co 1s

    Działa ;-) Ustaw Breakpoint na linijce (prawy myszy Toggle Breakpoint) [syntax=avrasm]com LED[/syntax] naciśnij F5 (Run) jak zatrzyma się na Breakpoint wykonaj kod przerwania krokowo F11 naciśnij F5 (Run) jak zatrzyma się na Breakpoint wykonaj kod przerwania krokowo F11 itd. Zamiast 15625 ładuj do OCR1A 15624. Wieczorem wrzucę inny sposób migania tym...

    Mikrokontrolery Początkujący   06 Maj 2016 18:29 Odpowiedzi: 22    Wyświetleń: 2175
  • [Atmega32] Timer0 nie wywołuje przerwania SIG_OVERFLOW0 w skanerze 3D

    Tutaj masz hex'a z tego programu, skompilowanego przez avr-gcc dla atmega32 1Mhz. Zobacz czy zadziała, a ja sprawdzę makefile.

    Mikrokontrolery AVR   15 Maj 2009 14:59 Odpowiedzi: 13    Wyświetleń: 3966
  • [Atmega32A]Power-save mode - Obsługa przerwania TIMER2 w trybie PSM

    Witam. Zwykły kwarc 32K. Usypiasz procesor i możesz go budzić na żądanie w określonym czasie. Jak wszystko pójdzie dobrze uzyskać pobór prądu na poziomie 1uA w stanie uśpienia.

    Mikrokontrolery AVR   15 Sty 2017 22:05 Odpowiedzi: 1    Wyświetleń: 843
  • ATmega32 Bascom - Jak odczytać wartość Timer0 przy przerwaniu Int0?

    Zadeklarowałeś "Zmianna" a przypisujesz "Zmienna". :) Edit: Wyjście z procedury obsługi przerwania wykonuje się za pomocą Return a nie Goto Glowny ! Resztę błędów znajdziesz sam. :)

    Mikrokontrolery Początkujący   04 Sty 2012 23:02 Odpowiedzi: 6    Wyświetleń: 2135
  • [AVR][Atmega328]Przerwania w trybie asynchronicznym

    RTFM podrozdział "Asynchronous Operation of Timer/Counter2". W dużym skrócie: przed uśpieniem trzeba zapisać coś do jednego z rejestrów i czekać na wyzerowanie flagi Busy w ASSR.

    Mikrokontrolery   13 Lis 2020 17:29 Odpowiedzi: 4    Wyświetleń: 354
  • [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ń: 2547
  • ATmega32 - Jak zliczać impulsy, generować PWM i przerwania co kilka ms?

    Cześć, mam pytanie odnośnie Timerów w uC ATmega. Potrzebuję następujących opcji: - zliczanie impulsów z dwóch enkoderów - generowanie dwóch przebiegów PWM - generowanie przerwania co kilka ms. ..............? Czy są jakieś AVR'y mające 4 timery? ........... Pozdrawiam, Bartek Wystarczy ci Atmega48/88/168 Dla 2-ch sygnałów PWM wystarczyłby 1 timer z...

    Mikrokontrolery AVR   05 Lis 2014 23:09 Odpowiedzi: 4    Wyświetleń: 1593
  • [ATmega32] Jak napisać procedurę obsługi przerwania timera0 dla diody LED na ATmega32?

    Ale jeśli mniejsze, to już po 1 takcie zliczania powinno wyskoczyć z przerwania a tak nie jest. Taktowanie timera to 16MHz/1024 = 15625Hz. Pojemność timera to 256, więc przerwanie pojawia się z częstotliwością 15625/256 = ~61Hz. Aby uzyskać opóźnienie ok. 1 sekundy przerwanie musi pojawić się 61 razy i dopiero za 62 zapalić lub zgasić diodę. I tak...

    Mikrokontrolery AVR   27 Paź 2011 11:19 Odpowiedzi: 8    Wyświetleń: 2555
  • ATmega32, jak poprawnie ustawić przerwanie TIMER1 w C na zestawie and-tech EvB 4.3

    a co z przerwaniem porównania kanału B?

    Mikrokontrolery Początkujący   29 Gru 2011 20:59 Odpowiedzi: 4    Wyświetleń: 1536
  • Programowanie mikrokontrolera Atmega324a-pu dla układu LED - prośba o weryfikację kodu

    Software PWM możesz zrobić na dowolnym pinie wyjściowym cyfrowym. Użyłbym timera 8-bitowego. Należy wtedy włączyć i obsłużyć dwa przerwania: 1. przepełnienie (przy przejściu licznika z wartości 255 na 0) - ustaw wtedy stan wysoki na wymarzonym pinie 2. przekroczenie wartości - ustaw wtedy stan niski na wymarzonym pinie Przykładowy kod: https://www.elektroda.pl/rtvforum/viewto...

    Mikrokontrolery Początkujący   09 Paź 2023 15:54 Odpowiedzi: 11    Wyświetleń: 828
  • [ATMEGA32] Jak ustawić priorytety przerwań USART i Timera w ATMEGA32?

    Na jakiej podstawie twierdzisz, że problemem są priorytety przerwań? Przerwania występują na tyle sporadycznie, że nie ma tutaj miejsca na problemy. Jeśli wysyłany jest znak '2', to porównanie (i==2) jest błędne TCCR2 = 1<<CS00 | 1<<CS02 | 0<<CS01 ; proponuję zapisać tak: TCCR2 = (1<<CS00) | (1<<CS02) |...

    Mikrokontrolery AVR   14 Maj 2009 19:15 Odpowiedzi: 4    Wyświetleń: 3118
  • [Atmega32]Jak skonfigurować zegarki wewnetrzne (Timer1 i Timer0)?

    1. W jakim języku piszesz? 2. Kalkuluje się to tak: Masz kwarc 16 000 000 Hz (16 MHz) i dajesz sobie jeden z dopuszczonych prescalerów, np. 64 i wtedy timer zlicza Ci impulsy z częstotliwością 16 000 000 / 64 = 250 000 Hz, czyli jeden impuls timera to 4*10^-6 s lub inaczej aby odmierzyć 1s musisz zliczyć 250 000 impulsów, Jako, że Timer0 jest 8 bitowy...

    Mikrokontrolery AVR   26 Cze 2011 20:40 Odpowiedzi: 13    Wyświetleń: 1845
  • [BASCOM] Jak skonfigurować przerwanie z transoptorem na Atmega32 bez INT?

    Z tego co wiem "PIN Change Interrupt" ma np. Atmega168 i Atmega 328. Atmega 32 - jakoś nie widzę takiej możliwości. Proszę o poprawienie mnie, jeśli się mylę. Oczywiście zawsze można skorzystać z tych specjalnych pinów - INT0, 1 czy 2 lub zasymulować taką kontrolę stanu pinu w zwykłym przerwaniu - np. timera.

    Mikrokontrolery AVR   27 Maj 2012 17:57 Odpowiedzi: 6    Wyświetleń: 1189
  • Atmega32, C - Przerwania INT0 i INT1 - Co tu nie gra?

    Nie mogę zliczać impulsów timerami gdyż są one już zajęte do innych celów. A przerwań innych niż INT0, INT1 używasz?

    Mikrokontrolery   18 Lis 2013 20:28 Odpowiedzi: 20    Wyświetleń: 3624
  • [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ń: 6276
  • ATmega32, Timer2 RTC, SLEEP_MODE_PWR_SAVE – powrót do snu po przerwaniu Timer2

    na podstawie flagi z przerwania INT2 na początku pętli głównej wchodzić w uśpienie. Ale pętla główna jest wykonywana powiedzmy 0.5 sek. Co sekundę wykonywane jest przerwanie od Timer2. Więc procesor będzie w uśpieniu tylko ok. 50% czasu. Ale problem z długim wykonywaniem się pętli głównej wystąpi tylko za pierwszym razem po zaniku zasilania (ustawienie...

    Mikrokontrolery AVR   14 Paź 2014 18:47 Odpowiedzi: 8    Wyświetleń: 1173
  • [ATMEGA32][BASCOM] - Praca Timer1 w trybie CTC liczenie wygenerowanych impulsów

    A niby czemu ma program skakać do procedury obsługi przerwania od przepełnienia? Przecież on się nie przepełnia, tylko po doliczeniu do wartości OCR lub ICR , natychmiast się zeruję ( przy okazji może ,ale nie musi zmieniać stan pinu OC). Musisz uruchomić przerwanie od tego właśnie porównania - czyli od Compare, tak jak wspomniał kolega wyżej. Tylko...

    Mikrokontrolery AVR   11 Paź 2013 20:26 Odpowiedzi: 12    Wyświetleń: 2640
  • [Atmega32] [Atmega32][ASM] Problemy z odbiorem RC5 - przerwanie INT1 i synchronizacja zegara

    mogą być 2 bity startu, bo standard RC5 właśnie tak jest "skonstruowany", że posiada 2 bity startu. Natomiast jego rozszerzenie czyli RC6 wykorzytuje drugi bit startu jako normalny bit danych. Ok - teraz odpowiedź dla autora, wydaje mi się, że uda się to wyjaśnić bo sam kiedyś miałem podobny problem ze zrozumieniem tego etapu dekodowania. Cały problem...

    Mikrokontrolery AVR   14 Gru 2008 21:48 Odpowiedzi: 9    Wyświetleń: 2577
  • [Atmega32a] Atmega32a USART nie działa, mimo poprawnej konfiguracji na Atmega88

    ... Dlaczego tak się dzieje? :/ Dlatego, że przerwanie ISR(TIMER1_COMPA_vect) jest wywoływane co 128 taktów zegara, a wykonanie procedury przerwania timera1 zajmuje ~200 taktów. Po zakończeniu wykonywania przerwania od timera, gdy uC wraca do programu głównego, ma już ustawioną flagę od OCR1 i ewentualnie flagę RXC. Ponieważ timer "stoi wyżej" w hierarchii...

    Mikrokontrolery AVR   20 Wrz 2012 21:22 Odpowiedzi: 8    Wyświetleń: 1461
  • Atmega328P Timer1 z przerwaniem Input Capture - ustawienie licznika

    Mam ustawiony timer w Input Capture Ustawienie timera z przepełnieniem licznika IC_Timers 40000 (po prostu potrzebowałem równy czas też dla odmierzania zegarka i innych bajerów do odmierzania czasu ) przerwanie co 20ms. https://obrazki.elektroda.pl/6280175200_... Od lewej okres, czas stanu wysokiego, aktualny timer ICR1, poprzedni timer...

    Arduino   06 Maj 2020 19:32 Odpowiedzi: 2    Wyświetleń: 795
  • Jak zintegrować ADC z TIMER2 w ATmega32 do próbkowania 8kHz w AVR Studio 4?

    Ja bym to jednak zrobił tak jak wynika z twojego opisu programu bascomowego. Czyli timer na 8kHz, w przerwaniu timera odczytujesz ADC i startujesz kolejną konwersję. ADC musi być tak ustawiony, aby skończyć konwersję przed kolejnym przerwaniem timera, co nie jest problemem. Dzięki temu masz gwarancję, że przy każdym przerwaniu timera (z wyjątkiem pierwszego)...

    Mikrokontrolery AVR   13 Lis 2011 15:02 Odpowiedzi: 21    Wyświetleń: 3390
  • Jak przyśpieszyć (zmodyfikować) program w na ATMega32

    OCR0=0x20; /// podobno mozna zjechac do 0 i otrzymac fck/2 Zjechać może i można, ale chyba tylko do sprzętowego przełączania pinu. bo obsługa przerwania w 1 cyklu jest niemożliwa. void timer0_comp_isr(void) { PORTC ^= BIT(0); } Wrzuć co kompilator wyrzuca do assemblera do kompilacji. W sumie na obsługe jest 32 takty razem...

    Mikrokontrolery AVR   02 Lut 2010 08:00 Odpowiedzi: 6    Wyświetleń: 2015
  • ATmega32, C, przerwanie ADC - program przestaje działać po kilku minutach

    Hmm, ja bym jednak dodał miganie pinem z timerka, chociaż wydaje się że procek idzie w maliny. Jeśli siada wszystko jak wygląda zasilanie? Może tu tkwi problem. Wepnij sondę zaraz przy zasilaniu ustaw wyzwalanie na 4.9V np i sprawdź czy się wyzwoli. Czym taktujesz procesor? Może warto wstawić generator. Ustaw BOR dodatkowo. gaskoin, volatile czy nie,...

    Mikrokontrolery AVR   12 Kwi 2011 19:37 Odpowiedzi: 13    Wyświetleń: 2545
  • ATmega32 sterowanie silnikami krokowymi - robot kartezjański

    Pierwsze, to nie możesz kuglować włączaniem i wyłączaniem przerwań. Silnik musisz zatrzymywać w inny sposób. z stepCounter zrób tablicę stepCounter[4]; Przerwanie zmodyfikuj mniej więcej tak [syntax=c] ISR(TIMER0_COMP_vect) //funkcja obsługi przerwania { for(char l=0; l<4; x++) { // lepiej for(char l=0; l<LSILNIKOW; x++) // i zrobić #define LSILNIKOW...

    Mikrokontrolery AVR   19 Mar 2018 15:54 Odpowiedzi: 8    Wyświetleń: 876
  • [C] Jak zaimplementować przerwania dla 2 wyświetlaczy 7-segmentowych w C?

    To co dawid512 napisał jest najprawdopodobniej na atmega32. Musisz poczytać dokumentację i zmienić ten kod, gdyż timer0 na atmega8 ma trochę mniejsze możliwości. [dodano] Można też skorzystać z timer2, jego obsługa będzie łatwiejsza.

    Mikrokontrolery AVR   28 Gru 2008 16:16 Odpowiedzi: 14    Wyświetleń: 2419
  • [ATmega32][C][AVR Studio 4] Slave SPI, timery i przerwania - kolizja.

    Jeśli układ nadrzędny nadaje te dwa bajty jeden po drugim, to może się okazać, że przerwa między bajtami jest zbyt mała: realizując proste wyślij-czekaj_na_koniec-wyślij-czekaj w poolingu uzyska się odstęp między bajtami rzędu pojedynczych us, co może być zbyt małe na zareagowanie układu podrzędnego. Używając na masterze DMA (jeśli jest taka możliwość)...

    Mikrokontrolery AVR   23 Lis 2011 21:03 Odpowiedzi: 6    Wyświetleń: 1979
  • [AVR C] Atmega32 - Liczenie naciśnięć przycisku z przerwaniami, problem z licznikiem

    sulfur - czemu clear? PIN B0 mam podciągnięty wewnętrznie do jedynki i naciskając przycisk zwieram go do masy, potem czekam aż znów będzie 1 [syntax=c]#include<avr/io.h> #include <avr/delay.h> #include <avr/interrupt.h> float k = 0; char bufor[10]; void inline na_tekst(float liczba) { dtostrf(liczba,4,1,bufor); } void timer_init()...

    Mikrokontrolery Początkujący   05 Cze 2012 05:08 Odpowiedzi: 15    Wyświetleń: 1769
  • Jak zliczać impulsy? XMEGA, system zdarzeń i timery.

    Czytam i sam się pogubiłem hehe . Czy tu chodzi o względne przesunięcie (tmf) czy bezwzględne (satanistik). Parę miesięcy temu robiłem sterowanie PID dla servo Xmega w bascom . [youtube]https://www.youtube.com/watch?v... Nie obyło się bez problemu , który polegał na zliczaniu bezwzględnym więcej niż 65535 impulsów . Mój wpis z innego...

    Mikrokontrolery AVR   23 Mar 2022 08:16 Odpowiedzi: 29    Wyświetleń: 753
  • Konfiguracja przerwań i timera w Atmega32-poprawność kodu ?

    Witam. Chciałbym prosić o pomoc. Czy ten kod jest poprawny. Program działa bez zarzutów. Natomiast, gdy włączę przerwanie"sei". Układ się zawiesza. [syntax=c]void init_Ex1() { // Timer clock = I/O clock / 1024 TCCR0 |= (1<<CS02)|(1<<CS00); // Clear overflow flag TIFR |= (1<<TOV0); // Enable Overflow Interrupt TIMSK |= (1<<TOIE0);...

    Mikrokontrolery   02 Gru 2024 11:59 Odpowiedzi: 3    Wyświetleń: 228
  • ATmega32 Bascom – Timer0 nie wywołuje przerwania, brak sygnału na PB.1 w Proteusie

    Witam potrzebuje zrobic program ktory bedzie w odpowiednich odstepach czasu wywolywal przerwanie i w tym przerwaniu bede sobie mogl wykonywac dalsze funkcje problem w tym ze nie dizala mi taki najbardziej podstawowy program Symuluje to w proteusie i nie chce zapalac pinub.1 chodzi mi o taki test powinna sie pojawic 1 na pb.1 przy wywolaniu przerwania...

    Mikrokontrolery   18 Kwi 2008 07:36 Odpowiedzi: 1    Wyświetleń: 1591
  • 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ń: 1551
  • [ATmega32U4][avr-gcc] - Typ zmiennej a jej wartość po petli while.

    Witam i proszę o wyjaśnienie, dlaczego jeśli zmienna x w funkcji main jest typu long int to po zakończeniu pętli while ma ona wartość mniejszą (66) niż jeśli jest typu int (86). Dzięki. [syntax=c] volatile uint8_t timer1; ISR (TIMER0_COMPA_vect){ uint8_t x = timer1; if (x) timer1 = --x; } int main (void) { TCCR0A |= (1<<WGM01);//tryb CTC TCCR0B...

    Mikrokontrolery Początkujący   14 Lis 2014 13:04 Odpowiedzi: 4    Wyświetleń: 945
  • ATmega32 - Przerwanie timer0 nie działa z warunkiem Transmit w USART_RXC_vect

    Nie wiem nic na ten temat. Na tą chwilę wydaje się że funkcja ustaw_timer() powoduje problemy, bo po jej wykonaniu układ nie reaguje na przychodzące dane. Dodano po 2 Po usunięciu z programu funkcji przelicz i ustaw timer i utawianiu timera na sztywno problem wciąż ten sam. Po inicjalizacji timera i rozpoczęciu transmisji zgodnie z przerwaniem TIMER0_COMP_vect...

    Mikrokontrolery AVR   04 Sty 2013 23:53 Odpowiedzi: 17    Wyświetleń: 2241
  • [ATmega32][C] Nie działa przerwanie od przepełnienia timera0

    Taka skromna mała propozycja, zrobione najprościej jak to możliwe - i chyba jasno - działa - przetestowane: #include <avr/io.h> #include <avr/interrupt.h> void led_toggle(); ISR (TIMER0_OVF_vect) { led_toggle(); } int main (void) { DDRA = 255; TCCR0 = 0x01; TIMSK = 0x01; PORTA=0xFF; sei();...

    Mikrokontrolery AVR   08 Lis 2011 09:26 Odpowiedzi: 23    Wyświetleń: 3074
  • atmega32 [C] - Obsługa klawiszy, wyświetlacza, przerwań i do tego ADC.

    Możesz użyć jednego timera. Procedura obsługi przerwania nie może przeszkadzać w obsłudze innych przerwań. W Twoim przypadku nie ma innych przerwań, więc jedyny warunek to ten, żeby procedura obsługi wykonała się w czasie mniejszym niż odstęp pomiędzy przerwaniami. To jest w sam raz dobry materiał na projekt z pustą pętlą główną, i tak to należy zrobić.

    Mikrokontrolery Początkujący   21 Kwi 2013 18:28 Odpowiedzi: 29    Wyświetleń: 3477
  • [Atmega32] Program w C - dioda miga co 2s zamiast co 60s, dlaczego?

    Traktuj cyknięcie Timer'a jako kwant czasu. Potem licz oddzielnymi licznikami (programowymi) te kwanty jako czas trwania i czas przerwy. Możesz w ten sposób zrobić, co dusza zapragnie. Przykładowo - gdy timer "cyka" co 1 sek. Możesz ustawić sobie, że masz 20 sekund (kwantów timera) czas trwania - potem (drugi licznik) 30 sekund (kwantów timera) czas...

    Mikrokontrolery AVR   22 Cze 2012 15:04 Odpowiedzi: 32    Wyświetleń: 4132
  • [Atmega32][C] Zliczanie kliknięć przycisku w timerze, eliminacja drgań przycisku

    Mógłbym prosić o szersze wyjąśnienie? W którym przerwaniu? Czy chodziło mniej wiecej o coś takiego? [syntax=c] #define F_CPU 1000000L #define czas_przerwania_T2 10 #include <avr/io.h> #include <avr/interrupt.h> volatile uint8_t wzor = 0; volatile uint8_t stan_portu= 0; ISR(TIMER0_COMP_vect) { TCCR0 &= ~( (1<<CS02 ) | (1<<CS01)...

    Mikrokontrolery AVR   22 Lis 2018 21:11 Odpowiedzi: 7    Wyświetleń: 1080
  • [atmega328p] [atmega328p][c] Timer0 - dioda nie miga, ustawienia 8MHz, kod nie działa

    Przepraszam, że odkopuję temat ale mam problem właśnie z timerem 0 w atmedze 328p i jak bym miał zakładać nowy temat to nazwał bym go prawie tak samo jak ten więc wolałem napisać w już istniejącym temacie. Chcę sprawdzić działanie 8-bit Timer/Counter0 w ATmega328P. Efekt do uzyskania prosty. Ustawiam pin C5 jako wyjście (na początku stan niski) i przy...

    Mikrokontrolery AVR   11 Sie 2014 23:33 Odpowiedzi: 7    Wyświetleń: 3843
  • [ATMEGA32][C] - Timer1 - licznik impulsów. Pytanie.

    Przy 6 kHz to można się pokusić o zliczanie programowe - czyli podajesz sygnał na wejścia mogące generować przerwania. Z drugiej strony, skoro stosujesz ATMega32, to może prościej wykorzystać ATXMEGA32, gdzie w zależności od wersji liczników masz nawet 8 (albo 16 8-bitowych) i sobie to ładnie sprzętowo rozwiążesz.

    Mikrokontrolery Początkujący   17 Lut 2013 19:10 Odpowiedzi: 10    Wyświetleń: 2259
  • [Atmega328] [Atmega328][C][PWM] - Jak poprawić jakość dźwięku .wav z karty SD?

    Przyczyna jest w tych linijkach Trzeba też pamiętać, że jeżeli zdefiniujemy tablicę n elementową i spróbujemy zapisać coś pod indeksem równym lub większym n to kompilator nie zgłosi błędu, ale skutkować to może nieprawidłowym działaniem programu.

    Mikrokontrolery   12 Wrz 2013 19:47 Odpowiedzi: 13    Wyświetleń: 3396
  • Atmega32: Przerwania dla serwomechanizmu i touch screena - problem z ramką

    proponuje znalezc mikrokontroler, ktory ma 8 PWMow [; PIC24, dsPIC - dla przykladu... wiekszosc ARMow rowniez ma ich sporo. a jesli sie nie da, to trzeba sobie zrobic na jednym timerze 'impuls' ktory bedzie rozdzielczoscia twojego PWMa - np co 100us. w przerwaniu od tego timera obsluzysz ile chcesz serw. przerwanie bedzie mialo swoje liczniki, ktore...

    Mikrokontrolery   13 Lut 2009 07:40 Odpowiedzi: 5    Wyświetleń: 2115
  • Atmega32[C] - Przerwanie od timera1 nie działa, miganie diody co 1s

    To moze ja to źle rozumiem: program sobie leci leci, a gdy licznik timera się przepełni następuje przerwanie, program wyskakuje do " ISR (TIMER1_OVF_vect){} " robi tam co ma robić i wraca z powrotem do w tym przypadku pętli.

    Mikrokontrolery AVR   01 Kwi 2014 01:25 Odpowiedzi: 12    Wyświetleń: 1308
  • Atmega328 - Jak zmierzyć czas trwania impulsu wtrysku samochodowego?

    Dodajesz przerwanie od przepełnienia timera i w nim zliczasz ilość przepełnień. Reszta to już matematyka. Przykłady: http://mikrokontrolery.blogspot.com/2011... http://mikrokontrolery.blogspot.com/2011...

    Mikrokontrolery AVR   25 Sie 2016 09:37 Odpowiedzi: 8    Wyświetleń: 2019
  • Jak zliczać impulsy z dwóch kontaktronów na ATmega32 w C++?

    Witam . Zadanie jest trywialne . Potrzebujesz 3 zmiennych i dwóch przerwań zewnętrznych plus przerwanie do wyświetlacza. Po starcie procka ustawiasz wartość jednej z zmiennych która będzie równa ilości przerwań wyświetlacza w czasie 10 sekund . Podczas aktywacji przerwania od T1 aktywujesz przerwania od INT0 i INT1 . INT0 zwiększa jedną zmienną a INT1...

    Mikrokontrolery AVR   19 Lip 2010 21:00 Odpowiedzi: 20    Wyświetleń: 2831
  • ATmega328P: Przerwanie Timera 8-bitowego - Dlaczego pierwszy kod nie działa?

    Korzystając z tego kursu [url=http://maxembedded.com/2011/06/avr-... nie moge uzyskać migania diody przy modyfikacji kodu: [syntax=c]int main( void ){ DDRB = LED1; PORTB = LED1; TCCR2B |= (1<<CS21)|(1<<CS22); TCNT2 = 0; TIMSK2 |=(1<<TOIE2); sei(); while(1){ } } ISR(TIMER2_OVF_vect) { if (TCNT2 >= 10) PORTB &=...

    Mikrokontrolery Początkujący   17 Wrz 2017 21:29 Odpowiedzi: 2    Wyświetleń: 1293
  • Jak zmierzyć średni prąd DC w prostowniku z ACS713 i Atmega32A?

    Mikrokontroler taktuję zewnętrznym kwarcem 11,0592Mhz, Timerem2 w przerwaniu załączam tyrystor i wykonuję pomiary w taki sposób: [syntax=c]ISR(TIMER2_COMP_vect) { if(ika1 && kroki == ika1) GATE_ON; //załączanie tyrystora kroki--; adc_cnt++; switch (adc_cnt) { case 1: temp = pomiar(I); //pomiar prądu if(temp>bufor_prad) bufor_prad=temp;// break; case...

    Układy Zasilające   28 Maj 2019 22:04 Odpowiedzi: 10    Wyświetleń: 744
  • [Atmega32][c] timer1 ctc nie dziala clear output on comp match

    A change of the COM1x1:0 bits state will have effect at the first compare match after the bits are written. For non-PWM modes, the action can be forced to have immediate effect by using the FOC1x strobe bits. Być może w tym jest problem. OC1A jest prawdopodobnie inicjowane z wartością 0 do momentu wystąpienia pierwszego "compare match". W trybach "set...

    Mikrokontrolery AVR   31 Mar 2011 14:52 Odpowiedzi: 5    Wyświetleń: 2352
  • Atmega 32 [C] - Wywołanie pomiaru w przerwaniu timera1

    Witam. Chciałbym wykorzystać przerwania timera1 w Atmega32 do realizacji pojedynczego pomiaru wartości na ADC. Timer ustawiam w tryb "PWM with phase correct", a ADC na pojedynczy pomiar: [syntax=c] //ustawienia timer1 TCCR1A |= (1<<WGM10) | (1<<WGM11); TCCR1A |= (1<<COM1A1); TCCR1B |= (1<<CS11); //POZWOLENIA NA PRZERWANIE TIMSK...

    Mikrokontrolery AVR   07 Lis 2015 10:25 Odpowiedzi: 16    Wyświetleń: 1575
  • [Atmega328p] [Atmega328p][c] - Przerwanie zewnętrzne na INT1 wywoływane zboczem narastającym

    Jeśli urządzenie działa tak jak chce autor, to każdy sposób wykorzystania przerwania zewnętrznego jest prawidłowy. W niektórych przypadkach podłączenie przycisku pod pin przerwania zewnętrznego jest niezbędne np. by wybudzić mikrokontroler z trybu Power Down lub Standby. Czasami nie ma po prostu innego wyjścia, ze względu specyficzne wykorzystanie...

    Mikrokontrolery AVR   26 Lis 2016 16:04 Odpowiedzi: 28    Wyświetleń: 2427
  • [avr] Jak wygenerować sygnał prostokątny 1-1000Hz na ATmega32A 8MHz w trybie CTC?

    ISR(TIMER1_OVF_vect) A wystąpi przepełnienie w trybie CTC?? Nie chciałeś przypadkiem włączyć innego przerwania : TIMSK|=(1<<OCIE1A); i później: ISR(TIMER1_COMPA_vect) { //... }

    Mikrokontrolery AVR   08 Sty 2014 12:28 Odpowiedzi: 15    Wyświetleń: 1689
  • [ATMEGA32][C++] - [WinAVR]Obsługa impulsatora obrotowego na przerwaniach.

    Pokazaną tam funkcję (ReadEncoder) po prostu zamień na ISR z przerwań enkodera, albo zrealizuj obie funkcje oddzielnie - tzw. wykorzystaj przerwania do wybudzania, a odczyt enkodera zrób niezależnie od przerwań pinu, np. w przerwaniu timera

    Mikrokontrolery AVR   02 Gru 2013 18:03 Odpowiedzi: 5    Wyświetleń: 2004
  • [Atmega32] [Atmega32][Eclipse/C] Problem z przerwaniami INT1 i INT0 w bramie świetlnej

    nie - bariera jest rozstawiona teraz na powiedzmy około 6 cm od siebie. Wydaje mi się, że jest to problem z timerem, ale wg mojej oceny prawidłowo go zadeklarowałem. Dodam, iż kwarc mam 11.0592MHz. Preskaler 256. Przerwanie timera co 1 sekundę.

    Mikrokontrolery AVR   07 Cze 2011 08:08 Odpowiedzi: 12    Wyświetleń: 3053
  • Atmega32 C - klawiatura matrycowa 4x4 na przerwaniach

    Czyli zamiast robić na przerwaniu INT0 zrobić na timerze? Ale wtedy schemat by pozostał taki sam bo co wtedy zrobić z sygnałem z klawiatury do INT0? A kod do odczytu aktualnego klawisza jest w porządku?

    Mikrokontrolery AVR   26 Wrz 2012 13:19 Odpowiedzi: 16    Wyświetleń: 4938
  • atmega32 - nie miga dioda, brak oznak dzialania timera0 od przepelnienia

    Przed petla while wlacz przerwania sei();

    Mikrokontrolery AVR   20 Wrz 2014 17:43 Odpowiedzi: 4    Wyświetleń: 966
  • [ATMega32] ATMega32: Nieprawidłowe działanie PWM przy ustawieniach portu i przerwaniach

    Witam. Od 3 dni siedzę już nad programowym PWM. Wykorzystuję do tego przerwanie na timerze, ale coś nie działa tak jak powinno otóż jak nie mam ustawionego stanu 1 na ostatnim bicie portu to PWM dziwnie się zachowuje. //Includes #include "avr/io.h" #include "inttypes.h" #include "stdio.h" #include "util/delay.h"...

    Mikrokontrolery AVR   06 Lis 2009 17:31 Odpowiedzi: 6    Wyświetleń: 2186
  • [atmega32] [atmega32][Bascom] Niezgodność czasu z kwarcem 16 MHz i problem z fusebitami

    o.... a czy jak wyskoczy inny timer (co 4ms) od zliczania czasu to nie przerwie działania funkcji Getrc5 ? bo sprawa jest taka, że: timer0 - wykorzystuje getrc5 timer1 - wyskakuje przerwanie co 4ms odswieża 4 segmenty BCD i co 250 wystąpień - 1sek zwiększa czas - sekundy timer2 - wtedy bedzie odpalac getrc5 ale przerwanie z timer1 przerwie dzialanie...

    Mikrokontrolery AVR   31 Gru 2008 01:56 Odpowiedzi: 29    Wyświetleń: 2826
  • AtMega32: Przerwanie Timera1 co 1s i wyświetlanie tekstu w CodeVision

    w nocie katalogowej jest ładna instrukcja jak kalibrować generator.

    Mikrokontrolery   25 Kwi 2008 23:16 Odpowiedzi: 10    Wyświetleń: 2249
  • [Atmega32][C/AVRStudio5] Transmisja asynchroniczna USART

    Wg mnie przerwanie od Timera0 ma wyższy priorytet i stąd tak się zachowuje, może się mylę. Spróbuj takiej opcji[syntax=c]ISR(XXX_vect, ISR_NOBLOCK) { ... } [/syntax]

    Mikrokontrolery AVR   21 Lis 2011 22:50 Odpowiedzi: 8    Wyświetleń: 1291
  • Brak ustawiania FLAGA_CZAS w przerwaniu timera - kod w pętli głównej nie wykonuje się

    Znaczy toglowanie nie jest docelową instrukcją. Zostało dodane w celu debagowania na oscyloskopie. Procesor docelowy ATMega32 bo takie akurat mam w zapasie. Przeanalizuję ten przykład kodu, popróbuję testować i zobaczę co wyjdzie. Po dodaniu volatile wszystko działa poprawnie. Mam dokładnie 2 takie same przebiegi prostokątne na PB4 i PB5, jeden z przerwania...

    Mikrokontrolery Początkujący   09 Cze 2022 09:58 Odpowiedzi: 11    Wyświetleń: 606
  • Atmega32 [c] - Jak generować podaną ilość impulsów w czasie?

    Zwłaszcza jak NWW wyjdzie dosyć wysoki np 1000. Jesteś optymistą. Przy podanych parametrach (50 i 0,1s) Maksymalne NWW (najmniejsza wspólna wielokrotność a nie dzielnik) to NWW=47*43*41*37= ponad 3000000. Zastanowiłbym się także nad użyciem przerwania od timera zamiast pętli z delayem. Nie ma się nad czym zastanawiać. Użycie timera to konieczność....

    Mikrokontrolery AVR   05 Gru 2009 00:11 Odpowiedzi: 3    Wyświetleń: 1466
  • ATmega32L - brak reakcji timera0 na impulsy z wejścia T0 w C++

    No to może się nie uruchamia przerwanie?:) Próbował kolega w procedurze obsługi przerwania zmienić coś z diodami i się zatrzymać wtedy? (Test czy się wywołuje przerwanie). B.R. Dodano po 4 Poza tym, spróbował bym ustawić ddrb&=0xfe (0 na pb0). Und upewnić się, czy na pewno jest "sprzętowe" połączenie przycisku taktującego z uC:).

    Mikrokontrolery   25 Mar 2008 13:11 Odpowiedzi: 8    Wyświetleń: 1583
  • [Atmega32A][asm] Jak uruchomić timer do wyłączania diod po 0,5s?

    Załóżmy, że to też błąd przy wklejaniu kodu (inaczej asembler zgłosiłby błąd). Powinno być R21 , a nie R121 . Być może to też błąd przy wklejaniu. Bity WGM12 , CS12 oraz CS10 nie znajdują się w rejestrze TCCR1A tylko w TCCR1B . Istotne jest jednak to, że ustawiając tylko bit WGM12 ustawiasz TIMER1 w tryb 4, czyli tryb CTC, w którym timer liczy od 0...

    Mikrokontrolery AVR   29 Lis 2018 20:35 Odpowiedzi: 12    Wyświetleń: 1071
  • Jak ustawić timer1 żeby przerwanie występowało co 1us?

    Witam, muszę tak skonfigurować timer1 aby przerwanie występowało co 1us. Mam uC atmega328pu i kwarc 16MHz. Warości, które wpisuję do rejestrów porównania są na pewno poprawne, ale w moim przypadku dioda zmienia swój stan w czasie dłuższym niż 1s (dla testów w ISR umieściłem licznik ,który w momencie osiągnięcia warości 1 milion zmienia stan diody)....

    Mikrokontrolery AVR   19 Kwi 2021 08:34 Odpowiedzi: 11    Wyświetleń: 885
  • [ATmega32] - [Basom] odczytywanie po I2C czasu z PCF8583

    Wielokrotnie wałkowane. W przerwaniu wrzuciłeś transmisje I2C, CLS, obsługę LCD i inne bzdety. Wydłub to i wstaw do pętli głównej programu. W przerwaniu ustaw tylko sobie jakiś bajt/flagę że coś się stało. Teraz obsługa przerwania zajmuje dłużej niż czas pomiędzy przerwaniami. To się musi sypać. Z PCFa możesz też wyciągnąć sygnał zegarowy (skonfiguruj...

    Mikrokontrolery Początkujący   15 Lis 2012 22:55 Odpowiedzi: 20    Wyświetleń: 2076
  • Pobieranie plików z serwera przez SIM868 do Optiboot na Atmega328PB

    "...\avr-objcopy.exe" -O ihex -R .eeprom... Zrobiłem to w automacie, ale spotkało mnie coś o czym wspomniał bart-projects tzn: Hex na PC`cie zajmuje mniej miejsca niż Bin bo w Bin albo cały obraz pamięci no i gdy nie miałem parametrów z "-R" to mój wsad dla małego procesora miał...

    Mikrokontrolery AVR   02 Sie 2022 12:28 Odpowiedzi: 20    Wyświetleń: 1443
  • [ATmega32][C][2 przerwania od przepełnienia licznika T0 i T2

    Witam serdecznie. Piszę program, w którym muszę zliczać przychodzące impulsy z licznika energetycznego do procka. Aby nie zliczać impulsów pochodzących od drgań styków wymyśliłam takie rozwiązanie. Jeśli na INT0 przyjedzie zbocze opadające, włącz licznik T0. Gdy licznik przepełni się- minie 32ms i w tym miejscu będzie poziom niski na pinie, to atmega...

    Mikrokontrolery AVR   31 Sty 2010 17:29 Odpowiedzi: 6    Wyświetleń: 3442
  • Matryca 4x4, problem ze stanami logicznymi atmega32

    masz totalnie pochrzanioną obsługę przerwania pomijam już ze jest zbyt obszerny ale wpisanie tam transmisji rs232 to już piramidalna pomyłka i to powoduje że nigdy tobie to nie zadziała. Poza tym kompletnie nie widzę powodu aby wyprowadzać sygnał na przerwanie INT0 moze tylko po to aby łatwiej mozna było sprawdzać przytrzymanie klawisza ale innego powodu...

    Mikrokontrolery AVR   02 Sie 2010 07:21 Odpowiedzi: 18    Wyświetleń: 2182
  • Jak odczytywać klawisze podczas pomiaru temperatury DS18b20 na ATmega32?

    No to tak: Jeżeli dobrze czytam program to masz 4 przyciski, timer ustawiony tak aby przerwanie od niego występowało co 50 Hz i nic poza tym. Używasz tylko przerwania od Timera - boisz się innych? Czy może to tylko nieznajomość AVR. Aż prosi się żeby przyciski działały pod INT0 / 1 - zewnętrzne przerwanie i po kłopocie. Następnie _delay_ms(750); zamienił...

    Mikrokontrolery Początkujący   25 Sty 2013 12:46 Odpowiedzi: 18    Wyświetleń: 2607
  • [c] Jak uzyskać przerwanie co 1s z Timer2 i kwarcem 32,768kHz na AtMega32?

    Potwierdzam, że CTC niepotrzebne - timer jest 8 bitowy. 32768/128=256 czyli 8 bitów timera - i wszystko gra :) Nie zapomnij o kondensatorach przy kwarcu.

    Mikrokontrolery AVR   08 Sie 2011 10:41 Odpowiedzi: 9    Wyświetleń: 7672
  • ATmega328PB + PCINT od dwóch enkoderów - gubi impulsy enkoderów

    (at)karol966 , jeśli Tobie podoba się "zwięzły kod", to tu masz obsługę dwóch enkoderów w trzech liniach:[syntax=c] const int delta[] = {0,1,-1,0, -1,0,0,1, 1,0,0,-1, 0,-1,1,0}; ... //enkoder 1 na PB0 i PB1, enkoder 2 na PB4 i PB5 void enkodery2() { baba = ((baba << 2) & 0xCC) | (PINB & 0x33); cnt0 += delta[baba & 0x0F]; cnt1 += delta[baba...

    Programowanie   19 Lis 2021 10:42 Odpowiedzi: 25    Wyświetleń: 615
  • [BASCOM][ATmega32] - Multipleksowanie wyświetlaczy 7-segmentowych +aliasy +pętla

    Tu masz program pod ATtiny2313, jeśli potrafisz programować, to też potrafisz przerobić program na ATMegę: [syntax=basic4gl]' Bardzo prosty zegar bez możliwości ustawiania Dim Sekjed As Byte , Sekdzies As Byte , Minjed As Byte , Mindzies As Byte Dim , Godzjed As Byte , Godzdzies As Byte , Mux As Byte , Migaj As Bit Config Portb = 255 : Portb = &B255...

    Mikrokontrolery AVR   14 Lis 2012 20:58 Odpowiedzi: 10    Wyświetleń: 3801
  • AVR/ATMEGA32 - Uproszczenie kodu wyś.7seg na przerwaniach i pomiar ADC róźnicowy

    Wyświetlanie segmentów na czterech wyświetlaczach (4 cyfry) bazuje na przerwaniach. char_gen - tablica kodów cyfr Do PORTB(0-3) są podłączone 4 cyfry. Reszta PORTB(3-7) jest wykorzystywana na inne cele i stan na pozostałych czterech bitach nie ulega zmianie. Kod programu działa poprawnie. Czy przychodzi wam pomysł w jaki można by uprościć wyświetlanie...

    Mikrokontrolery AVR   01 Sie 2012 19:03 Odpowiedzi: 6    Wyświetleń: 1479
  • [atmega32] zapios do eepromu i reset mikrokontrolera

    return przydałby się na końcu. I zacznij stosować ISR() Matko boska! tadzik weź ty się ze 4 albo 6 razy zastanów jak coś podpowiesz - RETURN w procedurze obsługi przerwania w C ????? Chyba że ty piszesz swoje programy w Bascomie ze wstawkami w C albo odwrotnie. do autora - żadnego polecenia return w przerwaniu bo będziesz miał tylko jeszcze gorzej....

    Mikrokontrolery AVR   14 Maj 2010 08:17 Odpowiedzi: 18    Wyświetleń: 1986
  • Atomowość w C: Zmienna _co20ms w przerwaniach i możliwe błędy

    Witam, A może coś takiego: timerExpired_within_ms . Pomaga ona w określaniu czy timer wygasł określony czas temu (przydaje się w przypadku kiedy nie wiemy ile zajmie wykonanie całej pętli, a funkcja timera jest krytyczna czasowo). Wykorzystanie w celach komercyjnych skutkuje postawieniem mi piwa :) Pozdrawiam.

    Mikrokontrolery   12 Sie 2011 13:22 Odpowiedzi: 7    Wyświetleń: 1546
  • [atmega32] Jak napisać program w C do multipleksowania 2 wyświetlaczy LED na ATmega32?

    margas4542 zaopatrz się w program TimerCycles ze tej strony: http://www.wkretak.pl/downloads.php?cat_... Dzięki temu obliczysz liczbę cykli czyli to co zapisuję się do rejestru OCR1A. Jeśli chodzi o timery to po pierwsze preskaler(czyli część obwodu timera który dzieli impuls zegarowy tj. zmienia rozdzielczość timera) jest ustawiony na 1 mówi o tym...

    Mikrokontrolery AVR   29 Gru 2010 10:51 Odpowiedzi: 15    Wyświetleń: 6891
  • [atmega32] - RTC, przerwania Timer2, maksymalna częstotliwość 32768Hz

    Poza tym nie ma znaczenia czy kod w przerwaniu zajmuje 3 linijki czy 100. Ciekawe stwierdzenie. Przerwanie jest wykonywane do końca. Kolejne nie zostanie obsłużone do puki nie skończy się poprzednie.

    Mikrokontrolery AVR   03 Sty 2015 01:33 Odpowiedzi: 19    Wyświetleń: 1350
  • Jak przechwycić przerwanie zewnętrzne w TIMER0 dla ATMEGA32 w C?

    Jak napisac funkcje w AVR dla ATMEGA32 w jezyku C, aby mozliwe było przechwycenie przerwania spowodowanego impulsem zewnetrznym w liczniku TIMER0?? Gdyż dla TIMER 1 ustawia sie bit TICIE1 w rejestrze TIMSK, a dla TIMER0 nie ma tam żadnego takiego bitu?? Jak to zrobić?? A drugie pytanko, czy jest mozliwość uzyskania 1 sekundy na TIMER0??? Dzieki za pomoc!!

    Mikrokontrolery   13 Lis 2005 21:35 Odpowiedzi: 2    Wyświetleń: 1478
  • Impulsator, Atmega328p na jednym przerwaniu INT0

    Może wtrącę swoje 3 grosze Wynik jest taki jak przypuszczałeś (at)dondu , zmienna intliczba znacznie odbiega od wartości przechowywanej w licznik . W niektórych przypadkach zwiększa się nawet od 5 do 10 razy przy jednym skoku impulsatora. Z testu wynika że procesor reaguje na każde drgnięcie, uruchamiając kolejne przerwania, ale z powodu nieustabilizowania...

    Artykuły   15 Mar 2015 15:13 Odpowiedzi: 13    Wyświetleń: 6306
  • ATmega32 - timer0 (CTC)ustawianie zadanej częstotliwości generacji przerwania

    No tak masz rację. Ale powiem Ci, że wartości 99900 Hz w ten sposób w ogóle nie da się tutaj osiągnąć przy zegarze 16 MHz i z użyciem jednego timera ;)

    Mikrokontrolery AVR   23 Gru 2012 12:29 Odpowiedzi: 28    Wyświetleń: 5226