tccr0 atmega32

Znaleziono około 229 wyników dla: tccr0 atmega32
  • atmega32 - nie miga dioda, brak oznak dzialania timera0 od przepelnienia

    Demo program. http://extremeelectronics.co.in/avr-tuto... brak TCNT0=0; Zobacz tez TCCR0.

    Mikrokontrolery AVR   20 Wrz 2014 17:43 Odpowiedzi: 4    Wyświetleń: 957
  • Konfiguracja rejestru TCCR0 dla przerwania 8-bit ATmega32 w C

    Witam! Mam problem z uzyskaniem przerwania od licznika 8-bitowego. Piszę w C i w żaden sposób nie mogę się doczytać jak skonfigurować rejestr TCCR0. Przerwanie potrzebne jest mi do całkowania numerycznego metodą trapezów sygnału z żyroskopu. Doczytałem się, że trzeba coś ustawić w rejestrze SREG, ale mało mi zostało czasu, a potrzebuję tego do pracy...

    Mikrokontrolery AVR   05 Sty 2010 01:51 Odpowiedzi: 5    Wyświetleń: 1781
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

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

    Coś namieszałeś... Jeżeli chcesz ustawić licznik w trybie CTC to musisz: -włączyć tryb: TCCR0 |= (1<<WGM01); -wybrać preskaler w rejestrze TCCR0 -podział w rejestrze OCR0

    Mikrokontrolery AVR   30 Gru 2012 14:29 Odpowiedzi: 17    Wyświetleń: 2439
  • REKLAMA
  • Zmiana TIMER1 na TIMER2 dla PWM w ATMEGA32 - jak to zrobić? BASCOM

    Config Pinb.3 = Output 'Config Timer0 = Pwm , Prescale = 1 , Compare Pwm = Clear Down Set Tccr0.pwm0 Set Tccr0.com00 Set Tccr0.com01 Set Tccr0.cs00 Ocr0 = 127 'T2 już normalnie ;) Config Timer2 = Pwm , Prescale = 1 , Compare Pwm = Clear Down Ocr2 = 127

    Mikrokontrolery Początkujący   18 Paź 2024 07:59 Odpowiedzi: 12    Wyświetleń: 282
  • REKLAMA
  • ATmega32, [C], CTC - brak reakcji na program [ROZWIAZANE]

    Tutaj druga instrukcja anuluje pierwszą. Zrób to w jednej instrukcji lub w drugiej użyj operatora |= Poza tym nie ma bitow CS02 i CS00 w rejestrze TCCR1B. Wprawdzie są w rejestrze TCCR0 i mają takie same pozycje, więc kod ma szansę działać, ale jakoś źle się na to patrzy :) To jest zezwolenie na przerwanie od timer overflow. Zezwolenie na przerwanie...

    Mikrokontrolery AVR   13 Lip 2016 10:11 Odpowiedzi: 2    Wyświetleń: 1059
  • [ATmega32] Jak napisać procedurę obsługi przerwania timera0 dla diody LED na ATmega32?

    [syntax=asm] .device ATmega32 .include "m32def.inc" .def temp= r16 .def counter= r17 .org 0 RJMP start .org $016 ;wektor przerwania dla przepełnienia timera RJMP przerwanie start: ldi temp, high(RAMEND) out SPH, temp ldi temp, (1<<CS00) | (1<<CS02) ;konfiguracja preskalera i zegara out TCCR0, temp ;w rejestrze TCCR0 (ustawienia główne timera)...

    Mikrokontrolery AVR   27 Paź 2011 11:19 Odpowiedzi: 8    Wyświetleń: 2552
  • [ATmega] [ATmega][Bascom] Czy PWM na Timer0 da taki sam przebieg jak na Timer1?

    Dokładniej chodzi mi o ATmega16(L) i ATmega32(L). Dam sobie radę ze skonfigurowaniem TCCR0. Chodzi mi tylko o zastąpienie wyjścia OCR1A wyjściem OC0 i zwolnienie Timera1 do innych zadań. Czy to zadziała?

    Mikrokontrolery AVR   05 Maj 2010 18:29 Odpowiedzi: 3    Wyświetleń: 4328
  • REKLAMA
  • [Atmega32]+czujnik przyśpieszenia+obsluga PWM / ADC

    Teraz jest dużo lepiej. Wypada jednak, abyś uruchomił ADC po skonfigurowaniu wszystkich opcji odpowiedzialnych za przetwornik. Czyli bit ADEN powinien być ustawiany na samym końcu ADC_ini. To samo dotyczy timera, przy czym za start timera odpowiada ustawienie jego preskalera. Moim zdaniem zerowanie preskalera i tak jest jednorazowe, więc traktuje je...

    Mikrokontrolery AVR   06 Paź 2011 15:40 Odpowiedzi: 27    Wyświetleń: 3680
  • [atmega328p] [atmega328p][c] Timer0 - dioda nie miga, ustawienia 8MHz, kod nie działa

    Bity CS00 i CS02 od preskalera są w rejestrze TCCR0B, a nie TCCR0A. Masz preskaler na 0 więc timer nie zlicza.

    Mikrokontrolery AVR   11 Sie 2014 23:33 Odpowiedzi: 7    Wyświetleń: 3843
  • [C] Atmega32 Timer0 CTC – dioda nie zapala się w przerwaniu, kod nie działa

    Chcialbym napisac najprostrzy program aby sprawdzic czy progra mi wogole wchodzi w przerwanie czyli czy zapali diode. Ale zupelnie nic sie nie dzieje. Zarówno symulacja programowa w AVR Studio, jak i program uruchomiony na realnym sprzęcie działa poprawnie. Albo się pomyliłeś co do podłączenia diody, albo procesor jest uszkodzony. Po drobnej zmianie...

    Mikrokontrolery   07 Mar 2011 09:24 Odpowiedzi: 8    Wyświetleń: 1997
  • Atmega328 timer0 nie odlicza czasu/nie generuje przerwania (tryb normalny)

    Twoje obliczenia są (z grubsza) OK, jednak w mikrokontrolerze ATmega328 rejestr TCCR0A nie posiada bitów CS00 oraz CS02. Bity te znajdują się w rejestrze TCCR0B. Notabene, bitów WGM0n nie musisz zerować. W trakcie Power on Reset zostają one ustawione na wartość 0. Zerowanie może być konieczne tylko wtedy, kiedy wcześniej sam ustawisz je na wartość...

    Mikrokontrolery AVR   11 Kwi 2019 11:28 Odpowiedzi: 9    Wyświetleń: 828
  • REKLAMA
  • Przeniesienie kodu SPWM z Arduino UNO (ATmega328P) na ATTiny85A – kompatybilność

    Po niewielkich zmianach powinno działać też na Attiny85. Wrzucam kod dla Attiny85 (nie testowany; nie mam jak): [syntax=c]//############################... // SPWM implementation for Attiny85 // Clock frequency 8MHz internal clock oscillator // High Fuse: 0xFF, Low Fuse: 0xE2 // // Signals generated: // - SPWM...

    Arduino   20 Lip 2022 05:51 Odpowiedzi: 25    Wyświetleń: 879
  • Najprostrzy program wykorzystujacy Timer0 w Atmega32

    Zamieszczam przyklad programu napisanego na kolanie, zmienia stan lini PC3 co okolo (LicznikMax*10ms ) - wychodzi co ok. 100 ms Gdybyś miał wątpliwości to podniosłem moje kości z krzesła przed komputerem po płytkę z AtMega32 i sprawdziłem w ukladzie - DZIAŁA! Kompilowany pod ICC626, polecam "Wizarda" ,pomaga w minute ustawić co potrzeba bez sięgania...

    Mikrokontrolery   12 Lut 2005 16:43 Odpowiedzi: 1    Wyświetleń: 2102
  • ATMEGA32 – preskaler TIMER0 i TIMER1, który rejestr decyduje o ustawieniu?

    Witam W dokumentacji napisane jest, że preskaler dla TIMER0 i TIMER1 jest wspólny. Ustala się go w TCCR0 (TIMER0) albo TCCR1B (TIMER1). Nie mogę znaleźć informacji z którego rejestru ustawianie ma wyższy priorytet (jest ważniejszy) czy TCCR0 czy też TCCR1A. Sprawdziłem, że kolejność ustawiania rejestrów nie ma znaczenia. Może ktoś wie jak to działa??

    Mikrokontrolery   25 Sie 2006 21:40 Odpowiedzi: 1    Wyświetleń: 1691
  • Przenoszenie kodu z Bascom do AVR GCC - obsługa EEPROM i timera

    (at)stozek - normalnie w Bascom nie jest potrzebna komenda Start Timer0 bo jest on uruchamiany od razu podczas konfiguracji. Używa się tej komendy tylko jeśli poprzednio zatrzymałeś Timer poprzez Stop Timer0. Rozumiem, że zatrzymujesz timer. Tak więc zatrzymywanie timera to zabranie mu źródła taktowania. Bascomowe komendy moża wiec rozumieć tak: Start...

    Mikrokontrolery AVR   06 Sty 2024 09:40 Odpowiedzi: 3    Wyświetleń: 288
  • Atmega 8 - Licznik do14, Kod C jak wyzerować licznik pierwszym impulsem?

    Musiałbyś dodać zmienną, która będzie służyła do odmierzania czasu bez impulsów, tzw. "timeout". Jeśli przez okres ponad 10 s nie przyjdzie żaden impuls, to n=0. Wbrew pozorom, liczenie timeoutów najłatwiej zrealizować w przerwaniu :) Dodano po 1 fragmenty kodu: inicjalizacja przerwań (akurat dla Atmega32) [syntax=c] TCCR0 |= (1 << CS02); TIMSK...

    Mikrokontrolery Początkujący   26 Sty 2016 18:55 Odpowiedzi: 11    Wyświetleń: 1794
  • [AVR][ATMEGA32][C] - Prośba o krytykę pierwszego programu AVR.

    Dane zamiast do switcha pakujesz do tablicy np. uint8_t cyfry[]={0x81,0xF3,.....}; i potem wywołujesz: PORTC=cyfry[liczba_do_wyswietlenia]; A co do zapisów szesnastkowych, to na prawdę się łatwiej Ci czyta? To jakie bity ustawiam(ustalić w czasie <= 2s): TCCR0=0x67; Za pomocą przesunięć możesz też segmenty zapisywać, np. (1<<SEG_A)

    Mikrokontrolery AVR   03 Gru 2012 22:41 Odpowiedzi: 12    Wyświetleń: 2811
  • 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ń: 2006
  • Czujnik odległości HC-SR04, LED i Atmega32, język C

    Serdecznie dziękuję za pomoc - aktualnie udało mi się opanować czujnik w taki sposób, że oscyloskop pokazuje jego prawidłowe działanie na pinach echo i trigger, a zakomentowana funkcja na dole powoduje zaświecenie lampki na - powiedzmy - 50% jej mocy. Próbuję dojść do tego, jak połączyć działanie funkcji PWM wraz z funkcją od Timer0, ponieważ w obu...

    Mikrokontrolery Początkujący   02 Lip 2022 16:56 Odpowiedzi: 12    Wyświetleń: 1869
  • Atmega8 - Przerwania,tryb CTC nie działa tak jak trzeba

    Witam :) Próbuje odpalić tryb CTC na Atmega8-przerwanie co 5ms i nie mogę sobie poradzić pomimo czytania PDF.Mało rzeczy robiłem na przerwaniach a jeśli już to na Atmega32 gdzie korzystałem z tego: Przerwanie co 5ms więc mam 1 sekundę. ATMEGA32: [syntax=c] TCCR0 |= (1<<WGM01); tryb CTC TCCR0 |= (1<<CS02)|(1<<CS00); preskaler = 1024...

    Mikrokontrolery AVR   28 Sie 2012 09:45 Odpowiedzi: 8    Wyświetleń: 2250
  • [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ń: 2544
  • [ATMEGA32,ATMEGA644] ATMEGA32 vs ATMEGA644: Konfiguracja TC0 w trybie PWM

    Preskaler jest w innym rejestrze - patrz TCCR0A i TCCR0B w dokumentacji. Porównaj także tabelki timera0 "Waveform Generation Mode Bit Description" w obu dokumentach. Można dwa kanały.

    Mikrokontrolery AVR   02 Kwi 2017 19:30 Odpowiedzi: 4    Wyświetleń: 1011
  • [C] Jak wyświetlać liczby 2-cyfrowe na 7-segmentowych LED z Atmega32?

    [syntax=cpp] #define F_CPU 16000000UL #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #define wys1 PORTA = 0b11111110 #define wys2 PORTA = 0b11111101 #define wyl PORTA = 0xFF; int cyfra(int _cyfra); char licznik = 0; int w1, w2, i; SIGNAL(SIG_OVERFLOW0) { if (i==1 ) { wyl; PORTB=cyfra(w1); wys1; i=0; } else {...

    Mikrokontrolery AVR   11 Sie 2011 11:41 Odpowiedzi: 33    Wyświetleń: 4939
  • ATMEGA328P - HC-sr04: Timer nie zmienia wartości przy zmianie odległości

    Coś takiego znalazłem. Co prawda na Atiny ale można przerobić. [syntax=c]// // Talking to ultrasonic sensor HC-SR04 with an ATtiny84, and // sending distance data using serial communications. // // electronut.in // #include <avr/io.h> #include <string.h> #include <util/delay.h> #include <avr/interrupt.h> #define F_CPU 8000000...

    Mikrokontrolery AVR   10 Kwi 2017 04:56 Odpowiedzi: 3    Wyświetleń: 930
  • 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ń: 222
  • PWM, Timer1 16bit w Atmega32 i przebieg na oscyloskopie

    Więc jeszcze do zrozumienia timerów w atmega32 do przykładu i analizowania przebiegów na oscyloskopie dorzucę Timer0 8bit i kilka zrzutów. Zrobiłem taką konfigurację: DDRB |= (1<<PB3); TCCR0 |= (1<<WGM01) | (1<<WGM00) | (1<<COM01) | (1<<CS02); OCR0 = 104; Preskaler 256, częstotliwość Fast PWM jaką chcę uzyskać to 300Hz....

    Mikrokontrolery   05 Paź 2023 18:24 Odpowiedzi: 21    Wyświetleń: 609
  • [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ń: 1229
  • Czy kod i schemat do sterowania silnikiem krokowym Atmega32 są poprawne?

    Program prawie gotowy, tylko mam kilka pytań: 1. Jak zrobić, żeby przerwanie zostało uruchamiane po otrzymaniu pewnego sygnału, a w przypadku jego braku zostało wyłączone (dla przykładu podaję sygnał na port atmegi, zostaje włączony timer który naliczy ileś tam impulsów, w przypadku zabrania sygnału timer przechodzi do stanu początkowego bez względu...

    Robotyka Modelarstwo i CNC   17 Kwi 2013 05:51 Odpowiedzi: 11    Wyświetleń: 3132
  • 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ń: 1521
  • Pobieranie plików z serwera przez SIM868 do Optiboot na Atmega328PB

    Czemu służą te komplikacje z tymi __init*? Przecież jeżeli chcesz używać przerwań, to po prostu na początek nie usuwaj tablicy wektorów i całej reszty z której rezygnujesz przy opcji -nostartfiles. Wtedy kod będzie wyglądał tak:[syntax=c] #include <avr/io.h> #include <avr/interrupt.h> ISR(TIMER0_OVF_vect) { PORTB ^= (1 << PB0); } int...

    Mikrokontrolery AVR   02 Sie 2022 12:28 Odpowiedzi: 20    Wyświetleń: 1431
  • [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
  • Programowanie mikrokontrolera Atmega324a-pu dla układu LED - prośba o weryfikację kodu

    Dobra światełka w końcu działają po 2 wybuchach złości na biurko, na razie tylko 2 tryby i bez generatora liczb losowych, ale raczej to rozwinę... po jakimś czasie: Kod bez błędów: [syntax=c]/* * main.c * * Created on: 14 wrz 2023 * Author: Dzieci */ unsigned char jasnosc = 32; //określa jasnośc diod #include <avr/io.h> #include <util/delay.h>...

    Mikrokontrolery Początkujący   09 Paź 2023 15:54 Odpowiedzi: 11    Wyświetleń: 825
  • [ATmega8] [ATmega8][C] - Przeróbka kodu z ATmega328 na ATmega8, Timer0 na Timer2, LCD pusty

    Pierwsze pytanie - czy w inny sposób udaje ci się coś wyświetlić na LCD? I drugie - tam jest funkcja dodająca transakcje, która przy okazji włącza timer. Poprawiłeś ją? Chodzi o tą: [syntax=c] bool LCD_PutText_B(uint8_t x, uint8_t y, char *txt, LCD_trans *buf, bool autodel) { buf->cmd=LCD_Text; buf->Ready=false; buf->SelfDel=autodel; //Czy zwolnić pamięć...

    Mikrokontrolery AVR   03 Sty 2016 19:19 Odpowiedzi: 2    Wyświetleń: 951
  • Jak obsłużyć więcej serwomechanizmów na atmega32 (PB3, PD7)?

    Narazie chciałbym obsłużyć serva tylko na Atmega32 później ewentualnie dodać to co ma się dziać na timerze ICP i wybrać odpowiedniego procka. Ale chciałem zapytać tylko o timer ICP, ponieważ nie chcę zakładać oddzielnego tematu w którym będzie jedno pytanie i odpowiedzi tak lub nie. Dodano po 20 Sprawdziłem mój kod na wewnętrznym oscylatorze 8MHZ i...

    Mikrokontrolery AVR   03 Sie 2019 13:14 Odpowiedzi: 23    Wyświetleń: 723
  • AVR - Timer 1 w AVR - przerwanie nie działa jak powinno

    Podłącze się do tematu gdyż nie chcę zakładać nowego wątku. Mam timer (ATMEGA32) ustawiony w taki sposób [syntax=c]TCCR0 |= (1<<WGM01); TCCR0 |= (1<<CS02) ; OCR0 |=38; TIMSK |= (1<<OCIE0);[/syntax] Procedura obsługi przerwania zawiera funkcje komunikacyjne i zwiększa licznik. Problem polega na tym, że z wzoru podanego w nocie katalogowej...

    Mikrokontrolery AVR   05 Lut 2014 21:48 Odpowiedzi: 10    Wyświetleń: 4818
  • ATmega32 - Sterowanie wypełnieniem PWM, obroty wentylatora

    Dokładnie tak cyber90 Poniżej konfiguracja timer0 w trybie fast PWM dla Atmega 644p [syntax=C] void timer0_conf(void) { //konfiguracja timera0 - pin PWM PB3-OC0A TCCR0A = ( (1<<WGM00) | (1<<WGM01) | (1<<COM0A1)); // tryb fast PWM TCCR0B= (1<<CS02) | (1<<CS00); // preskaler =1024 dla 16MHz daje ok. 60 Hz DDRB=(1<<PORTB3);...

    Mikrokontrolery AVR   01 Maj 2014 15:59 Odpowiedzi: 12    Wyświetleń: 4317
  • ATmega32 - Konfiguracja Timera0 w trybie CTC w assemblerze nie działa

    pisze program w assemblerze i nie moge skonfigurawac timera0 do pracy w trybie CTC robie tak: -mam w wektorze przerwan instrukcje skoku do procedury -mam dzialajaca procedure -ustawiam stos -ustawiam wartosc TCNT0 -ustawiam wartosc OCR0 -wpisuje do TCCR0 wartosc 0x0D ( ctc + prescaler 1024) -ustawiam TIMSK na 0x02 -odblokowuje przerwania poleceniem...

    Mikrokontrolery   04 Paź 2004 21:11 Odpowiedzi: 11    Wyświetleń: 1403
  • BAscom atmega - Programowanie w Bascomie,silnik DC,Atmega32

    Niestety to nie jest wina prescalerów i taktowania, próbowałem już w każdej kombinacji . Żadnej różnicy nie zauważyłem, a napięcie przy wyjściu pwm się nie zmienia. Z tego co wiem ,to może być to wina złej kompilacji, dlatego przy wyjściu oc1a(Pin D5) od pwma muszę odwoływać się do poszczególnych rejestrów coś na wzór tego: [syntax=vbnet]Config Pinb.3...

    Mikrokontrolery AVR   20 Lut 2016 11:42 Odpowiedzi: 32    Wyświetleń: 3195
  • KAMAMI ZL3 AVR, Atmega32-16PU, TIMER0 - Częstotliwość przed i po preskalowaniu

    Witam Układ jak w opisie, a mam parobem ze zrozumieniem jaka jest częstotliwość przed preskanem, z lektur wynika że to częstotliwość zegara procka (czyli w tym wypadku 16M). Natomiast po: [syntax=c]TCCR0 |= (1<<COM00); //Toggle OC0 on compare match TCCR0 |= ((1<<CS00) | (1<<CS02)); //clkI/O/1024 (From prescaler)[/syntax] Otrzymuję...

    Mikrokontrolery AVR   30 Mar 2017 19:25 Odpowiedzi: 12    Wyświetleń: 1317
  • Atmega328p i L293D w AtmelStudio - brak reakcji PWM, tylko prawy silnik działa

    W takim razie to problem polityczny. Pokaż aktualny kod i napisz czego od niego oczekujesz. Problem był chyba w za małym prescalerze. Zwiększyłem go zmienijąc kod w ten sposób TCCR0A=(0<<COM0A1) | (0<<COM0A0) | (1<<COM0B1) | (0<<COM0B0) | (1<<WGM01) | (1<<WGM00); TCCR0B=(0<<WGM02)...

    Mikrokontrolery AVR   31 Mar 2024 11:22 Odpowiedzi: 10    Wyświetleń: 495
  • Implementacja funkcji millis() z Arduino w języku C

    Takie coś jest poprawne? Przykład dla Atmega32 i 8MHz Nie za bardzo rozumiem o co chodzi z tym ATOMIC_BLCOK [syntax=c]#include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> unsigned long milisekundy; int main(void) { TCCR0 |= (1<<WGM01); TCCR0 |= (1<<CS01)|(1<<CS00); OCR0 = 124; TIMSK |= (1<<OCIE0);...

    Arduino   06 Lip 2018 22:47 Odpowiedzi: 30    Wyświetleń: 2196
  • [Atmega32] Jak podłączyć dwa czujniki DS18B20 do Atmega32 na płytce AVR_brd_I?

    Witam ponownie :) Niestety taka ilość kodu do zanalizowania jest ponad moje siły ;). Poza tym bez urządzenia dla którego piszesz ten kod też niewiele ci pomogę. Jednak w związku z tym iż piszesz że wyświetlacz nic ci nie wyświetla nasuwa się wniosek że masz coś pokićkane z czasami. A więc jak mi się wydaje w/w kod był pisany dla mikrokontrolera taktowanego...

    Mikrokontrolery AVR   08 Paź 2008 21:30 Odpowiedzi: 8    Wyświetleń: 1695
  • Dlaczego przerwanie T0 w ATmega32 nie działa? Zmiana stanu diody w C

    #define PORTD2 2 Po co ta definicja, jeżeli później jej i tak nie wykorzystujesz. Tym bardziej, że wg. mnie jest błędnie zapisana. TCCR0 |= (1<<=CS01) |1<<(CS00); //preskaler 64 Przesunięcie bitowe powinno wyglądać tak: TCCR0 |= (1<<CS01) | (1<<CS00); + brak ustawienia odpowiedniego trybu przerwań, w tym przypadku pewnie musiałby...

    Mikrokontrolery   18 Lip 2011 17:54 Odpowiedzi: 7    Wyświetleń: 984
  • Sterownik silnika krokowego L298 + ATmega32

    http://obrazki.elektroda.pl/3012076100_1... Założeniem projektu było stworzenie uniwersalnego sterownika współpracującego z mikro-kontrolerem w celu sterowania dwóch silników DC o prądzie nie przekraczającym 2A na silnik. Bądź jednego bipolarnego silnika krokowego o prądzie nie przekraczający 2A faza. http://obrazki.elektroda.pl/9999098200_1...

    DIY Poczekalnia   11 Kwi 2011 12:19 Odpowiedzi: 12    Wyświetleń: 11803
  • [C][ATMEGA32] - Program odczytujący czas trwania stanu niskiego na odbiorniku IR

    Zamierzam użyć pilota do dekodera philips PVR 7201/91 jako nadajnika podczerwieni. Odbiornik TSOP 1136 (lub 38, czy to coś zmienia??). Aby wiedzieć co dokładnie jest odbierane przez odbiornik przy naciśnięciu poszczególnych przycisków, napisałem program, którego efektem ma być wyświetlenie elementów tablicy, której elementy są czasami trwania kolejnych...

    Mikrokontrolery Początkujący   05 Cze 2013 10:38 Odpowiedzi: 8    Wyświetleń: 1404
  • ATmega32: Przeniesienie PWM z PB3 na PA2/PA3, jak to zrobić?

    #include <avr/io.h> #include <compat/deprecated.h> #define SPP cbi(PORTA,PA3);sbi(PORTA,PA2... #define SPM cbi(PORTA,PA2);sbi(PORTA,PA3... #define SPOFF cbi(PORTA,PA2);cbi(PORTA,PA3... #define LED1_ON sbi(PORTA,PA0) #define LED1_OFF cbi(PORTA,PA0) #define LED2_ON sbi(PORTA,PA1)...

    Mikrokontrolery   26 Gru 2006 05:23 Odpowiedzi: 6    Wyświetleń: 2528
  • [avr][pwm][mostek h] sterowanie mostkiem h za pomocą pwm

    arrevalk wykorzystałem twój pomysł na sterowanie. Jednak po podłączeniu pod SD pwm uC nic się nie dzieje. Sam wybór kierunku wydaje się być w porządku, dopóki SD podłączone jest do masy. Pierwszy raz wykorzystuje pwm, więc być może popełniłem jakiś błąd w kodzie (wykorzystany uC to atmega32) sbi DDRB, DDB3 ldi r18, (1<<WGM01)|(1<<WGM00)|(1<...

    Mikrokontrolery AVR   09 Sie 2009 12:12 Odpowiedzi: 9    Wyświetleń: 7462
  • Przykładowy program w C na ATmega32 do multipleksowania 4 wyświetlaczy 7-segmentowych

    Przykładowy program który wyświetla jakąś liczbę: [syntax=c]volatile uint16_t disp=0; uint8_t buff[]={0b11000000, 0b11111001, 0b10100100, 0b10110000, 0b10011001, 0b10010010, 0b10000010, 0b11111000, 0b10000000, 0b10010000, 0b10001000, 0b10000011, 0b11000110, 0b10100001, 0b10000110, 0b10001110}; ISR(TIMER0_OVF_vect) { static uint8_t dig=0; static uint16_t...

    Mikrokontrolery AVR   23 Sty 2018 11:12 Odpowiedzi: 12    Wyświetleń: 1335
  • Sterowanie 4 silnikami DC przez PWM na Atmega32 w C – konfiguracja rejestrów

    Ja osobiście jak narazie pisze w Bascomie. W Bascomie wygląda to tak: Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 1 ' Konfiguracja Timera1 dla Pwm1a i Pwm1b Config Timer2 = Pwm , Async = Off , Pwm = On , Compare Pwm = Clear Down , Prescale = 1 ' Konfiguracja Timera2 dla Ocr2 Config Pinb.3 = Output...

    Mikrokontrolery   20 Sie 2009 23:04 Odpowiedzi: 1    Wyświetleń: 1644
  • avr atmega32[c] - odliczanie sekundy ,zliczenie 15625 przerwan ?

    Witam. Przy 4 Mhz ustawiasz dzilnik do licznika na 256 w rejestrze TCCR0. Następnie ustawiasz 125 w OCR0. To jest górna granica licznika, która go resetuje i jednocześnie wystawia przerwanie. Teraz licznik liczy do 125 i generuje przerwanie OCF0 - Output Compare Flag 0 w rejestrze TIFR. Wtedy przerwanie generowane jest co 32000 taktów zegara, czyli...

    Mikrokontrolery AVR   25 Sty 2017 11:12 Odpowiedzi: 62    Wyświetleń: 4170
  • AVRStudio, PonyProg, ATmega32 - problem z Timerem T0 i T1, zmiana czasu nie działa

    ...Pojawił mi się problem który nawet trudno wytłumaczyć. Faktycznie trudno , bo z tego co napisłeś , niewiele można wywnioskować :( ...Napisałem program z wykorzystaniem Timera T0 - odmierza zadany czas i zapala diodę po czym przy następnym przerwaniu gasi ją i tak w kółko. Może zdradź tajemnicę i napisz , w którym trybie pracuje T0. Dokonuję zmiany...

    Mikrokontrolery   19 Paź 2006 07:48 Odpowiedzi: 5    Wyświetleń: 1498
  • [C] Atmega32 przerwania. Zmienna nie działa w programie.

    Problem polega na tym , że zmienna nrzn działa poprawnie tylko w ciele funkcji przerwania, w pętli programu już nie. Jej wartość wynosi 0 poza przerwaniem. //Biblioteki #include <avr\io.h> #include <util/delay.h> #include <avr\pgmspace.h> #include <avr/signal.h> #include <avr/interrupt.h> //Zmienne unsigned char znak [10]...

    Mikrokontrolery AVR   11 Lis 2010 16:43 Odpowiedzi: 3    Wyświetleń: 1785
  • Cykliczne załączanie PWM w ATTiny2313A/ATMega328P

    Tak, dokładnie o tego typu efekt chodzi, jednak chciałbym do tego jeszcze mieć możliwość cyklicznego załączania sygnału wyjściowego coś na wzór funkcji delay_ms(), w celu opóźnionego załączenia i wyłączenia sygnału wyjściowego. Aktualnie mój kod to tylko sama konfiguracja, dodatkowo przerzuciłem się na ATMega328P ze względu na jeden dodatkowy Timer....

    Mikrokontrolery AVR   20 Gru 2019 22:11 Odpowiedzi: 19    Wyświetleń: 840
  • Sterowanie silnikiem DC sygnałem RC i generowanie PWM w C

    Rozumiem, że ustawiam Timer0 na Fast PWM, a wartość OCR0 podstawiam z wyliczeń na podstawie czasu trwania impulsu wejściowego sygnału RC. [syntax=c]TCCR0 |= (1 << WGM00) | (1 << WGM01); // tryb PWM , prescaler = 8 TCCR0 |= (1 << COM01) | (1 << COM00); TCCR0 |= (1 << CS01); OCR0 = // wartość podstawiana z wyliczenia;[/syntax]...

    Mikrokontrolery Początkujący   19 Paź 2013 23:08 Odpowiedzi: 2    Wyświetleń: 2376
  • [AtMega32][Bascom] - Nie działa LCD Alfanumeryczny

    Też nic nie daje. Testowałem z takim programem, zmieniającym dodatkowo jasność co określony czas: [syntax=basic4gl]Cls Config Portb.3 = Output Tccr0 = &B01101001 Ocr0 = 250 Cursor Off Cls Do Locate 1 , 1 Lcd "Test1" Ocr0 = 220 Wait 2 Locate 1 , 1 Lcd "Test2" Ocr0 = 235 Wait 3 Locate 1 , 1 Lcd "Test3" Ocr0 = 250 Wait 4 Loop End[/syntax] Jasność zmienia...

    Mikrokontrolery Początkujący   27 Sty 2013 10:11 Odpowiedzi: 8    Wyświetleń: 2619
  • [ATmega32U4][avr-gcc] - Timer0 - niezrozumiałe zachowanie

    Witam jestem nowy na forum i w mikrokontrolerach. Po wielu godzinach doszedłem do tego, że aby instrukcja zawarta w ISR została wykonana muszę dorzucić pewną ilość cykli zegarowych w postaci np. pętli "for". Czy ktoś może mi pomóc zrozumieć dlaczego tak się dzieje ? Niezrozumiałe jest także to, dlaczego w pliku "*.lss" po funkcji "main" jest polecenie...

    Mikrokontrolery Początkujący   09 Lis 2013 09:32 Odpowiedzi: 5    Wyświetleń: 1578
  • Zdalne sterowanie na podczerwień pilotem RC5

    Z jednej strony masz rację, a z drugiej nie... Mianowicie masz rację pisząc, że większość budowanych amatorskich konstrukcji da się zastąpić chińskimi odpowiednikami za niewielką cenę, natomiast budując układ samemu można nauczyć się wiele. Dla mnie budowa tego układu pomogła nauczyć się zasady działania kodu RC5 (bo kod pisałem w pełni samodzielnie...

    DIY Konstrukcje   06 Sty 2013 22:50 Odpowiedzi: 43    Wyświetleń: 33804
  • Błąd w programie multipleksowania LED na atmega32 - przerwania nie działają

    Zrobiłem coś takiego. Dodano po 14 O to efekt.

    Mikrokontrolery Początkujący   01 Cze 2015 18:16 Odpowiedzi: 22    Wyświetleń: 1497
  • [AVR] [AVR][Atmega328p] - Ustawienia PWM dla silnika DC, problem z kierunkiem obrotów

    Witam, Używam sterownika do silnika DC. Sterowanie polega na podanie odpowiedniego wypelnienia PWM na wejscia AIN1 AIN2. Wejscia AIN odpowiadaja za obroty w lewo/prawo. Uzywam atmegi328p. http://www.atmel.com/Images/doc8161.pdf Zasada dzialania (obroty w prawo/lewo): [syntax=c]OCR0A = 255; //PD6 // hamulec/start OCR0B = 0; //speed //zmiana kierunku...

    Mikrokontrolery AVR   18 Lip 2013 16:22 Odpowiedzi: 4    Wyświetleń: 2676
  • [ATMEGA32] [ATMEGA32][C] Sterowanie PWM przyciskami na pinach PD0 i PD1

    Miałeś źle wybrany preskaler ( nie chodzi o liczbę). Po za tym T0 jest 8 - bitowy. /* Przyciski sterujace szerokoscia impulsu przylaczone miedzy PD0 i mase oraz PD1 i mase */ #define F_CPU 8000000L #include <avr/io.h> int main(void) { int p = 0; DDRD =0x00; PORTD=0x03; DDRB |=_BV(3);//pin OC0 połaczony z diodą TCNT0 =255;...

    Mikrokontrolery AVR   18 Lis 2009 17:45 Odpowiedzi: 6    Wyświetleń: 3475
  • [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] [ATmega32][C] Konfiguracja liczników 8-bitowych w trybie CTC i toggle

    Witam! Mam mały problem z licznikami w Atmedze32. Na początek kod: void IR_Generuj() { //TUTAJ WŁĄCZAM TIMER KLUCZUJĄCY SYGNAŁ// TIMSK|=1<<OCIE2; OCR2=75; TCCR2 = 1<<WGM21 | 1<<CS21; //PRESK 8 |TRYB CTC //TUTAJ GENERUJE SYGNAŁ 36kHz// OCR0=13; //(int)(1000000*(1/76000... TCCR0 = 1<<CS00|1<<COM00|...

    Mikrokontrolery AVR   09 Gru 2008 15:54 Odpowiedzi: 1    Wyświetleń: 963
  • sterowanie oświetleniem (ATmega32, moc3052, bta06). Problem.

    Próbowałem już wszystkiego, pisząc przy tym chyba z 20 wersji programu. Niestety nic nie pomogło. Siedzę nad tym już kilka dni, dlatego zwracam się z ogromną prośbą o pomoc. Kwestia wygląda tak: Układ mam zbudowany na bazie http://www.is.strefa.pl/dimmer.jpg (układ detekcji zera+sterowanie z triaka - ten schemat zdaje się został wzięty z elektrody właśnie,...

    Projektowanie Układów   30 Kwi 2008 16:08 Odpowiedzi: 2    Wyświetleń: 1701
  • [ATmega32][ASM][AVR Studio 4] prosty sterownik silnika krokowego

    Niestety laborki te mamy w asemblerze...przynajmniej ich początek. W języku C będziemy pisać niebawem na co ze zniecierpliwieniem czekam. Co do Twojej podpowiedzi, rozumiem, że cała operacja odbywała by się tak jak powiedziałem, czyli dwa przyciski wielokrotne klikanie jednego np zwiększa prędkość ? A w łopatologiczny sposób na delayach, jak wykonać...

    Mikrokontrolery AVR   24 Paź 2011 10:37 Odpowiedzi: 7    Wyświetleń: 2134
  • [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
  • ATmega32 - timer0 (CTC)ustawianie zadanej częstotliwości generacji przerwania

    Witam, chciałbym za pomocą timera0 pracującego w trybie CTC wywoływać przerwania z określoną częstotliwością by np migać diodą. Czy poniższe ustawienie timera jest poprawne i czego jeszcze brakuje? Jak za pomocą preskalera być w stanie ustawiać częstotliwości między 1Hz-50kHz? [syntax=c] #include<avr/io.h> #include<avr/interrupt.h> void...

    Mikrokontrolery AVR   23 Gru 2012 12:29 Odpowiedzi: 28    Wyświetleń: 5220
  • [C][Atmega32]Wysyłanie 16-bitów do rejestru przesuwnego po SPI

    Witam, Pracuje na zestawie ZL3AVR [Atmega32 + kwarc 16 MHz]do którego są podłączone dwa układy LED driverów. Układy posiadają 16 wyjść. Pracuję nad tym już od kilku dni, ale nie wiem dlaczego gdy wysyłam mniejszą daną np. 1 lub 2 (dla zmiennych inf1, inf2, inf3, inf4) to jest ok. Gdy wysyłam np. 250 (dla zmiennych inf1, inf2, inf3, inf4) to diody podłączone...

    Mikrokontrolery AVR   23 Paź 2011 21:49 Odpowiedzi: 6    Wyświetleń: 2464
  • Atmega328p - Konfiguracja 6 kanałów PWM, problem z OCR0B

    Witam Po paru projektach, wszystkich na atmega8 z przyzwyczajenia i wystarczających zasobów, do zastosowań potrzebowałem coś z sześcioma kanałami PWM. Projekt i PCB zrobione i złożone i na starcie w programowaniu mam problem nie do pokonania dla mnie. Zacząłem od konfiguracji Timer0 i nie mogę zmusić drugiego kanału (OCR0B) do wysterowania wyjścia....

    Mikrokontrolery AVR   01 Mar 2017 23:04 Odpowiedzi: 4    Wyświetleń: 1128
  • [atmega32] Jak obsłużyć czujnik HC-SR04 na Atmega32 w języku C?

    Witam, Posiadam czujnik odległości HC-SR04. Mam problem z obsługą tego czujnika na atmedze32. Napisałem bardzo prosty program który powinien moim zdaniem działać ale nie działa :) Siedzę na nim już 3h i nic... Wszystkie kabelki są dobrze podłączone (sprawdzone 5 razy), czujnik jest dobry bo sprawdziłem go programem z bascoma znalezionego na forum [url=http://www.elektroda.pl/rtvforum/to...

    Mikrokontrolery AVR   27 Gru 2011 16:38 Odpowiedzi: 4    Wyświetleń: 2782
  • Atmega32 - Zawieszanie programu przy włączaniu przekaźników w sterowniku podlewania

    A jak to zapisać w C? Czy poprostu jak mam funkcje main i w niej deklaruje tak: int main(void) { TIMSK=1<<TOIE0; //w rejestrze maskowania przerwań(TIMSK) wpisz 1 na miejsce bitu TOIE0 (zezwolenie na przerwanie od układu timera0 spowodowane przepełnieniem) TCNT0=9; //wpisz wartośc poszątkową do licznika timera0 TCCR0=2;...

    Mikrokontrolery AVR   01 Lip 2009 22:15 Odpowiedzi: 49    Wyświetleń: 6685
  • PWM na Arduino – lista pinów z obsługą PWM, czy tylko OC1A i OC1B?

    Ok już trochę bardziej to rozumiem, tylko w tym kodzie: // program to change brightness of an LED // demonstration of PWM #include <avr/io.h> #include <util/delay.h> // initialize PWM void pwm_init() { // initialize timer0 in PWM mode TCCR0 |= (1<<WGM00)|(1<<C...

    Mikrokontrolery Początkujący   12 Lis 2012 13:54 Odpowiedzi: 30    Wyświetleń: 4038
  • avr-gcc - Atmega32 - przerwania timera 0 restartują program

    analogicznego uzywam i w innych programach... i dziala... no ale na innych procesorach :/... void Timer_Init() { OCR0 = 150; USART_Transmit('^'); TCCR0 = (1<<CS02)|(0<<CS... TIMSK |= OCIE0; } ISR(TIMER0_COMP_vect) { USART_Transmit('*'); OCR0 += 150; }...

    Mikrokontrolery AVR   15 Mar 2010 14:28 Odpowiedzi: 3    Wyświetleń: 1128
  • Atmega32[C] - Przerwanie od timera1 nie działa, miganie diody co 1s

    Samo zapalanie i gaszenie diody można zrobić w przerwaniu, pętla główna może być pusta, np. (tu akurat przerwanie overflow): [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> int a; ISR(TIMER0_OVF_vect) //a tu definiujemy to co bedzie sie dzialo, gdy wywolamy przerwanie. { a++; if (a>4)// co czwarte przerwanie { PORTB ^= 0x02;...

    Mikrokontrolery AVR   01 Kwi 2014 01:25 Odpowiedzi: 12    Wyświetleń: 1308
  • [atmega32] [atmega32][asm] - Timer1 CTC nie wywołuje przerwania, zmiana nutek na buzzerku

    witam mam problem z wywolaniem przerwania od timer1 - od zdarzenia typu CTC, program ma wygrywac melodyjke na buzzerku, przerwanie od timer0 smiga - jest odpowiedzialne za generowanie sygnalu na wyjsciu OC0, a timer1 ma zmieniac nutki - podmieciac liczbe w OCR0 liczba z tablicy melodia... ale nie zmienia i nie moge znalezc przyczyny :/ wydaje mi sie...

    Mikrokontrolery AVR   12 Sty 2009 11:18 Odpowiedzi: 1    Wyświetleń: 1615
  • [ATmega32][C/AVR Studio 5] Regulacja świecenia diody LED - PWM

    Poprawiłem mój program tak, że działa teraz jak powinien. I nie korzystałem z porad userów bo znalazłem drobny błąd związany z brakiem kontroli nad licznikami :) Diodka pięknie (jak dla mnie) teraz rozbłyskuje :P Zamieszczę program, bo może komuś na elektrodzie się przydać :) a nie jedna osoba pewnie szukała podobnego problemu. [syntax=c]#include <avr/io.h>...

    Mikrokontrolery AVR   09 Sty 2012 11:20 Odpowiedzi: 9    Wyświetleń: 4539
  • atmega32 - Timer0 Fast PWM i PID (avr221) - Jak poprawnie skonfigurować?

    Witajcie, próbuję wyrzucać wartość z regulatora pid (avr221) do wypełnienia pwm na timerze0. Poczyniłem następujące kroki: [syntax=c] #define PWMH ((PINB)&(1<<PB3)) ... struct GLOBAL_FLAGS { //! True when PID control loop should run one time uint8_t pidTimer:1; uint8_t dummy:7; } gFlags = {0, 0}; struct PID_DATA pidData; #define TIME_INTERVAL...

    Mikrokontrolery AVR   10 Maj 2016 12:48 Odpowiedzi: 6    Wyświetleń: 1128
  • [mega32][C/ASM] 3 PWMy 8 bitowe (skracanie timer1 do 8 bit)

    Ok., zrobiłem. Mam trzy 8-bitowe PWMy. int setup_t1(){ TCCR1A = _BV(COM1A1) | _BV(COM1B1) | _BV(WGM10) ; TCCR1B = _BV(CS11); OCR1A = 25; OCR1B = 230; } void setup_t0(){ TCCR0 = _BV(COM00) | _BV(CS01); //powinien być ustawiony bit COM01 a nie COM00 OCR0 = 128; } Nieaktualne:...

    Mikrokontrolery AVR   19 Cze 2008 17:43 Odpowiedzi: 20    Wyświetleń: 2460
  • Atmega328 - Bascom: Ustawienia PWM dla Timer2 i OCR2A, OCR2B

    z jakiegoś swojego starego projektu zerknąłem na ustawienia i mam tccr0a=a3, tccr0b=2 tccr1a=a1, tccr1b=2 tccr2a=a1, tccr2b=2 przy nich na 16MHz pwm'y chodzą 4kHz (możliwe ze jeden z nich na 8Khz)

    Mikrokontrolery AVR   17 Maj 2014 12:02 Odpowiedzi: 2    Wyświetleń: 1581
  • [C] Jak ustawić Timer dla programowego UART na Atmega32 przy 16MHz?

    Zacznę od końca (przejrzałem oryginalne źródła): 3. put_char() by wysłać znak czeka, aż flag_tx_ready będzie inne od 0 (FALSE) Akurat odwrotnie. Czeka, aż flaga stanie się FALSE, czyli aż zakończy się bieżąca transmisja. Przy okazji. W deklaracjach zmiennych współużywanych przez program główny i przerwania (jak np. ta flaga) w oryginalnym kodzie brak...

    Mikrokontrolery   11 Lip 2007 10:48 Odpowiedzi: 14    Wyświetleń: 2963
  • [ATmega32] Jak napisać protokół RC5 dla ATmega32 z odbiornikiem IR na PD3?

    Witam, Wiem, że RC5 ten wątek był poruszany wiele razy na forum, ale chcę sie nauczyć programować w C, wiec chciałem wykorzystać odbiornik podczerwieni z mojego zestawu(ZL3AVR) i napisać protokół do RC5 Pracuje na kwarcu 16MHz i ATmega32. Odbiornik podczerwieni podłaczylem do PD3 #include <avr/io.h> // dostęp do rejestrów #include <avr/interrupt.h>...

    Mikrokontrolery AVR   01 Gru 2009 12:15 Odpowiedzi: 4    Wyświetleń: 2398
  • Jak zaimplementować my_delay, by nie blokowało czujników pływakowych?

    Poszedłem za wskazówkami i wykorzystałem zliczanie czasu poprzez Timer0 w mikrokontrolerze atmega32. Ogólnym założeniem projektu jest podlewanie zależne od czasu ustawionego z klawiatury 4x4. Lecz tutaj pojawia się moje pytanie: W jaki sposób mogę sterować timerem tak, żebym mógł wydłużać czas działania timera w zależności jaką liczbę zapiszę do zmiennej...

    Mikrokontrolery AVR   26 Gru 2018 21:12 Odpowiedzi: 5    Wyświetleń: 471
  • Atmega328p - Odczyt potencjometrów z przerwaniami, wartości 0-255

    Cześć, Próbuję zaadaptować przerwania do swoich potrzeb z pomocą datasheet atmegi328p i strony [url=http://mikrokontrolery.blogspot.com ]Link Niestety napotkałem pewien problem z którym nie umiem sobie poradzić. Za pomocą przerwań chciałbym odczytywać stany z dwóch podłączonych potencjometrów. Reprezentuję ich wartości na LCD leczy w zakresie 0-255....

    Mikrokontrolery Początkujący   20 Lut 2020 21:14 Odpowiedzi: 14    Wyświetleń: 1113
  • Atmega32: Jak dodać wyświetlacz LCD do programu z silnikiem krokowym i potencjometrem?

    Witam, Czy ktoś może mi zmodyfikować tak mój program aby działał mi wyświetlacz LCD ? Chodzi tutaj o to że mam podłączony mały silnik krokowy oraz potencjometr a do tego jeszcze przyciski "start, stop, zmień kierunek obrotu". Wszystkie przyciski działają, potencjometr również, a teraz chciałbym aby zakres mojego potencjometru był wyświetlany na LCD...

    Mikrokontrolery AVR   15 Sty 2018 00:02 Odpowiedzi: 2    Wyświetleń: 828
  • Bascom: Jak zmienić częstotliwość dla Atmega32 z obsługą enkodera i RC5?

    Wpisywanie $CRYSTAL bez rzeczywistej zmiany taktowania procesora będzie powodować, że wszelkie opóźnienia i obliczenia kompilatora dotyczące liczników nie będą zgodne ze stanem faktycznym. GETRC5() korzysta aktywnie z licznika TIMER0. Tak manewruje wartością wpisaną do rejestru licznika oraz preskalerem by otrzymać jednakowe odcinki czasu zliczane później...

    Mikrokontrolery Początkujący   20 Cze 2014 21:55 Odpowiedzi: 3    Wyświetleń: 1080
  • Atmega32 - błędne zliczanie impulsów zewnętrznych na liczniku T0

    Walcze z licznikiem na Atmega 32 inicjacja wyglada tak : DDRB = 0xff; // DDRB jako wyjscie // t0 JAKO LICZNIK PORTB |= _BV(0); // BEZ PODCIAGNIECIA NIE CHCE LICZYC TCCR0 = _BV(CS01)|_BV(CS02); //_BV(CS00)| cs0 rosnace/~opadajace zbocze TCNT0 = 200; TIMSK |= _BV(TOIE0); // T0 wywoluje przerwanie Caly problem polega...

    Mikrokontrolery   09 Kwi 2008 12:54 Odpowiedzi: 3    Wyświetleń: 1514
  • Atmega32: Brak dźwięku w słuchawkach przy odtwarzaniu pliku WAV z karty SD

    Cześć, Napisałem program, który miał odtwarzać utwór z karty SD o nazwie o.wav . Program poprawie otwiera plik, jednak ze słuchawka nie wydaje dźwięku... Czy mógłby ktoś sprawdzić mój kod czy nie ma tam żadnego błędu ? Myślałem że same wyprowadzenie odczytanych wartości hex z pliku muzycznego i "wypuszczenie" ich na PWM w zupełności wystarczy, ale widocznie...

    Mikrokontrolery AVR   14 Mar 2017 21:47 Odpowiedzi: 13    Wyświetleń: 1137
  • Jak sterować serwami za pomocą TLC5940 i ATmega328P? Ustawienie 50Hz

    witam, czy moglby mi ktos pomoc w przerobieniu tego kodu tak aby mozna bylo sterowac serwami. Nie wiem jak osiagnac czestotliwosc 50Hz [syntax=c]#include <stdint.h> #include <avr/io.h> #include <avr/interrupt.h> #define GSCLK_DDR DDRB #define GSCLK_PORT PORTB #define GSCLK_PIN PB0 #define SIN_DDR DDRB #define SIN_PORT PORTB #define...

    Mikrokontrolery AVR   30 Kwi 2017 17:57 Odpowiedzi: 15    Wyświetleń: 1425
  • Budowa przetwornika cyfrowo-analogowego z AVR ATmega32, rezonator 11,0952 MHz, 50Hz

    Witam Chcąc budować układ przetwornika cyfrowo-analogowego. Zbudowałem układ zaprezentowany na schemacie ideowym. https://obrazki.elektroda.pl/5046839200_... Wyjście przetwornika zostało podłączone dla napięcia 5V. Zaprogramowałem mikrokontroler AVR ATmegę 32 z zewnętrznym rezonatorem kwarcowym wynoszącym 11,0952 MHz. Wykorzystałem...

    Mikrokontrolery AVR   23 Wrz 2022 19:52 Odpowiedzi: 3    Wyświetleń: 573
  • Maksymalna liczba serwomechanizmów sterowanych przez ATmega32 16MHz?

    Zmodyfikowaliśmy program: #include <avr/io.h> #include <avr/interrupt.h> //Prescaller jest ustawiony na 256 przy 16MHz //2.5ms - 0x3E //polozenie poczatkowe - 0x20 - 0d32 - 0.528ms //polozenie koncowe - 0x94 - 0d148 - 2.38ms unsigned char volatile p1[8] = {0x90,0x90,0x90,0x90,0x30,0x30,0x30... unsigned char volatile...

    Mikrokontrolery AVR   18 Wrz 2009 08:14 Odpowiedzi: 12    Wyświetleń: 2414
  • [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ń: 1515
  • Jak zliczać impulsy z dwóch kontaktronów na ATmega32 w C++?

    Wiem ze mam załączyć Timer1, tylko w którym miejscu to zrobić, tak aby to było zsynchronizowane z liczeniem ? Jakby ktoś narysował mi strzałkę w poniższym kodzie byłbym wdzięczny :) #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> #include <stdlib.h> #include <avr/interrupt.h> #include <inttypes.h> #include...

    Mikrokontrolery AVR   19 Lip 2010 21:00 Odpowiedzi: 20    Wyświetleń: 2825
  • Atmega328P - Timer0 w trybie CTC, brak aktywnego bitu WGM01 w AVR-Studio

    Witam, co robię źle. Chcę ustawić timer0 w tryb CTC, zgodnie z tabelką trzeba ustawić bit WGM01 w rejestrze TCCR0A. http://obrazki.elektroda.pl/2422465900_1... Czemu w symulatorze AVR-Studio wogóle nie ma aktywnego bitu WGM01 tylko WGM0 ? http://obrazki.elektroda.pl/4086649500_1...

    Mikrokontrolery Początkujący   02 Kwi 2015 00:42 Odpowiedzi: 2    Wyświetleń: 1311
  • [ATMEGA328p-pu] - Nieprawidłowy pomiar ADC w programie BLDC_mega328p

    Dobra. Kod prezentuje się następująco: to jest program w którym wszystko działa jak potrzeba: [syntax=cpp]//Data utworzenie: 20-09-2014 #include <avr/io.h> #include <util/delay.h> #include <stdlib.h> #include <avr/pgmspace.h> #include "MYUART/myuart.h" #include "MK_TERMINAL/mk_term.h" #define REF_256 (1<<REFS1)|(1<<REFS0)...

    Mikrokontrolery AVR   23 Lis 2014 17:44 Odpowiedzi: 17    Wyświetleń: 2004
  • [ATmega32][avr-gcc] - Błędne taktowanie - budowa zegara czasu rzeczywistego

    Witam serdecznie. Rozpocząłem jakiś czas temu zabawę z mikrokontrolerem ATmega. Posiadam model ATmega32-16PU. Buduję zegar czasu rzeczywistego. Chciałem do tego wykorzystać przerwania z wbudowanego timera (przepełnienie). Po wielu nieudanych próbach synchronizacji ATmegi z rzeczywistym czasem postanowiłem policzyć taktowanie swojego mikrokontrolera....

    Mikrokontrolery AVR   16 Paź 2015 16:32 Odpowiedzi: 17    Wyświetleń: 1485
  • [Atmega32] Atmega32 C – błędne wyświetlanie temperatury poniżej 7°C i powyżej 33°C na diodzie

    Mam takie pytanie. Bo jak sobie pisałem funkcje do obsługi wyświetlacza 7_segmentowego to tablice z segmentami dla liczb zapisałem w pamięci flash, możliwe że ta temperatura skacze mi dlatego że, z pamięci flash jest wolniejszy odczyt...?? To jest kod obsługi tego przerwania: #ifndef WYS_7_H_ #define WYS_7_H_ //definition ports #define anody_port PORTD...

    Mikrokontrolery AVR   05 Wrz 2011 13:34 Odpowiedzi: 19    Wyświetleń: 2596
  • Jak uzyskać różne przebiegi na pinach Atmega32 do sterowania rejestrem?

    Wiec sprawa wygląda tak, dane na wyjściu rejestru powinny wyglądac następująco: Q0=1 Q1=1 Q2=1 Q3=0 Q4=1 Q5=0 Q6=1 Q7=0 pierwsza próba: TCCR0 = (1 << CS01) | (1 << CS00); TIMSK |= (1 << TOIE0); PORTD &= ~_BV(6) | ~_BV(2); do{}while(clk<16); TCCR0 = 0; clk = 0; PORTD &=...

    Mikrokontrolery   05 Maj 2006 16:51 Odpowiedzi: 20    Wyświetleń: 1551
  • Atmega32 mulipleksowanie LED nakładające się symbole

    Witam. Mam problem z wyświetlaniem cyfr przy użyciu atmegi32, która steruje trzema wyświetlaczami LED w trybie multipleksalnym. Otóż, gdy na wyświetlacz podaję te same znaki (cyfry) to wszystko jest dobrze. Natomiast, gdy wysyłam różne cyfry to pojawiają się błędy. Poniżej zamieszczam kod z przykładami. Ponieważ katody podłączone są do PORTC, więc żeby...

    Mikrokontrolery AVR   03 Sty 2011 22:51 Odpowiedzi: 14    Wyświetleń: 2144
  • Watchdog w ATmega324 nie uruchamia resetu - jak to naprawić?

    Witam Mam problem z uruchomieniem watchdog'a w atmedze324. Procesor nie uruchamia resetu. Ten program powinien wypisywać cyfry przez około 2 sekundy potem powinien się zresetować. Proszę o pomoc. [syntax=jezyk_programowania] #include <mega324.h> #include <stdio.h> #include <delay.h> #include <stdlib.h> #include <string.h>...

    Mikrokontrolery AVR   23 Mar 2015 06:34 Odpowiedzi: 7    Wyświetleń: 1164
  • [Atmega328] [Atmega328][C][PWM] - Jak poprawić jakość dźwięku .wav z karty SD?

    Udało mi się odtworzyć .wav 22050Hz. Jest bardzo fajnie, muzyczka gra w bardzo fajnej jakości, ALE... słyszę cały czas szum(pierdzenie), który jest jakby nałożony dodatkowo w muzyczce, taki odrębny szum. Jak go wyeliminować? Aktualnie kod odpowiedzialny za odtwarzanie przedstawia się tak: [syntax=c] // Konifguracja muzyczki void Music_Init() { DDRB...

    Mikrokontrolery   12 Wrz 2013 19:47 Odpowiedzi: 13    Wyświetleń: 3381
  • [ATmega32][ASM] konfiguracja i zasada działania trybu PWM

    Napisałem sobie coś takiego w trybie CTC, z włączeniem nóżki OC0 generującej prostokąt. Generuje sobie jakiś dany ton zmieniając wartość rejestru OCR0. Teraz akurat jest bardzo duża częstotliwość dająca wysoki ton. Pytanie mam takie: jak zrobić aby zmieniać cyklicznie wartość OCR0 ? Aby zagrać jakąś melodie, np 1s jeden ton, potem 2s drugi ton, 0,5s...

    Mikrokontrolery AVR   30 Paź 2011 22:19 Odpowiedzi: 13    Wyświetleń: 3176