tccr1a atmega

Znaleziono około 897 wyników dla: tccr1a atmega
  • Sterowanie diodą RGB na atmega8 - problem z kanałem PWM OC1A

    Na tej płycie masz LED-y. Sprawdź na nich. Sprawdziłem Twoje ustawienia -ale w Bascomie. Na takiej samej płytce. Wszystko chodzi. Wygląda to na układ a nie program. Poniżej program-napisałem w sposób zrozumiały dla C. $regfile = "M8def.dat" $crystal = 8000000 'Config Lcd = 20 * 2 'Config Lcdpin = Pin , Db7 = Portc.0 , Db6 = Portc.1 , Db5 =...

    Mikrokontrolery   29 Gru 2009 23:07 Odpowiedzi: 3    Wyświetleń: 4815
  • Odmierzanie 12.5us na ATMEGA8 8MHz w Bascom bez przerwań

    ...Proszę o jakieś podpowiedzi bądź kawałek kodu co ma być dalej, żeby generować te nieszczęsne 40kHz ... To już wszystko :) Na pinie PB1 masz przecudne 40kHz , jeśli faktycznie procek jest popędzany 8MHz. W ramach testu , możesz w pętli głównej napisać: Do Set Tccr1a.com1a0 'dołącz oc1a do pinu Wait 5 'przez 5 sekund fala 40kHz Reset Tccr1a.com1a0...

    Mikrokontrolery   15 Wrz 2006 18:00 Odpowiedzi: 4    Wyświetleń: 1763
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • ATMega 8: Sterowanie diodą LED za pomocą PWM w WinAVR (C++)

    Witam.To pochodzi z programu gdzie byl procek at90s8535 ale po ewentualnej modyfikacji nazw rejestrow powinno dzialac..... unsigned int pwm=100; void update_pwm (void) { cli (); outp (pwm>>8,OCR1AH); outp (pwm,OCR1AL); sei (); } void timer1init (void) // inicjacja timera 1 - tryb PWM { outp (pwm>>8,OCR1AH); outp (pwm,OCR1AL); outp (0x00,OCR1BH); outp...

    Mikrokontrolery   14 Lis 2005 19:06 Odpowiedzi: 4    Wyświetleń: 1955
  • REKLAMA
  • Timer1 (16bit) ATmega 8515 czemu liczy tylko do 8bit?

    Ldi Acc, 1;(...) Out TCCR1A, Acc Tym sposobem ustawiasz licznik w tryb PWM, Phase Correct, 8-bit . Strona 120, Tabelka 53 pdf-a od ATmega8515 . -- Pozdrawiam, Daniel

    Mikrokontrolery   01 Lip 2005 23:57 Odpowiedzi: 1    Wyświetleń: 1344
  • REKLAMA
  • ATMEGA 2560: Jak odtwarzać krótkie pliki WAV bez użycia avr-dos.bas?

    Który kod jest Twoj? Spróbuj ustawić fast PWM. Czyli aby wybrać tą opcję musisz ustawic bity WGM12 i WGM10 w rejestrze TCCR1A, datasheet strona 107 :D Mi sie udało obsłużyć wav 44100Hz stereo na Atmega88, zegarze 8Mhz i nawet nie najgorzej gra ale na Fast PWM bo na zwykłym strasznie piszczało i charczało ;p na wyjsciu mam tylko jeden tranzystor żeby...

    Mikrokontrolery AVR   16 Lis 2016 22:22 Odpowiedzi: 328    Wyświetleń: 97086
  • Jak uzyskać dowolną częstotliwość PWM w ATMega48 bez OCR1C?

    Taki zapis jest chyba wygodniejszy- chociaż bardziej rozwlekły. $regfile "m88def.dat" $crystal = 8000000 Config Portb = Output Set Tccr1a.com1a0 set Tccr1a.COM1A1 Set Tccr1a.com1b0 set Tccr1a.COM1B1 Set Tccr1a.com1b1 'Set Tccr1a.wgm11 'Set Tccr1a.wgm10 Set Tccr1b.cs00 Set Tccr1b.wgm13 'Set Tccr1b.wgm12 Icr1 = 851 Ocr1a = 250 Ocr1b = 150 Potem...

    Mikrokontrolery AVR   28 Sie 2010 15:36 Odpowiedzi: 10    Wyświetleń: 2299
  • Jak wygenerować dwa przebiegi odwrócone w fazie na Atmega8?

    ... Skoro się nie da w ten sposób wykonać generatora ... A kto powiedział , że sie nie da :?: Oczywiście , że się da ;) '... Set TCCR1B.WGM12 'Tryb CTC Set TCCR1A.COM1A0 'OCR1A- tryb toggle Set TCCR1A.COM1B0 'OCR1B- tryb toggle Set TCCR1A.FOC1A 'lub FOC1B '...

    Mikrokontrolery AVR   23 Sty 2009 00:16 Odpowiedzi: 12    Wyświetleń: 2011
  • Jak zmieniać stan niski na wysoki za pomocą generatora? ATmega168 i język C.

    Witam, mam problem ze stworzeniem w języku C generatora, który będzie mi zmieniał stan niski na wysoki (stan niski 10ms, stan wysoki 0.32ms) przez czały czas działania programu niezależnie od pętli głównej programu. Czy jest to wogóle możliwe? Liczę na pomoc w dojściu do rozwiązania tego zagadnienia. ATmega 168 taktowana wewnętrzym oscylatorem 8MHz....

    Mikrokontrolery AVR   09 Mar 2019 16:24 Odpowiedzi: 17    Wyświetleń: 975
  • Atmega16A - Sterowanie servem TowerPro SG-90 micro, ustawienia timerów

    Dlaczego przy wypełnieniu 100 % stoi, a przy 0 % coś tam się dzieje ? Co oznacza PWM o wypełnieniu 100%? To już nie są impulsy, to jest napięcie stałe. Dlatego zmieniłem preskaler na 1024 i teraz mam częstotliwość 488 Hz oraz okres 2 Nadal nie rozumiesz. Potrzebujesz częstotliwości ok. 50Hz, a nie 488Hz. Proponuję to zrobić w osobnym projekcie na timerze...

    Mikrokontrolery   20 Lip 2015 15:48 Odpowiedzi: 19    Wyświetleń: 924
  • REKLAMA
  • [ATMEGA][BASKOM][timer w trybie PWM] jak ustawić rejesty

    dla tcr1a: 10000001 COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 TCCR1A tcr1b: 00000010 z dokumentacji na stronie 108 wyczytałem że może tak tcr1a: 10110001 no zadziałało Dziękuję :)

    Mikrokontrolery AVR   13 Gru 2009 19:33 Odpowiedzi: 6    Wyświetleń: 2552
  • ATMEGA128 BASCOM automatyczne przeładowanie timer3

    Witam, niestety ale chyba coś jest nie tak? Na wstępie należałoby wyjaśnić że nie ma czegoś takiego jak "automatyczne przeładowanie timera" (reload/load timer1 powiedzmy). Termin ten jest związany z procedurą konfiguracji timerów występującą tylko w trybie "Normal", gdzie każdorazowo początkowa wartość timera musi być wpisana przez processor. Taka...

    Mikrokontrolery AVR   21 Sty 2015 23:40 Odpowiedzi: 6    Wyświetleń: 1916
  • Generowanie 50Hz i 100Hz w trybie CTC Timer1 Atmega16A - brak sygnału na OC1A

    Na próbę zrób: [syntax=c] #define F_CPU 12000000UL #include <avr/io.h> #include <util/delay.h> int main (void) { DDRA |= 0xff; DDRD |= 0xff; TCCR1A |= 0x40; //włączenie przełączania portu OC1A TCCR1B |= 0x0A ; //włączenie trybu CTC, ustawienie preskalera na 8 OCR1A = 7499; while(1) { } }[/syntax] i sprawdź, czy są zmiany na pinie D5.

    Mikrokontrolery Początkujący   11 Kwi 2016 21:58 Odpowiedzi: 7    Wyświetleń: 936
  • REKLAMA
  • Integracja przycisku z USART na ATMEGA 16 w języku C - jak to zrobić?

    A mógłbyś to jakoś opisać kodem ? [syntax=c]#define BAUD0 9600 //BaudRate (bps) #define MYUBRR0(F_CPU/16/BAUD0-1) //Przerwanie co 0.1s ISR(TIMER1_COMPA_vect) { uint8_t key; static uint8_t lkey=0; key = (PINC & (1<<3)); //przycisk NPN na PC3 if(!key && lkey) UDR='k'; //wyślik "k" jako znak, że wciśnięto przycisk lkey = key; } //przerwanie...

    Mikrokontrolery AVR   04 Maj 2017 23:34 Odpowiedzi: 5    Wyświetleń: 897
  • [Atmega16APU] [Atmega16APU][C] - Freemodbus nie odpowiada poprawnie, błąd Invalid function code

    [syntax=c]/* * FreeModbus Libary: AVR Port * Copyright (C) 2006 Christian Walter <wolti(at)sil.at> * - Initial version + ATmega168 support * Modfications Copyright (C) 2006 Tran Minh Hoang: * - ATmega8, ATmega16, ATmega32 support * - RS485 support for DS75176 * * This library is free software; you can redistribute it and/or * modify it under the...

    Mikrokontrolery AVR   20 Paź 2016 20:39 Odpowiedzi: 12    Wyświetleń: 1350
  • [C] [C][ATmega128] Serwo nie reaguje na PWM, sygnał na PB5, co robię źle?

    wtf? Czy ty myślisz, że jak zrobisz 0<< B 1 na aktywne wyjście a zmieniasz OCR1 A , to się rzuca w oczy na pierwszy rzut oka :]

    Mikrokontrolery AVR   31 Mar 2011 19:08 Odpowiedzi: 8    Wyświetleń: 1576
  • Programowanie robota z mikrokontrolerem ATmega 8A i diodami IR - jak wykrywać dane?

    (at)redcap16 ciekawe jak chcesz, hakerze, rozkodować kod maszynowy :D (at)mikimause9 coś takiego uskrobałem na szybko: [syntax=c]#define PWM_PIN 11 //numer pinu, na którym ma się pojawić PWM bool pwm_on, state = false; void setup(){ noInterrupts(); pinMode(PWM_PIN, OUTPUT); digitalWrite(PWM_PIN, LOW); TCCR1A = 0; TCCR1B = 0; TCNT1 = 0; OCR1A = 104;...

    Początkujący Elektronicy   28 Wrz 2021 04:32 Odpowiedzi: 50    Wyświetleń: 981
  • Jak zmierzyć czas trwania impulsu w C na ATMEGA 162?

    Tak jest to dość istotne... Do pomiaru używany jest 16-bit'owy timer 1 (atmega162 ma dwa ale po takim ogólnym rzucie okiem na pdf wygląda na to, że nie ma różnic w konfiguracji)... Co przy częstotliwości taktowania 8MHz prescalerze 8 daje max ~65,5ms przy dokładności do 1us... Poniżej fragment kodu który mierzy czas trwania stanu wysokiego... ... volatile...

    Mikrokontrolery   02 Lis 2007 14:01 Odpowiedzi: 6    Wyświetleń: 7695
  • [atmega16] [Bascom] Wpis wartości początkowej do timera

    To na razie wersja robocza więc sporo niedociąnięć, muszę jednak zacząć rezygnować z bascoma. Niby już wszystko było OK, ale gdy tylko w pętli głównej przed wyświetlaniem chciałem zamaskować wynik poleceniem fusing, znów jakieś głupoty zaczęły się dziać. Nie mam już nerwów. $crystal = 8000000 $regfile "m16def.dat" '*********************zmienne***********...

    Mikrokontrolery AVR   14 Mar 2010 21:32 Odpowiedzi: 22    Wyświetleń: 3042
  • Literatura i przykłady w C dla japońskich serw z żyroskopem (ATmega)

    w naglowkowy w zasadzie nic nie ma: void Funkcja_Poczatkowa(void); void Walka (void); void Eliminacje (void); void Diagnostyka (void); void Test_Cz_Odleglosci (void); void Test_Cz_Linii (void); void Test_Silnikow(void); void Ust_Portow (void); void USART_Init( unsigned int baud );...

    Mikrokontrolery   08 Maj 2008 08:48 Odpowiedzi: 23    Wyświetleń: 2892
  • ATMEGA 328P-AU - FAST PWM na pinie PD6 nie działa poprawnie - analiza kodu

    Mam 4 piny z PWMem wykorzystane w układzie, teraz próbuję na PB1, nieco przerobiłem kod, natomiast ten silnik również się nie obraca. Czy nadal coś robię źle? [syntax=c] #include <avr/io.h> #define F_CPU 16000000UL int main(void) { DDRB |= (1 << PORTB1); TCCR1A |= (1<<WGM10); TCCR1B |= (1<<WGM12); TCCR1A |= (1<<COM1A1)|(1<<COM1B1);...

    Mikrokontrolery AVR   26 Gru 2016 13:29 Odpowiedzi: 15    Wyświetleń: 2124
  • [atmega] ATmega32/16 – PWM dla diody RGB w C: płynne ściemnianie, brak płynnego rozjaśniania

    Ustawiaj bity zdefiniowanymi nazwami, bo kto znasz będzie chciał zerkać do datasheet, by sprawdzić Twój kod? [syntax=c]TCCR1A=0b10100001; //ustawienie Licznika1 w trybie PWM 8 bitów TCCR1B=0b00001001;[/syntax] Chyba tylko desperat :) Pomijam już, że nie podałeś którego mikrokontrolera to dotyczy. Atmega, Atmedze, nierówna, więc nawet desperat nie wie,...

    Mikrokontrolery AVR   27 Paź 2011 20:49 Odpowiedzi: 3    Wyświetleń: 2187
  • Minimalna częstotliwość PWM na Atmega16 przy 1Hz lub 0,5Hz - jak uzyskać?

    Ja myślałem, że najdokładniejszy jest tylko 10bit PWM a nie ma 16bitowego EDIT: Kurcze rzeczywiście znalazłem w datasheet'cie Atmegi. Jeśli dobrze rozumiem muszę ustawić bity WGM10, WGM1, WGM12, WGM13 i wtedy rozdzielczość ustawiam przez rejestr ICR1 albo wyzerować WGM10 i rozdzielczość ustawić przez OCR1A. Może mi ktoś powiedzieć czy te dwa sposoby...

    Mikrokontrolery AVR   21 Lip 2011 17:22 Odpowiedzi: 27    Wyświetleń: 4385
  • Sterowanie 8 diodami LED na attiny2313 z PWM w języku C - jak to zrobić?

    Może to ci się przyda [syntax=c] /* PROGRAMIK PRZYKŁADOWY Wykorzystanie sprzętowego PWM AVR ATMEGA 8 (1MHz) */ #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> /* PROGRAM */ int main(void) { int i; // Konfiguracja portów we/wy DDRB = (1<<2)|(1<<1); // OC1A i OC1B wyjścia PWM /* Ustawienie sprzętowego PWM */...

    Mikrokontrolery   08 Kwi 2015 11:47 Odpowiedzi: 9    Wyświetleń: 1374
  • [bascom] [bascom][atmega8] Jak ustawić Timer1 jako 8-bitowy FastPWM (non-inverting)?

    ... Jedyny minus, przy pwm1a=0 są "szpilki"... Zamiast wpisywania do rejestru ocr1a(Pwm1a) zera , przełącz funkcję PINB.1 na standardową(I/O) , poprzez wyzerowanie bitu COM1A1 w TCCR1A.Przed uruchomieniem Timera wyzeruj PORTB.1 . Np. Set DDRB.1 Reset PORTB.1 TCCR1A=&B10000001 TCCR1B=&B00001001 '... If Wypełnienie = 0 Then Reset TCCR1A.COM1A1 'PINB.1...

    Mikrokontrolery AVR   29 Sie 2008 16:28 Odpowiedzi: 6    Wyświetleń: 2328
  • Atmega i adc. Sterowanie serwami. Nie działa dobrze. Kod.

    prosze: TCCR1A = (1<<WGM10) | (1<<COM1A1) | (1<<COM1A0) |(1<<COM1B1) | (1<<COM1B0); TCCR1B = (1<<CS10) | (1<<CS11) | (0<<CS12) | (1<<WGM12); ICR1H = 0; ICR1L = 255; sei(); }

    Mikrokontrolery   29 Paź 2006 15:54 Odpowiedzi: 10    Wyświetleń: 3172
  • Atmega 8: Ustawienie czasu powtarzania PWM na 100us przy 1MHz

    PWM 8 bitowy. Poniżej zamieszczam inicjalizację void pwm_s(void) { TCCR1A = _BV(COM1A1) |_BV(WGM10) ; TCCR1B = _BV(CS10) |_BV(WGM12) ; OCR1A = 0x32; //Wypeł. } Uzyskałem 502us przy 1MHz. Zgodnie z zaleceniami 8 bit fast pwm preskaler 1. Pozdrawiam

    Mikrokontrolery   04 Lis 2006 13:30 Odpowiedzi: 8    Wyświetleń: 3572
  • Fast PWM dla ATmega 32. Dobrze rozumiem działanie?

    zdawało mi się , że już "zatrybiłeś" timery Dokładnie i dlatego pozwoliłem sobie udzielić odpowiedzi. Timer w trybie 5 bez względu na ustawienia zawsze liczy do końca (0xFF) a zmiana pinu OCRx dokonywana jest po osiągnięciu wartości ustawionej w OCR1A. Jak widać na przykładzie ustawiany jest 5 tryb pracy tego timera. ldi temp,(1<<COM1A1)|(1<...

    Mikrokontrolery   11 Wrz 2007 01:43 Odpowiedzi: 9    Wyświetleń: 4257
  • [Atmega162][asembler/AVRStudio] Nie można debugować kodu

    Witam, Przesiadłem się właśnie z procka ATmega 16 na Atmegę 162 z powodu nie wystarczającej liczby portów. Napisałem program który ma za zadanie włączyć TIMER1 w tryb licznika z sygnałem taktującym na porcie PB1(T1). [syntax=asm].include "m162def.inc" .cseg .org 0 rjmp reset reset: cli ldi R16, low(ramend) out SPL, R16 ldi R16, high(ramend) out SPH,...

    Mikrokontrolery AVR   07 Kwi 2011 09:20 Odpowiedzi: 8    Wyświetleń: 1928
  • [ATmega1284P] Timer1 przerwanie co BPM - błędne ustawienia preskalera?

    Zwracam się z prośbą o naprowadzenie co robię źle. Potrzebuje wygenerować przerwanie co czas zależny od danego parametru (tutaj BPM). ATmega1284P pracująca z zegarem 20MHz. Ustawiam BPM i wyliczam czas: [syntax=c]uint8_t bpm = 120; uint8_t step_time = 60000/(2*bpm); //czas trwania 8ki w ms uint8_t count = 0; //zmienna pomocnicza do zliczania przerwan[/syntax]...

    Mikrokontrolery AVR   18 Kwi 2012 20:04 Odpowiedzi: 1    Wyświetleń: 968
  • [ATMEGA32A] [C] Problem z UART oraz wysoka temperatura

    Witam wszystkich. Podczas dzisiejszej zabawy z Atmegą32a napotkałem 2 problemy. Jeden, to dziwnie działający UART: Przy takim kodzie: [syntax=c]#include <avr/io.h> #include <util/delay.h> #define PWM_A (1<<PD4) #define PWM_B (1<<PD5) int a = 0; #define USART_BAUDRATE 9600 #define BAUD_PRESCALE (((8000000UL / (USART_BAUDRATE *...

    Mikrokontrolery AVR   12 Lis 2017 17:35 Odpowiedzi: 2    Wyświetleń: 471
  • Dlaczego PWM na ATmega16 w BASCOM 1.11.7.4 nie działa jak na AT90S8515?

    O K Widzę,że sam muszę sobie odpowiedzieć. Po żmudnych próbach z konfigurowaniem PWM w Bascomie doszedłem do wniosku, że żadna z wersji tego kompilatora nie jest w stanie prawidłowo skonfigurować PWM na procesorze ATMEGA. Trzeba to zrobić przez bezpośrednie oddziaływanie na rejestry. Np.: $regfile = "m16def.dat" 'Deklaracja rodzaju procesora Ddrd =...

    Mikrokontrolery   08 Cze 2013 10:34 Odpowiedzi: 42    Wyświetleń: 42576
  • [atmega...][c]Masakrowanie przerwań - luźne dywagacje...

    Optymalizacji ciąg dalszy. Obie funkcje wywoływane tylko raz. Dlaczego po zrobieniu inline dla timer0_init() kod maleje o 6bajtów natomiast timer1_init() rośnie o 14bajtów? Optymalizacja na -Os. Powinna być jakaś logika a w tym nie ma :( ... void timer0_init(void){ //x8 //timer0 compa atmega_x8 TCCR0A set0 b(WGM00); TCCR0A set1...

    Mikrokontrolery AVR   30 Cze 2010 10:39 Odpowiedzi: 91    Wyświetleń: 7281
  • Jak zatrzymać licznik T1 w ATmega16 po osiągnięciu OCR1A?

    int main(void) { //zliczanie timera od 0 -> wart OCR1A TCCR1A |= ( _BV(COM1A0)| _BV(COM1A1)); TCCR1B |= ( _BV(CS10) | _BV(WGM12) ); ustaw_OCR1A(119); TIFR |= _BV(OCF1A); // wlaczenie flagi OCM if(TIFR!=0) { TCCR1B = 0x00; DDRA |= _BV(PA6); PORTA &=...

    Mikrokontrolery   11 Lis 2006 10:01 Odpowiedzi: 6    Wyświetleń: 1373
  • [ATmega16][C]Pwm - prośba o poprawienie kodu (rejestrów)

    Napisz jakiego trybu PWM chcesz używać (8, 9 czy 10bit). Podpowiem, że jeżeli użyjesz 8-bit to będziesz zużywał mniej czasu procesora na ładowanie wartości do rejestrów OCR1x i ich obliczanie. Dodano po 9 DDRD = 0b00110000; //piny PWM jako wyjścia // TIMER1 8bit fast PWM 8-bit TCCR1A = _BV(COM1A1) | _BV(COM1B1) | _BV(WGM10);...

    Mikrokontrolery AVR   01 Sie 2010 14:56 Odpowiedzi: 7    Wyświetleń: 2161
  • atmega8 / atmega16 - jak sterowac serwem TowerPro MG995???

    "z tym serwem są problemy" - może uszkodzone, ja mam sześć sztuk TowerPro (może nie ten model) i wszystkie działają, tylko trzeba im sygnał podać. Co do sterowania: http://mil.ufl.edu/~achamber/servoPWMfaq... Jeszcze sugestia żeby serwo i układ zasilać osobno ze wspólną masą. Kod, zaznaczam że pisany dawno i NIE PAMIĘTAM CZY DZIAŁA!! (chyba lepsze...

    Robotyka Modelarstwo i CNC   26 Paź 2012 15:13 Odpowiedzi: 27    Wyświetleń: 13636
  • C - Arduino Atmega2560 pomiar czasu między impulsami w C

    Nie mam jak określić dokladnie częstotliwości, ale mniej więcej z przełożenia czujnika w skrzyni myślę że od 0 do 4000 impulsów na sekundę ( tak orientacyjnie), szerokość impulsu to 1/16 obrotu czujnika. Znalazlem dziś jedyny projekt, z którego mógłbym wziąć podstawę, ponieważ jest to obrotomierz czyli też zliczanie impulsów i podobno działa na takiej...

    Arduino   25 Lip 2013 09:47 Odpowiedzi: 3    Wyświetleń: 4776
  • Atmega 328 PB - losowa synchronizacja kanałów Compare w generacji częstotliwości

    Dziekuję Bede testował :) Dodano po 3 No nie do końca to chce działać tak jak napisaliśmy... bascom nie przyjmuje składni timer + clear_up ale problem okiełznałem na dwa sposoby... Bascomowy: [syntax=vbnet] 'puść timer z generacja comapre Config Timer1 = Timer , Prescale = 1 , Compare_A = Toggle ,Compare_B = Toggle , Clear_Timer = 1 'zapisz wartość...

    Mikrokontrolery AVR   03 Lis 2017 11:25 Odpowiedzi: 18    Wyświetleń: 1365
  • ATMega16 PWM: Jak ustawić impuls 20 ms z wypełnieniem 1-2 ms?

    ; ========================================... sterowanie PWM_1 ========================================... ; OC1A pracuje jako PWM (z korekcja fazy 8bit z częstotliwością =f/(2*pre*ICR1L) ; ustawiamy OC1 w tryb PWM z korekcja fazy ldi R16, 255 out ICR1L, R16 ; wpisujemy max wartosc zliczana timera T1 ldi R16, 128 ; wpisujemy wypelnienie dla PWM1A...

    Mikrokontrolery   18 Sie 2007 14:00 Odpowiedzi: 5    Wyświetleń: 6494
  • [MEGA128] Dlaczego ATmega128 resetuje się przy przerwaniach w programie migania diody?

    Ja mam podobny problem z ATmega 32 i z przerwaniem od przepelnienia licznika T1. Program caly czas siedzi w przerwaniu nie moze nie z niego wrocic. Kod wyglada mniejwiecej jak ponizej. jezeli w funkcji main w petli while jest printf to program wraca z przerwania. Jezeli wstawie tam np swiecenie diody to program krazy caly czas w przerwaniu. Moze mi...

    Mikrokontrolery AVR   15 Lip 2008 14:13 Odpowiedzi: 19    Wyświetleń: 2061
  • Programowanie mikrokontrolera Atmega324a-pu dla układu LED - prośba o weryfikację kodu

    napisałem program zmieniłem taktowanie uc na 8MHz wgrałem program jedyne, co działa to obsługa przycisków Dodano po 24 Problem najpewniej występuje w tej części programu: Dodano po 3 66 osoby widziały ten post, ale tylko jedna odpowiedziała. Wiesz dlaczego? Ponieważ Twój kod i schemat są nieczytelne. Nadal to jest problem? Jakie mosfety włączają zasilanie?...

    Mikrokontrolery Początkujący   09 Paź 2023 15:54 Odpowiedzi: 11    Wyświetleń: 825
  • Atmega168A-PU: Brak działania przerwań, mruganie diodą nieudane.

    Cześć, dziękuję wszystkim za odpowiedzi. Generalnie problem rozwiązany, aczkolwiek muszę jeszcze zobaczyć do kodu asemblera bo wydaje mi się, że poprzedni kompilator coś nachrzanił i dlatego był taki cyrk, a w sumie ciekawy jestem. Korzystałem wcześniej z kompilatora dołączonego do CodeBlocks, jednak po tym co działo się w opisywanym wątku zmieniłem...

    Mikrokontrolery Początkujący   03 Lip 2018 14:16 Odpowiedzi: 10    Wyświetleń: 612
  • [ATmega128L] Jak napisać kod w C dla woltomierza na ATmega128L z Codevision AVR?

    #include <mega128.h> #define RXB8 1 #define TXB8 0 #define UPE 2 #define OVR 3 #define FE 4 #define UDRE 5 #define RXC 7 #define FRAMING_ERROR (1<<FE) #define PARITY_ERROR (1<<UPE) #define DATA_OVERRUN (1<<OVR) #define DATA_REGISTER_EMPTY (1<<UDRE) #define RX_COMPLETE (1<<RXC)...

    Mikrokontrolery   29 Maj 2008 17:57 Odpowiedzi: 6    Wyświetleń: 1761
  • Przerwania atmega2560 jak włączyć przerwania TIMER1/3/4/5_COMPB/C_vect

    Najprostszy przykład jaki mi przychodzi do głowy to wykorzystanie tych dwóch dodatkowych funkcji do wygenerowania przerwania które nastąpią po przerwaniu A po czasie zadeklarowanym w rejestrach OCRxB/C W twoim kodzie będzie to coś takiego void setup(){ DDRB |= (1<<PB7); // ustawienie pinu 13 jako wyjscie PORTB &= ~(1<<PB7);//...

    Mikrokontrolery AVR   17 Gru 2022 17:52 Odpowiedzi: 4    Wyświetleń: 420
  • Atmega Attiny 2313 - Zawieszanie przy zasilaniu z ładowarki 5V 1,5A

    No i uprość ten kod to testów zasilania. Może być tak: #include <avr/io.h> #include<util/delay.h> #include<avr/interrupt.h> #include<avr/eeprom.h> int i; int main(void) { DDRB=0xff; DDRD=0xff; DDRA=0; TCCR0A=0x81; TCCR0B=0x04; OCR0A=0; //R TCCR1A=0xA1; OCR1A=0; //G TCCR1B=0x04; OCR1B=0; //B OCR0A=0; OCR1B=0; OCR1A=0;...

    Mikrokontrolery AVR   14 Lut 2011 19:16 Odpowiedzi: 55    Wyświetleń: 3809
  • Atmega128A-AU[C] nie wykonuje przerwania od timera1

    A ja obstawiam, że program siedzi w przerwaniu i nie wykonuje w ogóle pętli głównej. Spróbuj zamienić miejscami, czyli zrób tak. [syntax=c] TCNT1 = 0x00; OCR1A=50; ICR1=800; TCCR1A |= (1<<COM1A1) | (1<<WGM11); //FastPWM, preskaler 1 TCCR1B |= (1<<WGM13) | (1<<CS10) | (1<<WGM12); TIMSK |= (1<<OCIE1A); [/syntax]

    Mikrokontrolery AVR   28 Kwi 2012 17:27 Odpowiedzi: 24    Wyświetleń: 2075
  • [Atmega] Atmega: Timer1 CTC przycina się przy zmianie OCR1A z ADC, silnik staje

    Witam, Mam problem z timerem1 - timer pracuje w trybie CTC (4), wartość wpisywana do rejestru OCR1A jest wcześniej odczytywana z przetwornika ADC (potencjometr). Problem występuje podczas zmiany tej wartości - timer tak jakby się przycinał (ale tylko czasami) - nie zgłasza przerwania przez pewną chwile, żeby zaraz zacząć normalnie pracować. Np. po takiej...

    Mikrokontrolery AVR   11 Paź 2009 18:53 Odpowiedzi: 3    Wyświetleń: 5266
  • [Atmega16] Jak zrealizować sterowanie napędem rotora za pomocą PWM na Atmega16 w C?

    układ został w całości zmontowany. niestety po uruchomieniu jest cicho i głucho. próbowałem uruchomić poniższy program z PWM (na diodach działał): [syntax=c] #include <avr/io.h> int main() { DDRC = 0xFC; //klawiatura PORTC = 0xFF; DDRD = 0xFF; PORTD = 21; // stan wysoki na OCR1A i PD4 TCCR1A = 0b10000010; TCCR1B = 0b00011001; TCNT1 = 0; OCR1A...

    Mikrokontrolery AVR   28 Sie 2011 22:54 Odpowiedzi: 55    Wyświetleń: 8707
  • Niezrozumiały wynik obliczeń PWM na atmega 328p: Dlaczego ICR1=20000 daje 50Hz, a nie ICR1=40000?

    Mam pewny problem i nie umiem tego policzyć bo mi coś źle wychodzi Tak mam ustawiony timer1 16bit [syntax=bash] cli(); TCCR1A = 0; TCCR1B = 0; TCNT1 = 0; TCCR1A = (1<<COM1A1) | (1<<WGM11); TCCR1B = (1<<WGM13) | (1<<CS11); // preskaler 8 ICR1 = 19999; sei(); [/syntax] 1<<COM1A1 - generuje PWM na pinie 9 początek stan wysoki,...

    Arduino   27 Wrz 2020 21:08 Odpowiedzi: 2    Wyświetleń: 798
  • [Atmega8515] PWM na 16 bitowym działa na 8 niechce dlaczego?

    Witam poniżej przedstawiam kod programu za srednikami jest poustawiany timer 16 bit który steruje serwomechanizmem z modeli RC i działa wszystko poprawnie (wyjscie OC1A do serwa) natomiast ja chcialbym to serwo wysterować 8 bitowym wyjscie (OC0/t0 pin1 do serwa) I niby wszytsko dobrze posutawialem ale serwo ani drgnie dlaczego? #include "avr.inc"...

    Mikrokontrolery AVR   03 Sty 2010 00:52 Odpowiedzi: 3    Wyświetleń: 1698
  • [ATMega8] [ATMega8][Bascom] Jak ustabilizować pracę układu z kodem PWM?

    Zacznę od zamieszczenia kodu źródłowego i schematu: ' ########################################... ' # Control Programm for Trolling Motor Driver # ' # (C)2008 by Tomasz Orczyk # ' ########################################... $regfile = "m8def.dat" $crystal = 8000000 'CKSEL3..0=0100 - 8MHz Internal (PWM ~30kHz) 'SUT1..0=01...

    Mikrokontrolery AVR   02 Wrz 2008 20:58 Odpowiedzi: 6    Wyświetleń: 4679
  • Timer TCCR3 atmega128A - diody LED nie działają w trybie PWM

    Witam, może pewnie to dla wielu błachostka ale ja nie nie wiem kompletnie dlaczego niżej zamieszczony kawałek instrukcji nie chce działać, mianowicie mam 3 diody led podłączone do PE3 do PE5 w atmedze128A i chciałem je zapalić w trybie pwm ale z niewiadomych mi przyczyn kawałek kodu nie chce działać, diody się nie zapalają. Jeszcze niżej zamieszczam...

    Mikrokontrolery   31 Sty 2014 21:18 Odpowiedzi: 1    Wyświetleń: 924
  • [Atmega128] Jak ustawić PWM na Atmega128 do sterowania 3 silnikami?

    według tabeli ze specyfikacji //jezeli są standardowo ustawione na 0 TCCR1A |= ((1 << COM1A1) | (1 << COM1B1)| (1 << COM1C1)| (1 << WGM11)| (1 << WGM10)); //czy mozna to zapisac TCCR1A = 0xAB; TCCR1B |=((1 << WGM13)| (1 << WGM12)| (1 <<...

    Mikrokontrolery AVR   16 Lut 2011 11:50 Odpowiedzi: 11    Wyświetleń: 5121
  • [Atmega128] Atmega128 - problemy z portami po programowaniu PWM, uszkodzenie uC?

    Podłaczenie to: Atmega128L, port PB6-rezystorek-dioda(katoda w stronę procka-zasilanko 5V int main(void) { // konfiguracja portów we/wy DDRE=0xFF; PORTE=0xFF; DDRB=1<<PB6; TCCR1A|=1<<COM1A1|1<<WGM10; TCCR1B|=1<<WGM12|1<<CS0; TIMSK=1; TCCR0=7; sei(); // inicjalizacja LCD lcd_init(); LCDclr();...

    Mikrokontrolery AVR   25 Cze 2008 06:37 Odpowiedzi: 16    Wyświetleń: 2133
  • ATMEGA128L z kwarcem 7,3728MHz - program działa, ale nie miga LED

    1. Nie widzę deklaracji zegara systemowego więc skod kompilator będzie wiedział jak zrobić delay_100 ms W CodeVision ustawia sie to we wlasciwosciach projektu 2 Jesteś szybki jak zobaczysz na diodzie jak sie zapala i gaśnie co 0,1s Jak zmienie na 0,25s to i tak nic to nie zmienia, i tak nie działa /***************************************...

    Mikrokontrolery   28 Kwi 2008 21:52 Odpowiedzi: 13    Wyświetleń: 1644
  • atmega 8 wyprowadzic podzielony zegar na wyjście ?

    tak mam to teraz roziwiazane... chodzi mi zeby wlasnie wszystko bylo jak najmniejsze i pobieralo jak najmniej energii .... Dodano po 1 sory za pisanie jednego posta pod drugim, ale problem rozwiazany. moze sie komus to przyda. uzylem licznika /timera 1 w trybie CTC chodzi bez zadnych przerwan i obslugi softem. wystarczy wpisac tylko odpowiednie wartosci...

    Mikrokontrolery   29 Lis 2007 23:13 Odpowiedzi: 6    Wyświetleń: 1754
  • Atmega 32 PWM tryb 14 - Dioda na D5 świeci przy OCR1A = 0 i TOP, dlaczego?

    Witam. Napisałem kod do PWM w trybie 14. Przy ustawieniu OCR1A = TOP dioda na nóżce D5 powinna się świecić. Przy ustawieniu OCR1A = 0 dioda na nóżce D5 powinna się nie świecić. Świeci w obydwu przypadkach co tu jest nie tak. #define F_CPU16000000UL//1MHz zegar procesora #include <avr/io.h> #include <util/delay.h> #include <string.h>...

    Mikrokontrolery AVR   27 Lut 2011 14:02 Odpowiedzi: 2    Wyświetleń: 2199
  • Atmega32A - Konfiguracja PWM do odtwarzania dźwięku

    Witam forumowiczów :D! Tworze projekt na zaliczenie - prostą perkusje elektroniczną, która posiada 12 przycisków, czytnik kart SD i wyjście PWM podpięte przez wzmacniacze do gniazda jack. Wszystko do momentu odtwarzania dźwięku działa poprawnie - wartości z pliku czyta prawidłowo (przetestowane na diodzie). Problem pojawia się gdy zaczynam odtwarzać...

    Mikrokontrolery AVR   01 Maj 2013 10:13 Odpowiedzi: 26    Wyświetleń: 5220
  • [atmega32] resetuje się przy ustawieniu timera1 w tryb CTC

    Witam, Jestem początkującym w temacie, napisałem sobie sterowanie 8 serwami, ale chciałbym to robić bardziej dokładnie przy użyciu trybu CTC timera1 i sprzętowego rejestru przesuwającego. W następujący sposób go inicjalizuje // na początek włączamy tryb czasomierza i ustawiamy wyjscie na 0 w trybie normalnym TCCR1A = 0x00; // tryb czasomierza TIFR &=...

    Mikrokontrolery AVR   06 Wrz 2010 06:30 Odpowiedzi: 4    Wyświetleń: 1299
  • Jak ustawić bity WGM11 i WGM10 w TCCR1A dla TIMER1 w AVR Studio?

    WGM11 i WGM10 razem z bitami WGM12 i WGM13 z rejestru TCCR1B ustalają własnie tryb pracy. Table 39 na stronie 99 Datasheeta ATMegi8 z 07/2007. Inne procesory to inne numery tabelki i strony w Datasheecie, ale opis prawie identyczny. Podałem przykład dla ATMega8 żebyś wiedział gdzie szukać.

    Mikrokontrolery AVR   02 Paź 2009 21:17 Odpowiedzi: 4    Wyświetleń: 1254
  • ATMEGA 8 i PWM - jak na jednym Timerze uruchamiać przerwanie co sekundę

    (nie mam w tym momencie czasu aby przyjrzeć się temu bliżej, postaram się odpowiedzieć następnym razem pełniej) Masz napisane: TCCR1A = (1<<WGM10) | (1<<COM1A1) | (1<<COM1A0); //8bit PWM, phase correct TCCR1B = (1<<CS12) | (1<<WGM12); 8-bit PWM, phase correct ma wlaczone tylko WGM10. Tak jak Ty masz WGMy ustawione to wynika,...

    Mikrokontrolery   25 Maj 2006 00:18 Odpowiedzi: 1    Wyświetleń: 2224
  • Jak przenieść kod RC5 z ATmega16 na ATmega8L z użyciem Timer1?

    rpal ale właśnie mam w kodzie odblokowane przerwania sei(); Zmieniłem zadania Timerow. Teraz Timer1 służy do PWM, a TImer2 do zliczania czasu w dekodowaniu RC5. Proszę jeszcze raz o sprawdzenie kodu //ATmega8L kwarc 4MHZ #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> volatile uint16_t g_licznik = 0; ISR (TIMER2_COMP_vect)...

    Mikrokontrolery AVR   04 Mar 2010 20:52 Odpowiedzi: 17    Wyświetleń: 1638
  • 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ń: 1572
  • atmega 8535 - Konfiguracja Fast PWM tryb 15 na timerze 16-bitowym

    Witam, chcę uruchomić na timerze 16 bitowym tryb 15. 'Fast PMW' robię to tak: [syntax=c] PORTC |= (1<<PD4); TCCR1A|=(1<<COM1B0) |(1<<WGM11) |(1<<WGM10); TCCR1B|=(1<<WGM13) |(1<<WGM12) |(1<<CS11) //prescaler 64 |(1<<CS10); OCR1A=400; OCR1B=250; [/syntax] I teraz jeśli dobrze rozumiem to rejestrem OCR1A...

    Mikrokontrolery AVR   06 Lis 2013 14:25 Odpowiedzi: 1    Wyświetleń: 861
  • ATmega168 i ADXL345 - komunikacja i2c/twi zawiesza się

    witam, próbuję osbłużyć akcelerometr ADXL345 po i2c, ale komunikacja zawiesza się po pierwszej komendzie i w ogóle program nie wchodzi do pętli while(1). jak zakomentuje linijkę: i2cTransmit(ADXL345, POWER_CTL, 0) w mainie; to ATmega wysyła po USARCIE dane bez problemu, w przeciwnym razie zawiesza się. o to listing programu: ATmega168 + 20 MHz, na samym...

    Mikrokontrolery AVR   21 Lip 2011 12:45 Odpowiedzi: 10    Wyświetleń: 3367
  • atmega128 - atmega128 timer 1 i 3 w tybie ctc - ustawianie częstotliwości

    Witam kolegów! Ustawiłem na atmedze128 timer 1 i 3 w tryb ctc. skorzystałem z nich z tego względu, że są 16-bitowe i liczyłem na większą dokładność. regulacja przy zmianie wartości ocrx jest nieliniowa i o tym wiedziałem. jednak muszę ustawiać częstotliwość ok 60khz z dokładnością do 0,1khz. Rzecz w tym, że przy niższych częstotliwościach regulacja...

    Mikrokontrolery AVR   04 Wrz 2014 16:47 Odpowiedzi: 7    Wyświetleń: 1623
  • Ustawianie wartości 0 w rejestrze TCCR1B (CS10, CS11) w mikrokontrolerze atmega 32

    Zwróć uwagę na 2 funkcje na dole i STEP_,STEP_OFF [syntax=c]void nawijarka_start(void) { _delay_ms(WAIT_50); kontrol_funkcji=2; char bufor[5]; init_T1_Hz_kroki(ocr1);//sygnał STEP init_INT0();// zliczanie zwoi ekran_1_start(); DIR_HIGHT; // przesów lewo/prawo ZLICZ_ZWOJE_ON; //int0 STEP_ON ; //#define STEP_ON TCCR1B |= _BV(CS11) | _BV(CS10); ENABLE_ON;...

    Mikrokontrolery Początkujący   26 Lut 2021 19:13 Odpowiedzi: 8    Wyświetleń: 468
  • AVR Atmega 16A - Konfiguracja TIMERA1 - przerwania wykonują sie za szybko.

    Witam! Chcę ustawić TIMER1 w atmedze 16 tak aby generował przerwania mniej więcej co sekundę w trybie CTC (dodam, że nie zależy mi na aptekarskiej precyzji). W tym celu ustawiłem następujące rejestry: TCCR1A |= (1<<WGM12); //tryb ctc , timer1 TCCR1B |= (1<<CS12)|(1<<CS10); //prescaler 1024 / OCR1A = 7813; // 8MHz/1024 TIMSK |= (1<<OCIE1A);...

    Mikrokontrolery AVR   07 Sty 2014 15:00 Odpowiedzi: 2    Wyświetleń: 1269
  • [Atmega16A] Problemy z elektroniką przy sterowaniu silnikiem CN12-R-XC

    Witam, Już od dość długiego czasu mam problem ze sterowaniem silnika używając mikrokontrolera Atmega16A. Myślałem, że wina leży w kodzie programu, ale wysłałem zapytanie do AvrFreaks i tam nic złego nie znaleźli. Wniosek: Najprawdopodobniej wina leży w elektronice. Konfiguracja: Atmega16A, 8MHz kwarc, FUSE: wyłączony JTAG, CKSEL3..0=1111, CKOPT=0,SUT10=11...

    Robotyka Modelarstwo i CNC   05 Wrz 2011 13:19 Odpowiedzi: 7    Wyświetleń: 2918
  • Jak sterować serwomechanizmami modelarskimi z mikrokontrolera ATmega16?

    Witam Was ponownie. Chciałbym abyście odnieśli się do tego kodu. Steruje na razie 1 serwem stąd atmega 8mhz (aby móc wysterować licznik2 do wartości 20ms) Mam rozumieć, że to jest programowy pwm? A może są jeszcze inne sposoby? #include <avr/io.h> #define F_CPU 8000000 #include <util/delay.h> #include <avr/interrupt.h> int volatile...

    Mikrokontrolery AVR   14 Sie 2009 15:49 Odpowiedzi: 42    Wyświetleń: 11851
  • Jak uzyskać prawdziwy 16-bitowy PWM na Atmega 8?

    No dziękuję bardzo ale z całym szacunkiem: taka odpowiedź właśnie nic nie wnosi :D Jedynie tyle że: "jest tam napisane i napisane jest dobrze". Jak by był tak miły kolega wskazać dokładnie z opisem gdzie jest to napisanie w dokumentacji to wtedy ma to jakąś wartość a takiej odpowiedzi może udzielić prawie każdy :) Może jestem ślepy, może zbyt głupi...

    Mikrokontrolery AVR   29 Gru 2017 07:11 Odpowiedzi: 5    Wyświetleń: 1155
  • Atmega 32, ADC. Dlaczego zamieszczony kod nie działa?

    Jak ja widzę tak pisany kod programu: ADCSRA = 0b00000000; ADMUX = 0b01000001; ADCSRA = 0b10000000; // Zacznij pierwsza konwersję SFIOR = 0b00000000; TCCR1A=0b10001000; TCCR1B=0b00010010; to mnie odrzuca, zresztą wielu ludzi odrzuca - bo to masakra ;) i ciężko nawet skusić się żeby coś analizować i podpowiadać. czy nie czytelniej jest tak, jak to napisałeś...

    Mikrokontrolery AVR   19 Gru 2010 22:09 Odpowiedzi: 7    Wyświetleń: 2405
  • [Atmega128 ] Atmega128, C, avr-gcc: PWM na PB3 - brak modulacji sygnału, co poprawić?

    Witam. Mam taki program w C do prób z PWM. #include <avr/io.h> int main( void ) { DDRB=0x08; //PB3 - wy (OC1 - wyjście PWM), pozostałe we PORTB=0; //bez podciągania TCCR1A=0x83; //PWM 10 bitowy TCCR1B=0x03; //preskaler=3, co przy 10-bit PWM daje Fwy=ok. 61Hz TCNT1L=0x00; //wstępne ustawienie licznika1 TCNT1H=0x00; OCR1A =...

    Mikrokontrolery AVR   05 Lip 2008 00:39 Odpowiedzi: 2    Wyświetleń: 1710
  • ATmega16L + HC-SR04 - błędne wyświetlanie znaków na LCD

    Dobry wieczór, krótko : - program z wykorzystaniem ATmega16L + hc-sr04(ultradźwiękowy czujnik odległości) - mam problem z wyświetlaniem znaków bo powinno pisać : CIRCUIT DIGEST/DISTANCE=[i tu odleglosc w cm] - jest napisane CKSCWKT DKGGST/DKSTCOCG?33CM - na schemacie jest ATmega32 ja mam ATmega16 - http://circuitdigest.com/fullimage?i=cir...

    Mikrokontrolery AVR   29 Sty 2017 11:17 Odpowiedzi: 14    Wyświetleń: 972
  • [Atmega328] [Atmega328][C][PWM] - Jak poprawić jakość dźwięku .wav z karty SD?

    Cześć, Próbuję odtworzyć plik .wav z karty SD wykorzystując PWM ale nie do końca mi to wychodzi. Dźwięk jest w okropnej jakości, muzykę ledwo da się rozpoznać, strasznie charczy, ale jeśli się wsłucham to jakoś tekst wokalu wychwycę:D O to kawałek kodu odpowiedzialnego za odtwarzanie: http://obrazki.elektroda.pl/6893634300_1... Pozdrawiam

    Mikrokontrolery   12 Wrz 2013 19:47 Odpowiedzi: 13    Wyświetleń: 3378
  • ATmega 328p - napięcie na wyjściu przy OCR1A=0 w trybie PWM

    Witam, postanowiłem napisać, gdyż dzisiaj bawiłem się mikrokontrolerem ATmega328p, a konkretnie timerem 1 w trybie PWM. Ustawiłem go tak aby mieć jak największą rozdzielczość, czyli żeby zliczał do ICR1 (mam wtedy 16 bitów). Z grubsza fragment kodu odpowiadający za generację PWM wyglądał więc tak: [syntax=c] TCCR1A|=(1<<COM1A0)|(1<<WGM1...

    Mikrokontrolery AVR   23 Kwi 2019 16:47 Odpowiedzi: 6    Wyświetleń: 528
  • [Atmega169p] [C] Vu meter na 32 diodach RGB - problem z multipleksowaniem PWM

    Witam, próbuję wykonać vu meter na 32 diodach RGB. Aktualnie mam problem z samym sterowaniem wszystkich LEDów. Do zbudowania urządzenia użyłem atmegi 169p. Posiadam diody ze wspólna anodą. Są one podłączone jak na schemacie, czyli wszystkie katody danego koloru połączone są ze sobą i przez rezystor do mikrokontrolera do portów PWM, natomiast anody podłączone...

    Mikrokontrolery AVR   13 Wrz 2011 07:19 Odpowiedzi: 1    Wyświetleń: 1610
  • 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
  • [Atmega 1284][C/WinAVR] - Kontrolowanie Serwomechanizmu

    Witajcie, Mam problem ze sterowaniem serwomechanizmu NewPower XL-9 z poziomu Atmegi 1284. Kod wydaje się być OK. Serwo non-stop kieruje się w jedną stronę, do oporu. Nawet z różnymi wartościami OCR1A, serwo wykonuje ten sam ruch. Co mam źle ? Kod to w sumie gotowiec z internetu, gdyż poprzednie, własne kody także nie działały :/ [syntax=cpp]#define...

    Mikrokontrolery AVR   16 Mar 2013 20:14 Odpowiedzi: 12    Wyświetleń: 2544
  • Atmega16A - prawdopodobnie błędna obsługa przerwań

    Timer 1 potrafi działać w trybie CTC tak, że przy zauważeniu równej wartości licznika z rejestrem OCRA może sam zmienić ci stan jednej końcówki procka zwanej OCR na przeciwny. Włącz sobie taki tryb - to wtedy będzie ci to działać automatycznie - czyli bez procedury obsługi przerwania , w pełni sprzętowo. Aby to zrobić zaprogramuj bit COM1A0 czyli TCCR1A|=(1<<6)...

    Mikrokontrolery AVR   10 Lut 2011 17:19 Odpowiedzi: 25    Wyświetleń: 1596
  • Jak odebrać wiadomość 154 bajtów z @@Ha na ATmega128 w CodeVision?

    Witam! Mam problem z popranym odbiorem danych. Kod wygenerowany przez kreatora jest przedstawiony na listingu. I teraz pytanie. Mam odebrać z odbiornika widomość o długości 154 bajtów. Wiadomość ta przychodzi co 1 sekundę i zaczyna się zawsze czterama takimi samymi znakami : (at)(at)Ha Próbowałem już robić to z pętlą, by odbierać 154 znaki, i potem...

    Mikrokontrolery   03 Mar 2006 15:18 Odpowiedzi: 1    Wyświetleń: 1671
  • ADC w ATmega128 czy poprawnie napisałem obsługę PWM

    Witam Zrobiłem sobie taki PWM w oparciu o ADC [syntax=c] #include <avr/io.h> #include <util/delay.h> //definicja ADCIN (wejście ADC) #define ADCIN PF0 int main(int argc, char **argv) { int i=0; DDRB = 0b11111111; PORTB = 0b11111111; DDRF = 0b11111111; DDRF &=~(1<<ADCIN); /* TCCR0 |= (1<<WGM01); // Inicjalizacja PWM TCCR0...

    Mikrokontrolery AVR   15 Kwi 2015 08:43 Odpowiedzi: 8    Wyświetleń: 1050
  • serwo 9G i atmega16a - dziwna reakcja po zmianie kodu

    zrobiłem test z pętlą, w której program zwiększa wypełnienie o 1 mikrosekundę powtarzając od wartości 700 do 2200 mikrosekund. Wszystko działa płynnie i ładnie do 765, po tej wartości nagle serwo wykona ogromny skok i idzie znów dalej płynnie (jakby nie było zakresu ustawienia 765-1500). Akurat wczoraj też odnalazłem przykład kodu z wewnętrznym oscylatorem...

    Mikrokontrolery   21 Lut 2013 12:16 Odpowiedzi: 4    Wyświetleń: 1065
  • Przerwania w ATmega168 - Prośba o sprawdzenie programu i wytknięcie błędów.

    Witam serdecznie! Chciałabym na wstępnie nadmienić,że dopiero zaczynam przygodę z elektroniką. W związku z tym z góry proszę o wybaczenie, jeśli mój kod to masa banialuków. Próbuję zaprogramować uC ATmega168. Chciałabym nauczyć się poprawnej obsługi timerów. W związku z tym próbowałam napisać program dzięki, któremu dioda migałaby dokładnie co 1s. Korzystam...

    Mikrokontrolery AVR   05 Lip 2013 12:17 Odpowiedzi: 8    Wyświetleń: 1725
  • [atmega8] [ATmega8] [C] Przerwania INT0 i INT1 nie zwiększają zmiennej pozycja

    Witam kolegów, sprawdzałem na różne sposoby, int0 ma mi dodac do pozycja++; ale nie dodaje... prosze o oswiecenie ;) /* układ ATmega 1MHz */ /* servo by dex */ #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> unsigned int roznicapozycji; unsigned int wynik; unsigned int dolnyzakres; unsigned...

    Mikrokontrolery AVR   27 Sty 2011 11:45 Odpowiedzi: 3    Wyświetleń: 4513
  • Atmega8 - Przerwania,tryb CTC nie działa tak jak trzeba

    Co robię źle Noty katalogowe czytasz po łebkach, a zwłaszcza fragmenty dotyczące rejestrów. - W TCCR2 nie ma bitów WGM12/CS02/CS00. - W Timer1 oba rejestry TCCR1A/TCCR1B należy konfigurować no i w CTC tylko OCR1A ma znaczenie.

    Mikrokontrolery AVR   28 Sie 2012 09:45 Odpowiedzi: 8    Wyświetleń: 2250
  • Problem z uruchomieniem PWM na mikrokontrolerze Atmega128

    Mam problem z uruchomieniem PWM na Atmedze 128. PWM z korekcją fazy i częstotliwośći. Oto kod: DDRB|=(1<<PB5)|(1<<PB6); ICR1=100; OCR1A=25; OCR1B=50; TCCR1A|=(1<<COM1A1)|(1<<COM1... TCCR1B|=(1<<WGM13)|(1<<CS11)... Procesor nie reaguje. Na wyjściu nie ma nic. Proszę o pomoc.

    Mikrokontrolery   03 Kwi 2007 20:53 Odpowiedzi: 6    Wyświetleń: 1268
  • Konwersja programu z Atmega16 >> Atmega8. Nadajnik

    Witam. Pewnie zabrzmi to głupio aczkolwiek lubię się upewnić czy pewne rzeczy robię dobrze czy też źle. Jako iż nie dysponuję w tym momencie pod ręką programatorem to nawet nie mogę sprawdzić czy dobrze piszę czy nie. Rozchodzi się o zmianę programu napisanego na Atmegę16 tak aby pasował do Atmegi8. Jest to nadajnik podczerwieni o określonej częstotliwości...

    Mikrokontrolery   19 Wrz 2007 12:06 Odpowiedzi: 2    Wyświetleń: 1659
  • [Atmega8] - Timer1 CTC, dioda miga co 10s zamiast 5s, 8MHz, preskaler 256

    Bo WGM12 jest w TCCR1B a nie w TCCR1A. W tym momencie Twój licznik pracuje w trybie Normal i liczy do 65536 i raz na taki cykl ustawia flagę od porównania czyli co 2,09 sekundy.

    Mikrokontrolery AVR   24 Lis 2013 15:40 Odpowiedzi: 3    Wyświetleń: 1170
  • ATmega168 - Prędkość taktowania 8 razy mniejsza niż oczekiwana

    Witam, Będę naprawdę bardzo wdzięczny za pomoc... Moja ATmega168 pracuje z dokładnie 8 razy mniejszą częstotliwością, niż powinna. Kod: [syntax=c]int main() { DDRD = 0xFF; PORTD = 0x01; DDRB = 0xFF; TCCR1A = (1<<COM1A1) | (1<<WGM11); TCCR1B = (1<<WGM13) | (1<<WGM12) | (1<<CS11) | (1<<CS10); ICR1 = 31250; OCR1A = 15625;...

    Mikrokontrolery AVR   19 Sie 2015 21:23 Odpowiedzi: 3    Wyświetleń: 588
  • ATmega168: Przerwanie TIMER1_COMPA_vect nie działa, co sprawdzić?

    Czesc, Mam problem z wywołaniem przerwania od comparacji timera w ATmedze 168. Przerwanie jest zglaszane gdyz testuje flage w rejestrze TIFR1, jednak pomimo tego nie jest wykonywane. Ustawialem juz chyba wszystkie handlary ale nie ma efektu. Z gory dzieki za pomoc. Ponizej przedstawiam wazniejsze czesci programu. ISR(TIMER1_COMPA_vect) { TRIAK1_ON;...

    Mikrokontrolery   21 Lis 2007 23:22 Odpowiedzi: 10    Wyświetleń: 1860
  • [Atmega162][Bascom] - Sterowanie regulatorami ESC fast PWM

    Witam, jestem w trakcie tworzenia sterownika do quadrocoptera, do którego podłączyłem regulatory ESC firmy DYS zaprojektowane do Fast PWM Potrzebuję do ich sterowania precyzji 16 bitów PWM, aby mieć pełną kontrolę nad mocą silników całej machiny. W bascomie ustawiam to tak: [syntax=basic4gl]$regfile = "m162def.dat" $crystal = 16000000 (...) Enable Interrupts...

    Robotyka Modelarstwo i CNC   04 Gru 2013 17:02 Odpowiedzi: 17    Wyświetleń: 3978
  • Atmega16A/l293D - Kod PWM do sterowania silnikami DC w robocie

    Witam, chciałbym zrobić robocika z silniczkami DC sterowane poprzez PWM. Niestety nie bardzo mam pojęcie jak to przerzucić na kod. Napisałem program, ale nie jestem pewny czy jest poprawny i czy moje myślenie w ogóle jest poprawne. Poniżej zamieszczam kod: [syntax=c] #define F_CPU 1000000L #include <avr/io.h> #define PRZOD 0x02 // (1<<PA1)...

    Mikrokontrolery AVR   10 Sty 2013 09:14 Odpowiedzi: 11    Wyświetleń: 2652
  • [ATMEGA88] ATMEGA88 - Timer2 PWM na PB3 nie działa, Timer1 działa poprawnie

    Problem rozwiązany. PWM'y reagują prawidłowo na zadawane wartości. Dla potomnych zamieszczam działający kod. Dziękuje wszystkim za pomoc. [syntax=c]/* Wykorzystanie sprzętowego PWM AVR ATMEGA 88 (1MHz) */ #include <avr/io.h> #include <util/delay.h> int main(void) { // Konfiguracja portów we/wy DDRB = (1<<PB1)|(1<<PB2)|(1<<...

    Mikrokontrolery AVR   22 Paź 2012 14:58 Odpowiedzi: 7    Wyświetleń: 2658
  • ATmega8 PWM – konfiguracja Timer1 8-bit, ustawienia rejestrów nie działa

    Tu masz dzilajacy kod;) fast PWM na timerze1 rozdzielczosc 8 bit. .include "m8def.inc" .org 0x00 rjmp reset RESET: ldi R16,low(RAMEND) out SPL,R16 ldi R16,high(RAMEND) out SPH, R16 ldi r16,1<<WGM10|1<<COM1A1 out TCCR1A,r16 ldi r16,1<<WGM12|1<<CS10 out TCCR1B,r16 ldi r16,122 out OCR1AL,r16 ldi r16,0xFF...

    Mikrokontrolery   15 Maj 2007 23:55 Odpowiedzi: 11    Wyświetleń: 1994
  • ATmega128 Timer3 PWM w C – konfiguracja rejestrów TCCR3A/B, brak sygnału PWM

    Witam Jestem tu pierwszy raz, więc się przedstawię Mam na imię Michał jestem z Gdańska dopiero zaczynam właściwie przygodę z programowaniem uC aktualnie mam ATmega128 Programuje w języku C Mam taki problem z ustawieniem PWM dla Timera 3 według Datasheet ze stron 132-136 powinienem ustawić WGM32 oraz WGM30 COMnA1/COMnB1/COMnC1 oraz CS31 znajduja sie...

    Mikrokontrolery AVR   31 Mar 2015 08:05 Odpowiedzi: 25    Wyświetleń: 1467
  • [avr-gcc] Jak ustawić PWM w Atmega8 dla serwomechanizmu z impulsem 1-2ms co 20ms?

    Witam, Próbuję ustawić PWM w Atmega 8. Potrzebuję impulsy co 20ms o długości od 1 do 2ms, sterujące serwomechanizmem. Próbowałem ustawić tak: #include <avr/io.h> #include <avr/interrupt.h> int main( void ) { DDRD = 0xFF; PORTD = 0xFF; DDRB = 0xFF; TCCR1A = ( 1 << COM1A1 ) | ( 1 << WGM11 ); TCCR1B...

    Mikrokontrolery   25 Maj 2007 15:16 Odpowiedzi: 18    Wyświetleń: 3660
  • ATMega128 ADC – jak poprawnie skonfigurować i uruchomić przetwornik analogowy?

    OK teraz mi na początku programu diody nie świecą i po przyciśnięciu gasi diode LED0. Więc jest ok :) Dzięki bardzo a teraz kolejny problem mam jakbym chciał za pomocą potencjometru pokazywać na tej diodzie wartość napięcia ale taką jaką ustawie na potencjometrze i to w każdej chwili czyli taki PWM za pomocą ADC i potencjometru to jakby to miało wyglądać...

    Mikrokontrolery AVR   15 Kwi 2015 07:25 Odpowiedzi: 21    Wyświetleń: 1593
  • ATMEGA168 - Freemodbus v1.5: Problem z komunikacją Modbus RTU przez RS485

    Witam, od paru dni walczę z postawieniem komunikacji po modbusie RTU, przez RS485 przy pomocy biblioteki freemodbus v1.5. Po wielu próbach i przeglądaniu forum w poszukiwaniu informacji udało mi się poprawnie skompilować i wgrać program, jednak przy próbie skomunikowania się z atmegą (odczytania rejestru o adresie 1000 lub 1001) albo nie odpowiada wogóle...

    Mikrokontrolery AVR   01 Kwi 2013 18:40 Odpowiedzi: 4    Wyświetleń: 2484
  • [ATmega162][WinAVR] Timer i odbieranie danych po SPI

    Witam, buduję sobie układzik, mający sterować diodą RGB (za pomocą PWM) na podstawie danych odebranych przez interfejs SPI (mikrokontroler działa jako SPI Slave). Napisałem program, w którym w nieskończonej pętli odbierane są 3 bajty, a w przerwaniu timera ustawiane jest odpowiednie wypełnienie dla diod. Jednak efekty działania programu są jakieś bezsensowne....

    Mikrokontrolery AVR   16 Cze 2008 23:47 Odpowiedzi: 2    Wyświetleń: 2355
  • Atmega162 i DS18B20 - problem z wyświetlaniem na wspólnej katodzie

    Witam, złożyłem płytkę, napisałem kod i coś nie działa, narazie podam kod bo płytka śmiga byłbym wdzięczny za sugestie co jest nie tak że to nie chce działać, kod zbudowany po części w CodevisionAVR. Wyświetlacz jest na wspólnej Katodzie stąd mój wniosek że aby zaświecić jakiś segment muszę wysłać 0 na pin, a aby go zgasić 1. Jeżeli źle myślę to poprawcie...

    Mikrokontrolery AVR   26 Maj 2009 23:05 Odpowiedzi: 1    Wyświetleń: 1340