timsk przepełnienie

Znaleziono około 221 wyników dla: timsk przepełnienie
  • Jak napisać prostą funkcję migania diodami (AVR)

    Nie chce mi się tego testować, ale powinno działać.. // prędkość zegara w hercach #define F_CPU 16000000UL #include <avr/io.h> #include <avr/interrupt.h> typedef unsigned char u8; u8 led_ZmianDoKonca; SIGNAL(SIG_OUTPUT_COMPARE1A) { // czy trzeba dokonać aktualizacji stanu wyjść diod? if(led_ZmianDoKonca != 0) {...

    Mikrokontrolery   08 Paź 2007 22:51 Odpowiedzi: 8    Wyświetleń: 3180
  • REKLAMA
  • Jak odczytać impulsy 5V z czujnika prędkości auta na komputerze przez USB?

    Tutorial do avr taki znalazłem: http://avr.elektroda.eu/?q=node/8 Jak byś czegoś w sieci szukał, to raczej unikaj tutoriala z patron.net, uczy złych nawyków i jest nieco nie na czasie. Pomiar częstotliwośći na AVR realizuje się w miarę łatwo, przy wykorzystaniu timerów, jeden timer pracuje jako licznik impulsów z zewnątrz, a drugi odmierza czas, mozna...

    Początkujący Elektronicy   15 Kwi 2007 22:08 Odpowiedzi: 5    Wyświetleń: 2382
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (2min)...
  • [atmega8][C] odbiornik podczerwieni i pilot bez nazwy

    Momentami odnoszę wrażenie, że nie wiesz co piszesz. Do pomiaru długości nie potrzebujesz dodatkowego timera oprócz tego t0. Wystarczy, że będziesz sprawdzał co określony czas, jeśli na wejściu będzie ten sam stan co poprzednio, to będziesz zwiększał pomocniczą zmienną. Jeśli stan się zmieni, to dopiero zapiszesz wartość do np.tablicy, żeby później...

    Mikrokontrolery AVR   04 Kwi 2009 17:39 Odpowiedzi: 26    Wyświetleń: 3809
  • ATmega32 - Licznik impulsów Timer0 i Timer1 ustawienie

    Zastanów się co będzie w rejestrze TIMSK po wykonaniu tych dwóch linii Twojego programu: [syntax=c]TIMSK = (1<<TOIE0); //przerwanie na przepełnienie ... TIMSK = (1<<TOIE1); //przerwanie na przepełnienie [/syntax] Nie definiuj F_CPU w kodzie z tych powodów: http://mikrokontrolery.blogspot.com/2011...

    Mikrokontrolery Początkujący   29 Mar 2013 22:18 Odpowiedzi: 15    Wyświetleń: 5811
  • Funkcja micros() na Attiny85 zwraca wyniki o 2% większe - odczyt zegara na przerwaniu

    Mam ustawiony timer na 4kHz [syntax=csharp]cli(); TCNT1 = 0; TCCR1 = 0; OCR1C = 249; // 4000 Hz (16000000/((249+1)*16)) OCR1A = OCR1C; TCCR1 |= (1 << CTC1); TCCR1 |= (1 << CS12) | (1 << CS10); TIMSK |= (1 << OCIE1A); sei();[/syntax] W przerwaniu timera machałem pinem [syntax=csharp]ISR(TIMER1_COMPA_vect) { //licznik timer1 przepełnienie...

    Mikrokontrolery Początkujący   21 Wrz 2021 20:34 Odpowiedzi: 8    Wyświetleń: 1098
  • REKLAMA
  • Dlaczego dioda nie miga co sekundę? Nauka wykorzystania timerów w Atmega8A.

    Cześć, uczę się wykorzystania timerów w mikrokontrolerze Atmega8A. Chcę aby dioda migała co sekundę. Wykorzystuję do tego 8 bityowy timer0. Taktowanie ustawione mam na 8000000Hz, a preskaler na 1024. Chcę, żeby przepełnienie występowało co sekundę czyli żeby dioda migała co sekundę, ale tak się nie dzieje. Zmieniam wartość TCNT0 na 30, bo taka wychodzi...

    Mikrokontrolery Początkujący   29 Gru 2020 20:10 Odpowiedzi: 4    Wyświetleń: 498
  • Atmega8 - Timer1 zmiana współczynnika wypełnienia

    Możecie rzucić okiem na ten kod: [syntax=c] include <stdlib.h> #include <avr/io.h> #include <util/delay.h> # include <math.h> #include <avr/interrupt.h> #include "HD44780.h" int a; ISR(TIMER1_OVF_vect) { PORTB|=(1<<PB1); // podciągnięcie do VCC } int main(void) { TCCR1A |= (1<<COM1A1)|(1<<WGM11)|(1<...

    Mikrokontrolery AVR   24 Lut 2014 18:26 Odpowiedzi: 18    Wyświetleń: 2403
  • Implementacja TimeOut w UART na AVR nie działa - zawiesza się w UART_receive

    Cześć, mam kłopot z którym nie mogę sobie poradzić. Próbowałem zrobić Timeout do obsługi odbieranych danych z UARTa. Ustawiłem Timer0 na przepełnienie i przerwanie co około 1ms (nie jest ważna super precyzja). Program wygląda tak [syntax=c]volatile uint8_t TimerProg; //F_cpu=8MHz //Timer 0 8 bit init TIMSK |= 1<<TOIE0; //zezwolenie na przewanie...

    Mikrokontrolery   07 Lut 2019 22:11 Odpowiedzi: 25    Wyświetleń: 1035
  • REKLAMA
  • [C] Obsługa przerwania przy przepełnieniu oraz wyplenienie PWM

    Masz w nim błąd polegający na tym, że używasz Timer2, a włączasz przerwania od przepełnienia Timer 0: Zmieniłem na: Podobnie z wektorem przerwań - używasz wektora z Timer0: Zmieniłem na: W jakim celu ustawiasz: Kwarc 16MHz Prescaler 64 Timer2 8 bitów= 256, zaczynam liczyć od 6 aby otrzymać 250 kroków Częstotliwość przepełnienia= Częstotliwość Kwarcu...

    Mikrokontrolery Początkujący   29 Gru 2011 16:01 Odpowiedzi: 6    Wyświetleń: 2643
  • News: Od dzisiaj jest dostępne AVRStudio w wersji 5

    Rejestr TIMSK to rejestr ,który jedynie informuje mikrokontroler ,które przerwania mają być włączone i obsługiwane. TIFR to rejestr w którym zapisywana jest flaga zgłoszenia obsługi danego przerwania . Każdy układ licznikowy może mieć kilka flag o róznych nazwach związane z różnymi sytuacjami np zgodne porównanie , przepełnienie itp. Jeśli kursy na...

    Mikrokontrolery AVR   09 Cze 2012 06:29 Odpowiedzi: 163    Wyświetleń: 32192
  • CNY17, Atmega16: Dioda na PD7 miga zamiast świecić przy detekcji zera

    [syntax=c]#include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include <stdlib.h> #define D7 7 //dioda podłączone do pinów portu D unsigned int counter=10110; int main(void) { DDRD = (1 << D7); PORTD=(1 << D7); // tutaj sobie zaświecasz diodę, ale do pojedynczych bitów to używaj "|=" zamiast samego...

    Mikrokontrolery AVR   24 Kwi 2013 20:19 Odpowiedzi: 17    Wyświetleń: 2427
  • REKLAMA
  • ATMEGA - Komunikacja ATMEGA8 po SPI a przepełnienie licznika 1

    Witam, Symulacja przesyłania/odbioru przez SPI działa w debugerze AVR Studio 4 gdy nie jest czynna obsługa przerwania przepełnienia licznika1 ISR(TIMER1_COMPA_vect), ale po przepełnieniu licznika zerują się wszystkie zmienne. Jeżeli obsługa przerwania jest aktywna (nawet pusta) to symulacja interface SPI nie działa. Brak wtedy sygnału zegarowego na...

    Mikrokontrolery Początkujący   30 Mar 2015 17:01 Odpowiedzi: 8    Wyświetleń: 1080
  • [C] Sterowanie diodą na PB1 w trybie Free Run ADC ATmega8 - nie gaśnie po spadku napięcia

    Witam! Napisałem program w C do mierzenia napięcia przez ADC w ATmega8, odczytuję z przetwornika wartość bitową od 0 do 1023. I dotąd jest wszystko ok, ale chcę sterować diodą na innym pinie(np PB1) w ten sposób, że gdy wartość odczytana będzie mniejsza od 500 to dioda ma nie świecić, a gdy przekroczy 500 ma świecić. Problem w tym, że gdy włączę układ...

    Programowanie   06 Lut 2019 14:25 Odpowiedzi: 3    Wyświetleń: 1083
  • ATmega16 - przepełnienie od T0 powoduje problemy na portach

    napisałeś, że nie korzystasz z przerwań - tzn nigdzie w programie nie masz na pewno polecenia sei(); ??? po drugie po co włączasz w ogóle zezwolenie na przerwanie Timera 0 lub 2 bitami TOIE0 lub 2 w TIMSK ???? skoro właśnie nie używasz przerwań przecież jeśli tylko programowo chcesz używać odmierzania czasu Timerem to bez zezwolenia na przerwanie powinieneś...

    Mikrokontrolery AVR   12 Wrz 2009 18:04 Odpowiedzi: 20    Wyświetleń: 1905
  • Jak zmierzyć prędkość obrotową turbiny na Atmega32 z czujnikiem Halla?

    Witam. chce zbudować urządzenie które będzie mierzyło prędkość obrotową turbiny i kilka innych rzeczy jak na razie utknąłem z pomiarem prędkości. układ opieram na scalaku Atmega32 do pomiaru prędkości wykorzystuje czujnik hala i magnes zamontowany na wałku (aktualnie wiatraczku komputerowym do testów) Program wygląda w ten sposób że chciałem mierzyć...

    Programowanie Początkujący   09 Lip 2019 19:49 Odpowiedzi: 3    Wyświetleń: 681
  • Jak działają przerwania? Problem z kodem.

    Wiem co robi przerwanie, problem w tym że nie potrafię określić jednoznacznie gdzie ono się rozpoczyna, gdzie zostaje zainicjowane. Czy przerwanie rozpoczyna się zaraz po zezwoleniu sei(); ? Mechanizm inicjowania przerwań jest z jednej strony relatywnie prosty, lecz dostatecznie zabezpieczony przed przypadkowym jego uruchomieniem. Aby uruchomic jakikolwiek...

    Mikrokontrolery AVR   17 Lis 2016 18:53 Odpowiedzi: 34    Wyświetleń: 2310
  • [atmega162] Czy 8-bitowy timer Atmega162 może przyjmować impulsy jak 16-bitowy?

    To przerwanie nie działa mi jak należy :| Albo ja znowu robię coś źle. Jak zrobię bez przerwań np tak: overflowT3 = 0; // czas = 0 (zero przekręceń licznika) //ETIMSK |= _BV(TOIE3); // zezwolenie na przerwania dla T3 TIMSK |= _BV(TOIE0); // zezwolenie na przerwania dla T0 TCNT0 = 240; // ustawienie wartości (max-16),...

    Mikrokontrolery   14 Lip 2009 19:17 Odpowiedzi: 5    Wyświetleń: 2289
  • [Atmega32][C] Odczytywanie tylko jednego kanału ADC zamiast kilku

    Witajcie, mam problem z odczytem wartości z 2 kanałów ADC. Procesor to atmega32. Używam Timer0 żeby przełączać kanały, a na wyświetlaczu wyświeltane są 2 wartości, ale obydwie pokazują to samo- odczytywany jest tylko jeden kanał Inicjalizacja ADC [syntax=c]void ADC_init() { // ADC ADCSRA = (1<<ADEN) |(1<<ADPS0) | (1<<ADPS2) | (1<<ADSC);...

    Mikrokontrolery AVR   09 Kwi 2014 18:30 Odpowiedzi: 11    Wyświetleń: 1530
  • ATMEGA32[C] tryb CTC i odliczanie dokładnie 1 sekundy

    Tak:) Zrobiłem:) Dzięki za pomoc!! Jeżeli TCNT1 doliczy się do OCR1 na skutek pracy CTC, to nie wywoła tego TCNT1, tylko rejestr OCR1 czyli przerwanie aktywowane bitem OCIE1A w rejestrze TIMSK (str. 112). Właśnie tam w przerwaniu z obsługi flagi OCF1A zostanie wygenerowane przerwanie, bo w końcu ustawiam WGM12 na taki tryb pracy timera. Gdyby był zwykły...

    Mikrokontrolery AVR   26 Sty 2011 22:20 Odpowiedzi: 16    Wyświetleń: 2844
  • LIRC - Jak interpretować dane z lirc.sourceforge.net dla pilota Azur 540R v2.0?

    Witam Kod pilota z lirc : # brand: Cambridge Audio # model no. of remote control: RC-540R V2.0 # devices being controlled by this remote: AV Receiver : AZUR 540R V2.0 # begin remote name Cambridge_Audio_RC-540R_V2.0 bits 16->długość ramki flags SPACE_ENC|CONST_LENGTH|REPEAT_HEADER eps 30 aeps 100---> współczynnik wypełnienia nośnej 30/100 header...

    Mikrokontrolery   06 Cze 2015 11:59 Odpowiedzi: 2    Wyświetleń: 816
  • Atmega 8: Diody na wyświetlaczu widmowym nie działają poprawnie po wgraniu kodu

    Hej. Zbudowałem sobie wyświetlacz widmowy, tylko po wgraniu właściwego programu nie działa jak należy. Ale gdy wrzucę do procka coś prostego np. żeby mrugał naprzemiennie diodami to wszystko działa jak należy i zero mrugania wiec wnioskuję że prędkość obrotowa jest wystarczająca. Mój procesor to Atmega 8, wyświetlacz ma 8 diod 6 diod jest podłączonych...

    Mikrokontrolery AVR   17 Sty 2012 22:26 Odpowiedzi: 2    Wyświetleń: 1090
  • Czy przerwanie jest "przechowywane"? Uszkodzona Atmega?

    Czesc, No niestety nie hula... probowałem tego. Myśle ze atmega jest zryta jakos... Mimo tego, ze mam obsługe przerwań i tak, wiem ze to musi działać bo skopiowałem to z mojego poprzedniego projektu, to mi się restartuje atmega. Zwrać na płytce nie ma. [syntax=c] #include <avr/io.h> // Załaduj bibliotekę input/output #include <avr/interrupt.h>...

    Mikrokontrolery AVR   06 Sie 2019 15:46 Odpowiedzi: 21    Wyświetleń: 1215
  • Jak odczytywać wartość jednych portów, by potem zmieniać stany innych?

    Witam Jestem w trakcie budowania małego projektu, mam z nim niestety mały problem z którym nie mogę sobie poradzić wygląda to tak że chce odczytywać wartość portów PC0...PC5 i w zależności od tego czy jest tam stan wysoki czy niski zmieniać stany na portach PD0,PD1,PD4,PD5,PD6,PD7. Gdy odczytuje piny PC0 i PC1 jest ok, ale gdy chce odczytać stany z...

    Mikrokontrolery AVR   02 Paź 2019 20:26 Odpowiedzi: 3    Wyświetleń: 450
  • [Atmega8][ADC] - Przetwornik ADC z przerwaniem nie działa

    dondu Przerobiłem kod według twoich porad. Teraz mam przerwanie od Timera0. [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> #include <stdlib.h> #define LED1 PD0 //definicja LED1 (do którego pinu podłączony LED1) #define LED2 PD1 //definicja LED2 (do którego pinu podłączony LED2) #define wejsc_1...

    Mikrokontrolery AVR   20 Cze 2014 12:47 Odpowiedzi: 10    Wyświetleń: 2688
  • Kod PWM dla serwomechanizmów na ATmega8 - jak działa i jak go zrozumieć?

    Moje pytanie brzmi czy "właściwy program" będzie wykonywany co 20ms?? Nie. Będzie wykonywany najszybciej jak się da. Wprawdzie ustawiłeś timer na jego przepełnienie co 20ms, ale nie korzystasz z niego do uruchamiania "właściwego programu". Aby to zrobić powinieneś: 0. zdefiniować zmienną globalną np.: volatile char WYKONAJ_PROGRAM; 1. włączyć przerwania...

    Mikrokontrolery   09 Sty 2012 11:32 Odpowiedzi: 10    Wyświetleń: 1954
  • AVR - Timer 1 w AVR - przerwanie nie działa jak powinno

    Witam, mam chyba dość banalny problem z timerem T1 w ATtiny45. Otóż celem jest generowanie przerwania co około 40 ms - czyli zadanie wydaje się praktycznie śmiesznie proste. Proste było w 8051, ale AVR mi się stawia. Do tego celu zaprzągnąłem timer T1 w konfiguracji „match compare”. Przy kwarcu 8 MHz, preskalerze 2048 oraz wartości OCR1A...

    Mikrokontrolery AVR   05 Lut 2014 21:48 Odpowiedzi: 10    Wyświetleń: 4890
  • AT90USB1287, assembler – obsługa przerwań, licznik i zapis czasu transmisji USART

    Absolutnie nie mam pojęcia co chcesz zrobić. Program który wstawiłeś jest kiepski: 1) Nie baw się w takie skomplikowane ładowanie danych ldi r17, 1<<CS02 out TCCR0, r17 in r16, TIMSK //tryb normalny sbr r16, 1<<TOIE0 out TIMSK, r16 //przerwanie od przepełnienia Tylko zrób to na brutala, bo tutaj niczym to nie grozi: ldi r16, (1<<TOIE0)...

    Mikrokontrolery Początkujący   30 Kwi 2013 19:22 Odpowiedzi: 6    Wyświetleń: 1653
  • [avr-gcc, ATmega16] regeler 3f + UART + encoder = problem

    Witam... To będzie sporo pisania więc trzymajcie się... ;) #include <avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> #include <inttypes.h> #include <stdlib.h> #define F_CPU 8000000 //wewnętrzny generato na 8Mhz #define PARITY_NONE 0 #define PARITY_EVEN (1<<UPM1) #define PARITY_ODD ((1<<UPM1)|(1<&...

    Mikrokontrolery   10 Wrz 2005 14:00 Odpowiedzi: 5    Wyświetleń: 2673
  • Atmega8 - Jak narysować przebieg sygnału z przetwornika A/C?

    Tak wiem jestem okropny w te klocki. Więc tak, teraz używam timera do przerwania. Mógłbyś mi wytłumaczyć czemu mam nie używać free runu? Floaty zastąpiłem intigerami. Efekty: piksele wyświetlają się na określonych poziomach. Niestety są między nimy spore odstępy. Poza tym gdy są przesuwane w lewo(aby był efekt zmieniającego się przebiegu) nie są aktualizowane...

    Mikrokontrolery AVR   28 Lut 2016 16:20 Odpowiedzi: 3    Wyświetleń: 975
  • ATMEGA32 - Ustawianie PWM w zależności od częstotliwości z czujnika

    Witam, mam problem ze sterowanie sygnałem PWM. Program służy do zaczytywania wartości częstotliwości z czujnika TCS3200 . W zależności od koloru jaki wykryje czujnik ma nastąpić zmiana wartości wypełnienia PWMa. W tym momencie dioda, którą mam podłączona pod wyjście OC2 cały czas świeci tak samo, niezależnie od wartości OCR2 . Próbowałem na różne sposoby...

    Mikrokontrolery AVR   07 Maj 2014 14:34 Odpowiedzi: 2    Wyświetleń: 1152
  • Jak ustabilizować wskazania obrotomierza modelarskiego na AVR Mega16?

    Witam... Bawie się troche z silnikami BLDC (przeróbki na 3f)... W związku z tym potrzebowałem obrotomierz... A do rzeczy wziąłem się tak... Mam w rurce zamontowaną żarówkę przed nią osłąnięte fotoogniwo z kalkulatora... Pomiędzy żarówką a ogniwem wiruje śmigło... Sygnał z ogniwa wzmacniam w dwóch stopniach na tranzystorach a potem podaje na inwerter...

    Mikrokontrolery   04 Lis 2008 14:50 Odpowiedzi: 18    Wyświetleń: 6717
  • Zmiana wyjścia PWM z PB3 na inne dla TIMERA2 - jak to zrobić?

    #include <avr/io.h> #include <avr/interrupt.h> #defineDOWOLNY_DDR DDRD #defineDOWOLNY_PORTPORTD #define DOWOLNY_PIN 7 volatile uint8_t pwm=0; int main(void) { DOWOLNY_DDR |= 1<< DOWOLNY_PIN;// ustaw jako wyjscie DOWOLNY_PORT &= ~(1<<DOWOLNY_PIN);// zero TCCR2 = 1<<CS22 | 1<<CS20;// Normalny...

    Mikrokontrolery AVR   10 Cze 2010 14:31 Odpowiedzi: 29    Wyświetleń: 2696
  • ATMEGA8 – obsługa dwóch ADC na przerwaniach, brak wywołania ISR po konwersji

    zrobiłem pomiar ADC na 2 kanałach a wynik wyświetlam na LCD mam ale problem z tym że adc jest 10 bitowy i gdy chce wyświetlić wynik licząć na to że bedzie od 0 do 1023 okazuje sie że wyświetlą jakies brednie powyżej 4200 ... nie rozumie czemu. jezeli wyswietle sobie wynik tylko z ADCH ( rejest 8 bitowy 0-255) to pokazuje poprawie od 0 do 255 na lcd...

    Mikrokontrolery AVR   16 Lut 2015 09:45 Odpowiedzi: 17    Wyświetleń: 1911
  • [ATmega 16] [C] - Jak poprawnie odczytać ADC z fotorezystora?

    Więc mój program wygląda mniej więcej tak: [syntax=c]#define wej_1 PA2 #define wej_2 PA3 #define wej_3 PA4 #define wej_4 PA5 #define VREF 5.0 volatile uint8_t adc1;//zmienna do pomiaru ADC wej_1 volatile uint8_t adc2;//zmienna do pomiaru ADC wej_2 volatile uint8_t adc3;//zmienna do pomiaru ADC wej_3 volatile uint8_t adc4;//zmienna do pomiaru ADC wej_4...

    Mikrokontrolery Początkujący   12 Gru 2012 20:52 Odpowiedzi: 19    Wyświetleń: 2979
  • [ATMEGA 16][C] - Timer1 odczytywanie częstotliwości

    Witam, opiszę Wam mój problem. Próbuję odczytać atmegą 16 częstotliwości w zakresie [0-1MHz] . Pod kontroler podłączony jest wyświetlacz, który co jakiś czas ma pokazać wartość ICR1. Powoli przesiadam się na język C i jest on dużo wygodniejszy ponieważ dużo problemów można rozwiązać samemu z pomocą DataSheet-a. Tak więc z niego wyczytałem co muszę wpisać...

    Mikrokontrolery   14 Mar 2014 22:28 Odpowiedzi: 9    Wyświetleń: 1821
  • [Atmega32] [Atmega32][Eclipse/C] Problem z przerwaniami INT1 i INT0 w bramie świetlnej

    Program jest dość obszerny więc postaram się przedstawić wszystko co jest potrzebne do przeanalizowania. Więc tak: PROGRAM GŁÓWNY: PRZERWANIA TIMERY [syntax=c] /*Definicja funkcji odnoszacych sie do Timera 1*/ #define Timer1_ON TCCR1B |= (1<<CS12) /*Preskaler = 256 */ #define Timer1_OFF TCCR1B &= ~(1<<CS12) void Timer1_Init(void) //Funkcja...

    Mikrokontrolery AVR   07 Cze 2011 08:08 Odpowiedzi: 12    Wyświetleń: 3095
  • [C] Projekt pulsometru - problem z inicjacją timer1 w AVR Studio 5

    Witam, Postanowiłem tutaj napisać, ponieważ mam problem z timerem1. Napisałem program zgodny z algorytmem, który umieściłem poniżej (układ ma zliczać impulsy na wejściu, następnie je uśredniać, a wynik wyświetlać). Póki co testuje go na ISISie i jedyne co pojawia mi się na wirtualnym wyświetlaczu to wynik -1. Tak jak wspomniałem w pierwszym zdaniu,...

    Mikrokontrolery AVR   04 Sty 2012 21:06 Odpowiedzi: 5    Wyświetleń: 1918
  • Zliczanie impulsów enkodera 100 impulsów/obrót – AVR, wyświetlacz nie reaguje

    Przyznam że niezbyt zrozumiały jest dla mnie ten program z obsługą enkodera, ciężko mi to ogarnąć wszystko po prostu. O co chodzi tak w skrócie z tym przerwaniem timera? Dodano po 3 Czytam teraz ciekawy artykuł o timerze 0, pisze że jego zadaniem jest zliczanie przychodzących do niego impulsów, jeśli to tak działa, to myślę że idealne rozwiązanie. Dodano...

    Mikrokontrolery AVR   27 Gru 2012 23:08 Odpowiedzi: 20    Wyświetleń: 4443
  • [Atmega8] [Atmega8][AVR-gcc] - Jak dekodować 2 sygnały PPM z odbiornika RC?

    Dobra pierwsze podejście do kodu: Atmega8 ustawiona fusami na 8Mhz Najpierw dobór preskalera. Jak już wcześniej pisałem pomiar jest od 1,2-1,9ms więc zliczanie czasu moim zdaniem powinno być mniejsze od 0,05ms. Dobrałem preskaler 64 po czasie 524.288ms następuje przepełnienie T1 dla 0xFFFF, a więc jeden takt zliczania ma 524.288/65535 czyli 0,008ms...

    Mikrokontrolery Początkujący   13 Lut 2013 22:02 Odpowiedzi: 8    Wyświetleń: 3291
  • ATTiny2313 - Konfiguracja Timer0 w C do migania diodą LED bez użycia Delay

    Najtrudniej analizuje się własny kod, bo zawsze patrzy się przez pryzmat wiedzy o tym co on powinien robić i nie dostrzega się drobnych błędów :) Zgadzam się z tym w 100%. Przy Bascomie rzadko sięgałem do PDF'ów kontrolerów, przy C nie da się bez tego wszystkiego zrobić. Bez tych 500 "przekręceń" licznika nawet w Bascom by nie poszło, jak zwykle zbyt...

    Mikrokontrolery Początkujący   05 Lis 2015 15:45 Odpowiedzi: 47    Wyświetleń: 3087
  • Gasniecie LCD przy dużej czestotliwośći. atmega8

    Witam Robie PWM ( tryb 14 -atmega8) jego sterowanie odbywa sie za pomocą 16 bitowego rejestru ICR1 który to odpowiada za uzyskaną częstotliwość na wyjściu OCR1A (PB1) . Jezeli do rejestru ICR1 przypisuje stała wartość to wszystko jest ok, dioda poprawnie swieci, wynik na lcd jest OK. W momencie kiedy rejestr ICR1 zależy od adc1 to wtedy wyswietlacz...

    Mikrokontrolery   25 Lut 2015 00:03 Odpowiedzi: 7    Wyświetleń: 936
  • Stany nieustalone uC, opóźnienie załączenia tranzystora

    załączam program, ale to nie jest problem napewno tego.: spark2_nowy.h ioinit.h enkoder.h spi.c [syntax=c] static inline void SPI_SET_SS() { PORTB|=(1<<PB2); } static inline void SPI_RESET_SS() { PORTB&=~(1<<PB2);// SS -> PB2 } void SPI_master_init() { SPI_SET_SS(); SPCR = _BV(SPE) | _BV(MSTR) | _BV(SPI2X);// (SPE) SPI Enable, (MSTR)Master...

    Programowalne układy logiczne   21 Sty 2015 17:22 Odpowiedzi: 127    Wyświetleń: 14595
  • ATMEGA8 - Dziwne zachowanie pętli while przy przesuwaniu tekstu w AVR GCC

    Witam. Nie mam już pomysłu na rozwiązanie mojego problemu. Program działa, ale przy przesuwaniu tekstu w tablicy do prawej AVR GCC generuje dużo mniejszy kod (1002 bajty) niż jeśli zakomentuję tę część pętli głównej programu (1366 bajtów). Kompilacja przechodzi bez warningów w obu wypadkach. Dodatkowo po zaprogramowaniu układu program nie wraca do głównej...

    Mikrokontrolery AVR   06 Lut 2014 23:26 Odpowiedzi: 4    Wyświetleń: 1485
  • [C] Jak wyświetlać liczby 2-cyfrowe na 7-segmentowych LED z Atmega32?

    Dodano po 1 Cytat: Gdzie timer realizuje zliczanie ? Timer zlicza automatycznie zwiększając wartość rejestru TCCR0. W tym przypadku TCCR0 jest zwiększany od zera do 255. Gdy nastąpi przepełnienie czyli przejście z 255 na 0 następuje wywołanie procedury przerwania. Cytat: Widać też lekkie miganie wyświetlaczy... Najwyraźniej częstotliwość 'przełączania'...

    Mikrokontrolery AVR   11 Sie 2011 11:41 Odpowiedzi: 33    Wyświetleń: 5062
  • C AVR - RC5: Jak sterować diodą LED klawiszem 55 z pilota?

    Witam, na wstępie dodam że jestem bardzo początkujący w programowaniu. Staram się stworzyć program który by włączał i wyłączał funkcję RGB, poprzez pilot RC5. Staram się to zrobić po kolei i najpierw próbuję gasić i zapalać pilotem diodę. Problemem jest to, że program reaguje na każdy przycisk a nie na konkretny - zaprogramowany. Chce sterować klawiszem...

    Mikrokontrolery AVR   10 Paź 2014 08:17 Odpowiedzi: 3    Wyświetleń: 1764
  • [AVR] [AVR][C] - Pilot IR Olympus RM-1 na ATTiny2313 nie działa z GCC

    Witam, Coś ostatnio mało ludzi odpowiada mi na pytania w Bascomie, więc postarałem się napisać swój program w C. Liczę więc na pomoc specjalistów od GCC ;) chciałbym zrobić pilot IR do mojego aparatu fotograficznego Olympus. Ze stronki lirc sprawdziłem sobie co i jak ma być dla pilota RM-1. Powiem nawet że chyba rok temu zrobiłem to w assemblerze i...

    Mikrokontrolery AVR   09 Paź 2008 23:27 Odpowiedzi: 18    Wyświetleń: 3210
  • [Atmega8] [Atmega8][C/winavr] Niezrozumiałe działanie zmiennej w sterowniku kotła

    Witam! Skonstruowałem sobie urządzenie, które ma służyć do optymalnego ustawienia sterownika kotła. Mierzy temperatury na zewnątrz i wewnątrz, liczy ich średnie, minima i maksima, jest podłączone do sterownika kotła pod przekaźnik (przez transoptor) i zlicza ilość załączeń podajnika w różnych trybach pracy i sumaryczny czas. Od dłuższego czasu walczę...

    Mikrokontrolery   09 Lut 2011 00:47 Odpowiedzi: 12    Wyświetleń: 2206
  • [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ń: 1725
  • [Atmega32] Jak skonfigurować dwa 8-bitowe timery w Atmega32 do różnych zadań?

    Tu uruchamiasz timer0 z preskalerem ... [syntax=c] //######## konfiguracja timera1 ############## TIMSK |= (1<<TOIE0); //Przerwanie overflow (przepełnienie timera) TCCR0 |= (1<<CS02) | (1<<CS00); // źródłem CLK, preskaler 1024 TCNT0 = timer_start;// //Początkowa wartość licznika //######################################... [/syntax]...

    Mikrokontrolery AVR   06 Lis 2011 00:27 Odpowiedzi: 1    Wyświetleń: 1268
  • sekwencyjne sterowanie led za pomocą mikrokontrolera

    Opisujesz kod inny niż wkleiłeś: [syntax=c]int main(void) { DDRD = 0xFF;//diody DDRC = 0xff;//przyciski //######## konfiguracja timera ############## TCCR0 |= (1<<CS02) | (1<<CS00); // źródłem CLK, preskaler 1024 TIMSK |= (1<<TOIE0); //Przerwanie overflow (przepełnienie timera) sei(); //Globalne uruchomienie przerwań while(1) { //...

    Mikrokontrolery AVR   14 Sty 2014 23:53 Odpowiedzi: 23    Wyświetleń: 2304