(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...
w makefile definiujesz swoj 'nowy' tym procka, np ATMEGA8_EXT w folderze C:\WinAVR\avr\include\avr jest plik który zawsze jest dołączany gdy sie pisze program czyli "io.h" który jest odpowiedzialny za rozpoznanie typu procka i podłączenie jego biblioteki. dodaj linijke np.: #elif defined (__AVR_ATmega8_EXT__) # include <avr/iom8_ext.h>...
http://obrazki.elektroda.pl/9209500600_1... O tym, że większość padów do PEGASUSa często ulega uszkodzeniu, nie trzeba nikogo informować. I nie chodzi tu o uszkodzenia kabla czy też wtyczki, ale układu scalonego będącego w padzie. Zwykle uszkodzenie objawia się: * całkowitym brakiem reakcji na wciśnięcia klawiszy, * niedziałaniem niektórych...
Witam, bardzo proszę o pomoc. Zrobiłem układ na Atmega32 z podłączonymi diodami do całego PortuA, oraz do PortuB Pin2 (PB2) dekoder podczerwieni TSOP31236 (testowałem też na TSOP31238). Wykorzystać chciałem bibliotekę IRMP https://obrazki.elektroda.pl/6945425800_... a w załączniku spakowany cały projekt z plikami biblioteki irmp.
Dzień dobry. Usiłuję okiełznać przerwanie INT1 w AtMega 644P. Większość przykładów jest dla prostszych atmeg i stąd wynika mój problem. Po uruchomieniu na wyświetlaczu stale widnieje "interrupt" - czyli przerwanie jest stale włączone. Port przerwania INT1 - PA1 jest podłączony do przycisku zwierającego do masy. Program nie wchodzi do pętli głównej,...
Trzeba to sprawdzić w dokumentacji: http://www.atmel.com/dyn/resources/prod_... Na pierwszej stronie: Special Microcontroller Features – Power-on Reset and Programmable Brown-out Detection – Internal Calibrated RC Oscillator – External and Internal Interrupt Sources To tylko przykład - karta katalogowa atmega8.
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...
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...
W takim razie: w jak sposób i w którym miejscu następuje podłączenie głównego pliku irmp.c z poziomu irmp.h? W źródłach IRMP są przykłady jak używać z konkretną rodziną procków. irmp_get_data Powyższy plik mógłby być po prostu bazą dla twoich funkcji. Najważniejsze oczywiście jest to, że irmp.c musi być poddane kompilacji a potem linkowaniu. W tej...
gdzie w nocie katalogowej można znaleźć informacje na temat priorytetów wykonywania przerwań, jeżeli wystąpią w tym samym czasie. The lower the address the higher is the priority level. RESET has the highest priority, and next is INT0 – the External Interrupt Request 0. The Interrupt Vectors can be moved to the start of the Boot Flash section...
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 ponownie: Znalazłem w sieci taki link http://www.elenafrancesco.org/old/arduin... Projekt ten wydaje mi się bardzo prosty. Kod który tam podali to: [syntax=c] // #include <avr/delay.h> #include <avr/sleep.h> char tileset[]={ // 48 Zero 0, 0b01110000, 0b10001000, 0b10011000, 0b10101000, 0b11001000, 0b10001000, 0b01110000, //49...
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, Ostatnio próbuję do swojej pracy magisterskiej zrobić komunikację bezprzewodową za pomocą 2 modułów nRF24L01+. Korzystam z tego kursu: http://gizmosnack.blogspot.se/2013/04/tu... Sprawdziłem działanie komunikacji uC z modułem nRF za pomocą SPI przy użyciu AVR Dragona. Działa bez problemu, wpisuje testową wartość do rejestru...
Witam , mam nadzieję iż nie zanudziłem bez reszty.. W zestawieniu z moimi "dokonaniami asm." kolega michalko12, jest najbliższy temu co ja kiedyś robiłem . Oto wersja asm z przełącznikiem kompilacji aby kompilować jako samodzielny plik - kto chce ->ten może :D ( ta wersja to 16-timerów, 16-nasto bitowych, każdy cztery tryby konfiguracji, oczywiście...
.... W pętli głównej sprawdzam na okrągło bit 0 rejestru 0 układu ( sprawdzam flagę alarmu timera). .... "Additionally, a timer alarm can be programmed by setting the timer alarm enable (bit6 of the alarm control register). When the value of the timer equals a pre-programmed value in the alarm timer register (location0F), the alarm flag is set ( bit1...
Zmienne static są inicjowane przypisaną wartością tylko raz, na początku programu. Kolejne wejście do procedury obsługi przerwania nie powoduje ponownego przypisania im wartości; mają wartość taką, jak po zakończeniu poprzedniej obsługi przerwania.
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...
Witaj, No to na zachętę przerwania od przycisku: http://www.protostack.com/blog/2010/09/e...
W nocie wyraźnie napisali, że zapis bitu do EIFR kasuje flagę. Kasowane jest także w chwili wejścia w przerwanie. Kasowania EIFR przez zapis jedynki używałem gdy stan tej linii zmieniał się w czasie obsługi przerwania a nie chciałem aby było wywoływane ponownie. Zmusiłeś mnie do wysiłku i w nocie znalazłem to: " When an INT2:0 bit is written to one...
Dzień dobry Od dwóch dni walczę z obsługą TIMERA1 na Atmega2560 w przerwaniu external INT0. Na wejściu INT0 mierzę krótkie pakiety danych, cały jeden pakiet ma ok 8ms, gdzie najkrótszy bit ma ok. 40us Timer1 mam ustawiony na preskaler 8 (2Mhz), wejście INT0 mam ustawione na zbocze "Any" liczenie zaczynam od TIMERA1 = 0 W przerwaniu INT0 pobieram aktualną...
z tego co widziałem to nie konfigurujesz odpowiednich rejestrów odpowiedzialnych za zewnętrzna przerwania. zobacz do noty katalogowej musisz skonfigurować rejestry: External Interrupt Control Register A – EICRA External Interrupt Control Register B – EICRB External Interrupt Mask Register – EIMSK External Interrupt Flag Register –...
Witam, czytając książkę A. Pawluczuka natknąłem się na inicjację wektorów przerwań. Jak wiadomo w książce jest wykorzystywany µC ATmega8515 (niestety ja korzystam z ATmegi32). Przykładowa tablica tutaj: .orgINT0addr ;External Interrupt0 Vector Address reti ; ;---------------------------------------... .orgINT1addr...
A w pliku "m8def.inc" stoi: .equINT0addr=$001; External Interrupt0 Vector Address .equINT1addr=$002; External Interrupt1 Vector Address .equOC2addr =$003; Output Compare2 Interrupt Vector Address .equOVF2addr=$004; Overflow2 Interrupt Vector Address .equICP1addr=$005; Input Capture1 Interrupt Vector Address .equOC1Aaddr=$006; Output Compare1A Interrupt...
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...
Witam Mam płytkę z Atmega644P na której mam złącze SD.Gdy karta jest włożona to całkowity pobór prąd wynosi 220 mA, gdy kartę wyciągnę to spada do 140 mA. Dodatkowo Atmega się grzeje, gdy karta jest włożona, gdy ją wyciągnę to już nie. Karta jest zapisywana poprawnie. Inicjuje ją kodem jak poniżej: Schemat poprawiony Może jest tam błąd ? http://obrazki.elektroda.pl/8641795700_1...
dobra mam, rozumiem już wszystko, chociaż te diody dziwnie się zachowują, w pierwszym cyklu pali się pierwsza, następnie podczas świecenia pierwszej zapala się na sekundę trzecia, potem trzecia gaśnie i pierwsza pali się przez sekundę, gaśnie, zapala się druga, gaśnie, zapala się trzecia, potem normalnie pierwsza, druga trzecia zapalają się i gasną...
Witam szanownych użytkowników, ............. Dodam jeszcze moje spostrzeżenie. W dokumentacji mikrokontrolera ATmega32 było, że należy ustawić piny INT0, INT1, INT2 jako wyjścia. Proszę o rady. Prawdopdobnie nie zrozumiałeś DS, albo nie doczytałeś do końca paragrafu. Zdaje się że twoje referencje odnoszą się do fragmentu DS poniżej: " The External...
To ześmy sie zgrali... Fusebit Extended P ustawiony na "1:Atmega128 Mode" Oki oki sorki, ale ja to tak bez nerwów :D . Czasami udaje mi się samemu rozwiązać problem zanim na forum ktoś odpowie, albo tematy pozostają bez echa, ajk np programowy SPI i AD7843. Naprawdę port zmienia stan, jak potraktuje się go normalnie jako wyjście, ale jako przerwanie...
Nie miałem za bardzo czasu ale wracam do nierozwiązanego problemu. http://obrazki.elektroda.pl/7699775600_1... http://obrazki.elektroda.pl/3826926900_1... Tak wyglądają screeny po wywołaniu programu CRCGEN. Pliki wgrane programatorem działają poprawnie a przez bootloader tylko ten krótki (choć po przemieleniu ma także...
Z kilku tematów z tej strony spróbowałem poskładać jeden program do zapisu i odczytu zmiennych z sd.Program wyszedł mi następujący: http://obrazki.elektroda.pl/7800048900_1... I niemam pewności co do pliku config_AVR-DOS ponieważ skopiowałem go w całości z tej strony[url=http://members.aon.at/voegel/... Karta sformatowana była na fat16...
#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)...
Męczę się z tym już chyba z tydzień i nie mogę dojść co jest nie tak, może za długo gapię się w ten kod :-/ Mam urządzenie, które komunikuje się z atmegą, sygnały CLK i DATA podłączam sobie do wejść INT0 i INT1. W sumie to wymagane jest CLK <-> INT1, reszta to zaszłość ... Wprowadzam atmegę w tryb powerdown i czasami nie chce się ona wybudzić....
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 =="...
Witam Mimo, że większość proponowanych tutaj rozwiązań podłączenia RFM12 do Atmegi wykorzystuje SPI programowe, ja podłączyłem tradycyjnie, przez SPI sprzętowe - mimo, że nie miałem problemów z wgrywaniem kodu do Atmegi spiętej z RFM12, to uruchomienie ich razem jest problematyczne ( każde osobno działa bez problemu ) [syntax=basic4gl] $include "Config_AVR-DOS.BAS"...
Witam, Mam polutowaną płytkę wg powyższych wskazówek, program jak wyżej. Procesor ATMega 644, kwarc 16MHz, karta SD 256MB (lub MMC32MB) podłączona (wejścia) poprzez dzielnik 2k/3.9k zasilana napięciem 3.3V. Prosiłbym o podpowiedź, jaka może być przyczyna: Ustawienia: Config Pinb.4 = Output Mmc_cs Alias Portb.4 Set Mmc_cs Config Pinb.4 = Output Spi_ss...
Witam w Nowym Roku Chciałem zapytać, czy ma znaczenie, do którego pinu kontrolera jest podpięte wejście sterujące wyborem karty SD ? Korzystam z kodu podanego w helpie - zamieniłem tylko PortB.4 na PortD.6 i cały czas mam aktywną kartę SD, co oczywiście skutkuje zablokowanie kontrolera. Jako, że nie działa mi to razem z innymi funkcjami, więc próbuję...
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 /***************************************...
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...
Prosty program na AVRStudio : #include <m16def.inc> ; Prohibits use of non-implemented instructions (ATmega16) .dseg .org SRAM_START .cseg ;—————R...
Poniżej zamieszczam wersje źródłowe plików kontrolera wykonanego według dokumentacji Atmel'a AVR444: Sensorless control of 3-phase brushless DC motors wykonanego na kontrolerze ATMega 48/88/168. Autor bardzo dokładnie udokumentował swoje dzieło. Funkcje static unsigned int CalculateCurrent () Calculates current consumption. static unsigned long CalculateSpeed...
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...
Witam Potrzebuję pomocy w przeportowaniu kodu źródłowego z BASCOM na C (Atmel Studio 6) - mikrokontroler ATMEGA128 Na początek fragment takiego kodu: [syntax=basic4gl] Config Adc = Single , Prescaler = Auto , Reference = Avcc Config Timer0 = Timer , Prescale = 1024 Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Disconnect , Compare B Pwm = Clear Down...
Oj przeczuwam kłopoty, piszesz że przesiadasz się z małego AtMega na AtMega128, a tam niektóe rejestry mają zmienione nazwy lub wręcz niektóre bity są w innych/nowych rejestrach. dla AtMega8..32 działa coś takiego #define GLOBAL_INT_ENA()asm("se... #define GLOBAL_INT_DIS()asm("cl... #define INT0_ENA()...
Build started 10.10.2010 at 13:19:40 avr-gcc.exe -mmcu=atmega32 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT main.o -MF dep/main.o.d -c ../main.c In file included from c:/avr/winavr/lib/gcc/../../avr/include/... from c:/avr/winavr/lib/gcc/../../avr/include/...
Witam wszystkich, robię mały projekt do którego używałem Atmegę8. Zaczyna mi brakować pamięci więc stwierdziłem, że wymienię ją na Atmegę328. Niestety jest trochę zabawy z przerobieniem kodu, po pierwsze w Atmega328 nie można używać PD0 itp, tylko PORTD0. Po drugie timery ustawia się innymi rejestrami. Ogólnie program sobie przerobiłem, niestety została...
Może poza przerwaniem gdzieś jeszcze ledy obsługujesz? trudno wywnioskować. Robiłem wystawianie na port wartości z tablicy na Atmega8 w takiej konfiguracji jak ty masz (zbocze opadające) tyle że na INT0 i chodzi bez problemu. Stany się ustalają takie jak w tablicy są więc pewnie gdzieś poza obsługą przerwania masz błąd. Nie sadze, moj kod jest bardzo...
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...
Witam, jest to mój pierwszy post więc proszę o wyrozumiałość :) Problem jest następujący - chciałem napisać sobie programik mierzący napięcie(potem bedę mierzył poziom napięcia na akumulatorze) więc zaczełem od napisania programu z ADC w trybie FREE RUN, czyli jak raz go uruchomilem to calyc czas wysyłał wyniki konwersji przez rs232, następnie postanowilem,...
Cześć wszystkim ;) Mam ogromną prośbę o pomoc w sprawie otwierania obrazków w formacie *.bgc ktore beda umieszczone na karcie pamięci i atmega ma je otwierać i wyświetlać na kolorowym lcd . Probowałem już kilka różnych sposobów ale za każdym razem obrazek się nie wyswietlał poprawnie . Serdecznie pozdrawiam Bartek Nizej kod programu do obslugi karty...
external interrupt atmega external interrupt atmega interrupt
magnesowa stojan pinnacle dazzle integra brama garażowa
budowa subwoofera budowa subwoofera
Interia CZATeria – jak połączyć się przez VPN? NordVPN, Surfshark, WireGuard, blokady IP 6-pinowy kontroler LED buck 60W 9-11V – AL8807, BP1808, RT8470, SY7208, QX9920