(at)seba_x:A co to za bzdura?:> • Peripheral Features – Two 8-bit Timer/Counters with Separate Prescaler, one Compare Mode – One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode A co do pytania autora, nie, zliczanie umożliwiają tylko dwa pierwsze timery. Trzeciego można używać jako wewnętrznego. Nie tylko...
No dobra, udalo ci sie polechtac moja proznosc wiec moze zrobimy tak. Opisze tutaj przykladowego mekafile-a z nastawieniem na WinAVR, Atmega8 i STK200 tak aby inni tez cos z tego mieli. W zasadzie wszystko jest opisane w angielszczyznie no ale jakby kto nie umial to daje po polsku. # Hey Emacs, this is a -*- makefile -*- #---------------------------------------...
http://obrazki.elektroda.pl/7218266900_1... Chronograf jest urządzeniem służącym do pomiaru prędkości obiektu. W najprostszej formie pomiar polega na wykorzystaniu dwu czujników, które będą „śledzić” obiekt, urządzenia do pomiaru czasu i interfejsu wyświetlającego wynik pomiaru. W niniejszym artykule zostanie przedstawiony...
Wybacz Kolego ale można się załamać - nie znasz podstaw programowania! Weź sobie jakąkolwiek książkę do C i przeczytaj chociaż KILKA PIERWSZYCH ROZDZIAŁÓW... Bardzo uprzejmie proszę. Forum nie jest od nauczania C, nawet na przykładach! Najprostszy program ma postać: #include <stdlib.h> #include <stdio.h> int main(void){ sleep(1);...
Moje problemy odbiegają od poprzedników ale temat zgodny, więc: Mam uP Atmega 8 oraz wyświetlacz zgodny z hd47780 2*16znaków. Gdy wrzucam jeden znak na wyświetlacz przy pomocy kodu niżej wszystko jest ok: while(1) { LCD_CLEAR; LCD_LOCATE(1,0); LCD_WRITE_DATA('d'); } return 0; } Mogę kilka takich znaków wrzucić...
Witam, mam problem z kompilacją programu.(pliki ogolnodostępne dla projektu LED CUBE 4x4x4), :arrow: http://www.instructables.com/id/LED-Cube... Posiadam pliki main.c frames.c effect.c draw.c oraz plik Makefile. Odpalam AVR Studio, ustawiam procesor ATmega 16, ustawiam zegar 14745600 bo taki jest uzyty w programie, laduje wszystkie pliki (procz...
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...
(at)fabjan1994 Na moje oko to proces budowania nie działa popawnie (compilation termiated). Problem tkwi w powłoce sh . Tu masz rozwiązanie problemu: http://www.avrfreaks.net/forum/windows-8... A tutaj Twój makefile po lekkim formatowaniu. Działa bez problemów: [syntax=bash] # Hey Emacs, this is a -*- makefile -*- #---------------------------------------...
I teraz pierwsze pytanie: czy da się zliczać impulsy z zewnątrz używając Timer2? Wtedy bym podpiął do nóżki TOSC. The Oscillator is optimized for use with a 32.768 kHz watch crystal. Applying an external clock to the TOSC1 pin may result in incorrect Timer/Counter2 operation. Jak źle (lub dobrze) jest z tym w praktyce nie wiem. Tylko jeszcze zostaje...
] Gdybym chciał jednak mierzyć załóżmy do 1kHz to wymaga aby zliczać przepełnienia? Dlatego napisałem..."Nie znaczy to jednak..." w złym obliczeniu 1 sek wartość wynosiła 61630, przy prawidłowym obliczeniu wynosi 34 286 uwzględniając czas 1sek, częstotliwość taktowania 8MHz i prescaler 256. Przecież czas (1 sec.) odmierzasz timerem0, który jest 8-bitowy...
mam maly problem.. zdarza sie ze moj układ oparty na ATmega 32 jakby sie zawieszał... wykorzystuje przerwanie zewnetrzne... // External Interrupt(s) initialization // INT0: On // INT0 Mode: Rising Edge // INT1: Off // INT2: Off GICR|=0x40; MCUCR=0x03; MCUCSR=0x00; GIFR=0x40; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x01; a w programie...
Prosty program na AVRStudio : #include <m16def.inc> ; Prohibits use of non-implemented instructions (ATmega16) .dseg .org SRAM_START .cseg ;—————R...
Hej :) Chcę podłączyć 3 czujniki odległości do kanałów ADC (porty PA1, PA2, PA3) i odczytywać z nich pomiary przez cały czas. Ponieważ po przetestowaniu czujników doszłam do wniosku że pewne czynniki wpływają na niestabilność pomiaru, chcę jako ostateczny wynik wziąć średnią arytmetyczną z 8 pomiarów przeprowadzonych w trakcie jednego cyklu pomarowego...
A oto prosta funkcja (kompiluje się w najnowszym AVRStudio) :D : #include <ATmega8535.h> .include "m8535def.inc" ; Prohibits use of non-implemented instructions (ATmega8535) #define XTAL 11059200 #define USART_BAUD 19200 #define _UBBR(_X,_X_BAUD) ((_X/(16*_X_BAUD))-1... #message "_UBBR =="...
#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)...
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...
Witam, pisze program w assemblerze który pozwarciu INT0, będzie wykonywać określoną czynność(łączyć się z innym urządzeniem), Ale narazie utknąłem w martwym punkcie, napisałem program który po zwarciu INT0 wywołuje przerwanie które zapala diodę podpiętą do lini PC0 5 razy i gasi(zapalenie uzyskuje poprzez ustawienie PC0 w stan wysoki). Całość funkcjonuje...
Użyłem kwarcu 32768 Hz, podłączyłem do pinów 6 i 7 portu C. W datasheet doczytałem: For AVR microcontrollers with Timer/Counter Oscillator pins (TOSC1 and TOSC2), the crystal is connected directly between the pins. No external capacitors are needed. The Oscillator is optimized for use with a 32.768 kHz watch crystal. Więc nie dołączyłem żadnych kondensatorów....
Zainstalowałem AVR Studio4 i lecę od początku z google i pdf na temat ASM i AVR Powiedzcie chociaż czy w dobrym kierunku zmierzam? Bo jak w złym to odpuszczam i daje sobie spokój, pobawię się migającymi diodami w Bascomie. Tam gdzie nie ma komentarza to nie wiem co to znaczy i co robi ale było w pdf lub innych opisach, jeżeli ktoś może mi wyjaśnić instrukcje...
Nie możesz tylko używać Timera2 do innych celów, bo właśnie jest on używany przez RC5 Funkcja GETRC5 domyślnie wykorzystuje Timer0 a nie Timer2. Oczywiście można to zmienić w konfiguracji, jednak autor tego nie czyni. Zatem pozostają mi dwie opcje, albo przestać używać timera0 do odliczania 1s odcinków czasu i zaprzęgnąć do tego timer2 (co może nie...
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 /***************************************...
Już działa:) Jeżeli chodzi o same ustawienia i inicjalizację Timera0 oraz przerwań to okazało się tak jak mi się wydawało że wszystko miałem dobrze. Jak zwykle w takich przypadkach błąd okazał się błahy i leżał w zupełnie innym miejscu. Otóż przy definiowaniu wektorów przerwań nie używałem definiowania ".org". Początek mojego programu wyglądał tak:...
Witam! Mam taki dość nietypowy problem. Kontroler ma reagować na jedno z trzech przerwań: TIMERa 0 i dwóch zewnętrznych (czujki ruchu). Te przerwania zewnętrzne zliczają liczbę reakcji czujek, natomiast TIMER 0 ma odmierzać czas i dzięki niemu co kilka sekund mają być wyświetlane statystyki. Bez TIMERa 0 wszystko działa ok, ale statystyki lecą cały...
Wazne zdanie z manuala: If external pin modes are used for the Timer/Counter1, transitions on the T1 pin will clock the counter even if the pin is configured as an output. This feature allows software control of the counting. tak wiec kierunek portu nie ma znaczenia gdys sygnal jest brany bezposrednio z pinu. Moze zle skonfigurowales przerwania ? Skad...
Witam, mam problem z uC Atmega644, programatorem AVR-Doper (stk 500v2), po ISP. Programator wielokrotnie współpracował z tym uC, co więcej potrafi odczytać flash oraz eeprom, zapisać eeprom, lecz nie potrafi wpisać programu do flash. EDIT: Przetestowałem też Mega16, ten sam problem. EDIT2: Coś mam spierniczoną konfiguracje WinAVR bowiem gdy z Mega16...
Witam. Naszło mnie na zrobienie shift lighta do samochodu (taka lampka, która zapala się po przekroczeniu zadanych obrotów). Na Zmontowanym układzie działały programiki od zapalania diody, naciskania switcha itp. W hardware mam póki co jedną ziodę z rezystorem na pinie PD3 podpiętą do + i na PB0 wejście na impulsy z cewki w ten sposób, że cewka->rezystor...
dobra, obiecany gotowiec i przy okazji manual pt "jak korzystać z manuala". W naszej przeglądarce wpisujemy adres www.google.pl Wpisujemy tam Atmega8, po załadowaniu się strony z rezultatami klikamy w link posiadający w tytule "datasheet" i sprawdzamy czy jest on z atmela. Po pomyślnym otwarciu się datasheetu z indeksu po lewej stronie wybieramy 16-bit...
Spróbuję, jednak w nocie jest dość jasno napisane: For AVR microcontrollers with Timer/Counter Oscillator pins (TOSC1 and TOSC2), the crystal is connected directly between the pins. The Oscillator provides internal capacitors on TOSC1 and TOSC2, thereby removing the need for external capacitors. The internal capacitors have a nominal value of 10 pF....
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...
Strona 29 noty katalogowej ATmega16 ( Timer/Counter Oscillator ) : For AVR microcontrollers with Timer/Counter Oscillator pins (TOSC1 and TOSC2), the crystal is connected directly between the pins. No external capacitors are needed. The Oscillator is optimized for use with a 32.768 kHz watch crystal. Applying an external clock source to TOSC1 is not...
codevision avr atmega 8515 nadawanie i odbior /***************************************... This program was produced by the CodeWizardAVR V1.23.8a Professional Automatic Program Generator © Copyright 1998-2003 HP InfoTech s.r.l. http://www.hpinfotech.ro e-mail:office(at)hpinfotech.ro Project : Version : Date : 2006-07-02 Author : j Company :...
Witam wszystkich czy ktoś mógłby podpowiedzieć jak uzyskać odliczanie czasu w sek na atmedze? w programie CodevisionAVR uzyskuje taki kod w którym niby jest już jakiś wietrzny timer ustawiam go nawet na 8MHz ale nie wiem jak wyprowadzić to odliczanie sekund np na lcd wystarczy żeby ktoś podpowiedział to a dalsza cześć czyli odliczanie minut i godzin...
Troche długo mnie nie było ale miałem parę spraw na głowie. Co do tego Timera to ostatnio znów walczyłem i konfiguracja jest w porządku. Wina leży najprawdopodobniej gdzieś na płytce (bądź w procesorze), bo gdy podpiąłem kwarc do innej płytki z atmega128 to Timer działał bez zarzutu. Tak więc temat zamknięty. Dzięki wszystkim za pomoc! Pozdrawiam! P.S....
Witam! Polecam ATmega8: Features: • High-performance, Low-power AVR® 8-bit Microcontroller • Advanced RISC Architecture – 130 Powerful Instructions – Most Single-clock Cycle Execution – 32 x 8 General Purpose Working Registers – Fully Static Operation – Up to 16 MIPS Throughput at 16 MHz – On-chip...
Pozwoliłem sobie uczytelnić kod dla pokazania jak można sobie ułatwić pisanie kodu - zmieniamy w jednym miejscu, a zmiany są uwzględniane w całym kodzie... Daje to bezbolesną możliwość dowolnego przepięcia linii sygnałowych pod inne wyprowadzenia µC przy minimalnych zmianach w kodzie (podobnie jak w językach wyższego poziomu). #include <m16def.inc>...
[syntax=avrasm]# Hey Emacs, this is a -*- makefile -*- #---------------------------------------... # WinAVR Makefile Template written by Eric B. Weddington, Jörg Wunsch, et al. # # Released to the Public Domain # # Additional material for this makefile was written by: # Peter Fleury # Tim Henigan # Colin O'Flynn # Reiner...
#include <inttypes.h> #include <avr/io.h> #include <stdio.h> #include <stdlib.h> #include <avr/iom32.h> #include <avr/interrupt.h> #include <string.h> #include <avr/pgmspace.h> #include <util/delay.h> #include "HD44780.h" //definicje zmiennych volatile int ms, s, m, h, znacznik; char buf[256];...
Wcześniej sprawdzałem czy wchodzi do przerwania z pustą główną pętlą w pragramie - włączałem buzzerka w przerwaniu tylko. Teraz, powinno być tak, że po wejściu do przerwania (w moim przypadku przy wciśniętym klawiszu) buzzerek powinien dzialac, ale i po wyjściu nadal brzęczeć - a tu nic. Po wyjściu z procedury przerwania milknie, czyli gubi gdzieś ustawienie...
Str.129: The Oscillator is optimized for use with a 32.768 kHz watch crystal. Applying an external clock to the TOSC1 pin may result in incorrect Timer/Counter2 operation. The CPU main clock frequency must be more than four times the Oscillator frequency. Czytałem to, jak również: For AVR microcontrollers with Timer/Counter Oscillator pins (TOSC1 and...
Witam, W dokumentacji dowolnego mikrokontrolera ATmega z łatwością można odnaleźć tablicę z wektorami przerwań, np. taką: 1 $0000 RESET 2 $0002 INT0 External Interrupt Request 0 3 $0004 INT1 External Interrupt Request 1 4 $0006 INT2 External Interrupt Request 2 5 $0008 INT3 External Interrupt Request 3 6 $000A INT4 External Interrupt Request 4 7 $000C...
Ten kod jest napisany dla ATmega103 ( niedostępny już w handlu) a jego następca to ATmega128. Poniżej poprawki dla WinAVR ( ten kod był dla kompilatora IAR): 1. #include <iom103.h> #include <ina90.h> ma być #include <avr/io.h> #include <avr/signal.h> 2. type def struct{ ma być typedef struct{ 3. interrupt /**** A V R A P P L...
Na początku sprawdziłem, jest JMP 3-cyklowy, zapomniałem o tym wspomnieć, myśląc że komentarze w kodzie o tym mówią. Jest nawet dodatkowy NOP, aby przerwanie miało dokładnie 12 cykli, jakoś na parzystych łatwiej mi się dokonuje obliczenia. Może innym licznikiem sprawdzę ile tak naprawdę cały ten kod konsumuje cykli... Update: Wyszło na to, że cały ten...
Ok dzieki Piotrek. Przypomniales mi o parzystosci juz wszystko gra. male przeoczenie.. Ja stosuje metode uzupelnienia "white char" czyli spacja:P =>> Dar.El to jest moj poczatek :) (az taki laik nie jestem :P) .nolist .include "m8def.inc" .list ;***************************************... ;* DEFINICJE ZWIAZANE Z REJESTRAMI * ;***************************************...
Malutki dopisek - okazalo sie, ze to znany blad Atmegi8 - nie ma wlaczonych wewnetrznych kondensatorow. czyli intuicyjne rozwiazanie z kondensatorami zewnetrznymi bylo jak najbardziej poprawne - a teraz juz wiadomo jaka jest przyczyna :). No i warto zerknac czasem do erraty w dokumentacji :) CKOPT Does not Enable Internal Capacitors on XTALn/TOSCn Pins...
nic to nie daje. Juz nie wiem co mam robić próbowałem jeszcze użyć LED - do portd.7 - w sygnalizacji przepełnienia T2. Przesyłam calutki kod programu: #include <mega8.h> #include <delay.h> int licz = 4; // Timer 2 overflow interrupt service routine interrupt [TIM2_OVF] void timer2_ovf_isr(void) { licz++; } // Declare...
Witam. Robię miernik częstotliwości na ATmega8 z wyświetlaniem na LCD HD44780 w trybie 4-bit (mam zrobiony prototyp). Opanowałem już wyświetlanie (z obsługą BF), ale teraz przystawiło mnie z pomiarem liczby impulsów zliczanych na wejściu T1 mikrokontrolera. Wynik co prawda jest wyświetlany, lecz jest on niestabilny w taki sposób, że skaczą 2 ostatnie...
Obsługa przerwania powinna być jak najkrótsza, jeśli zależy tobie na pozbyciu się zawieszeń... W ISR(INT0_vect) (nie SIGNAL(INT0_vect)) wystarczy licznik przerwań, a wręcz możesz to podpiąć pod wolny timer/counter ustawiając prescaler na wejście zewnętrzne liczenia - "External clock source on TX pin. ". http://www.nongnu.org/avr-libc/user-manu...
Witam. Chciałbym zrealizować pomiar częstotliwości impulsów podawanych na któryś pin Atmegi (zakres częstotliwość od 1 do max 100Hz). Narazie testuje podawanie impulsów na wejście T0 i zliczam je Timerem0 w trybie counter. Napisałem taki prymitywny programik, ale coś mi się wydaje że można zrobić to lepiej, więc proszę o jakieś sugestie lub poprawki....
Witam wszystkich, żeby nie tworzyć nowego tematu piszę tutaj. Mam problem z uruchomieniem przykładowego programu biblioteki ELM Chana na avr. Próbuję stworzyć nowy projekt w WinAVR, ale kompilator ciągle zwraca błąd: no rules to make 'program'... Jestem początkujący w C więc to jest pewnie główny powód, proszę zatem o wyrozumiałość. Pozdrawiam.......
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>...
counter atmega atmega counter external interrupt atmega
sprzedam instalacje komunikacja bluetooth słuchawki liniowość czujnika
samostartujący linux przekładka mercedes
Quad 125 wchodzi na maksymalne obroty po odpaleniu - jak ustawić gaźnik? Sprzeciw sąsiada wobec mojej farmy fotowoltaicznej