(at)niveasoft To nie ten przypadek. Wyjaśnienie tej zagadki jest raczej proste - flaga przerwania jest kasowana, ale zwieranie mechaniczne powoduje bouncing, więc zgłaszanych jest więcej niż jedno przerwanie. Samo wyłączenie przerwania nie wpływa na odpowiednią flagę, więc przy kolejnym drganiu jest ona ustawiana, ale przerwanie nie jest obsługiwane...
cli i sei zmienią globalną flagę przerwań, blokując lub odblokowując wszystkie. Na to nakładają się priorytety przerwań kontrolera przewań i na końcu masz przerwania z danego modułu. Kolejne możesz zablokować tak jak masz, wpisując blokadę do PINCTRL lub w rejestrze kontrolnym przerwań dla danego peryferium (w tym przypadku PORT). Normalnie RETI na...
Dorób obsługę przerwania (tak jak masz dla timera) albo go nie włączaj.
Po pierwsze enkoder możesz obsługiwać sprzętowo na XMEGA - w tym celu konfigurujesz event system na QDEC, a dowolny timer będzie ci zliczał impulsy i pracował jako enkoder. Co do transmisji USART - można paczki odbierać przez DMA, co jest wygodne, można to zrobić w oparciu o przerwania. W tym celu odblokowujesz przerwanie RXComplete sygnalizujące gotowy...
A propos przerwań - widzę, że masz tam jakieś przerwanie od pinu (funkcja Initialize_INTERRUPT_For_nRF) - pamiętaj, że w XMEGA kontroler przerwań jest wielopoziomowy, tak więc, oprócz odblokowania danego przerwania musisz określić jego poziom (LO, MED, HI), a także odblokować przerwania danego poziomu w kontrolerze przerwań oraz globalną flagę zezwolenia...
Można pewnie ustawić jakiś Event, ale najprościej jest ustawić na pinach enkodera PinChangeInterrupt. Ten na filmie działa w oparciu o PCINT na obydwu pinach. To zwykła Mega644P więc musi liczyć na piechotę, ale w Xmega czytałbym własnie to co Ty teraz. Kolego Dasej ten kod reagujący na tylko jedną zmianę jest dobry do kręcenia się po jakimś menu. Nie...
Żeby wywołane zostało przerwanie musisz jeszcze odblokować globalną flagę zezwolenia na przerwanie (sei()) i skonfigurować kontroler przerwań - odblokować przerwanie o najwyższym priorytecie.
Nie odblokowałeś w kontrolerze przerwań przerwań o najwyższym priorytecie, które generuje ADC. W XMEGA układ peryferyjny generuje przerwania o trzech różnych poziomach, które trafiają do kontrolera przerwań, który je przekazuje dalej jeśli dany poziom jest w nim odblokowany i dopiero dalej masz flagę I zmienianą przez sei(), i obsługę przez CPU.
Jest jeszcze coś takiego jak kontroler przerwań, więc należałoby włączyć obsługę przerwań dla jednego z poniższych poziomów, które wybrałeś (nie wiem czemu masz zaznaczone dwa poziomy). ADCA_CH0_INTCTRL |= _BV(0);//ADC_CH_INTLVL0_bm; //włączenie przerwania ADCA_CH0_INTCTRL |= _BV(1);//ADC_CH_INTLVL1_bm; //włączenie przerwania Do tego...
Tak, są błędne. ATMega32 dysponuje jednopoziomowym systemem przerwań i aktualnie wykonywana funkcja obsługi przerwania nie może być przerwana. Chyba, że jawnie na to zezwoli odblokowując flagę I rejestru stanu. Z AVR dopiero XMEGA posiadają 3-poziomową obsługę przerwań.
Witam, W przypadku XMEGA32E5 i timerówTC45 znacznik przerwania od Overflow/Underflow nie jest automatycznie kasowany po wejściu do obsługi przerwania. Należy go skasować programowo poprzez wpisanie "1" do bitu OVFIF w rejestrze INTFLAGS w obsłudze przerwania. U Ciebie występuje dokładnie efekt braku kasowania znacznika. Pierwszy okres jest poprawny,...
Samo wejście i wyjście z przerwania nie kasuje sprzętowo flagi w typie Ex. Skasuj flagę przerwania "ręcznie" w przerwaniu i daj znać jak taka akcja się skończyła :D
Każdy klawisz joya masz podłaczony od osobnego portu czy osobnego pinu w jednym porcie? Jeżeli idzie o 32 MHz , spróbuj podkręcić go o ile warunki projektu pozwalają. Nie sprawdziłem zapisu eepromu ale timery, uart działały do 55Mhz (5 x 11.0592 Mhz) przy standardowym zasilaniu 3.3V. Jutro przetestuję eeprom po przetaktowaniu. Wracając do tematu, jeśli...
Jeśli dobrze rozumiem, chcesz by przerwanie pochodzące od komparatora wywołało szybką reakcję ( np. odcięcie zasilania czy ograniczenie prądu do zewnętrznego, sterowanego obwodu ), czy tak ? Więc wybierasz przerwanie zboczem narastającym, w obsłudze przerwania ustawiasz flagę i.. tyle. Resztę realizujesz za pomocą tej flagi. Resetować ta flagę możesz...
(at)Marek_Gorecki Odnoścnie ARM info o czasie reakcji na przerwania znajdziesz tutaj: http://infocenter.arm.com/help/index.jsp... Funkcje: EXTI_GetITStatus EXTI_ClearITPendingBit są specyficzne dla STM32 ponieważ wiele źródeł jest podłączonych do jednego wektora przerwania. Czas reakcji na przerwanie będzie sumą cykli...
Zmienne globalne zajmują...... Pewnie ram dla led jest rezerwowany w chwili uruchomienia biblioteki przez memalloc. Gdybyś sam pisał obsługę led to użyłbyś tablicy o określonym rozmiarze dzięki czemu wiedziałbyś ile ram zajmuje program. Poszukaj jak wyświetlić ilość wolnej pamięci ram w czasie działania programu. Jakiś freemem jest. Trochę oszuka ale...
Jeśli któraś ze zmiennych elapsed_time i/lub current_time jest współdzielona z procedurą obsługi przerwania (jak się można domyślać), to spróbowałbym przed blokiem warunkowym wyłączyć przerwania, a po bloku włączyć:[syntax=c]cli(); if ((ellapsed_time - current_time) > 100) { eeprom_write_byte(20,1); } sei(); // lub w drugim przypadku cli(); long time_diff...
W takim razie: 1. Weź dowolnego procka ze sprzętowym USB. Dla Ciebie chyba każda Xmega poza serią E będzie ok. Nie piszę o ARM czy PIC, ponieważ napisałeś na wstępie AVR. 2. Odpal sobie demo HID z ASF w AS6. 3. Skonfiguruj dowolny licznik do generowania cyklicznych przerwań, np. co 10ms, (albo skorzystaj z przerwania USB_SOF co 1ms), a w przerwaniu...
Użyj ATOMIC_RESTORESTATE a nie ATOMIC_FORCEON. Dzięki temu odtwarzany jest stan znacznika I a nie bezwzględnie ustawiany. A po co? Jeśli w programie p Tak, ale jeśli kiedyś, z jakiegoś powodu, gdzieś wcześniej zablokuje przerwania, to co się stanie po użyciu ATOMIC_FORCEON? Takiego błędu mozna później długo szukać. Owszem, ATOMIC_RESTORESTATE to jeden...
zliczanie impulsów z dwóch enkoderów Jeżeli to są enkodery inkrementalne z sygnałem A, B i ew. Home, zrezygnuj z megi64/128. Xmegi mają wsparcie sprzętowe do obróbki sygnału z takich enkoderów przez użycie liczników w połączeniu z eventami. Na STM32Fxxx zrobisz to łatwiej i być może szybciej korzystając z gotowców. generowanie dwóch przebiegów PWM...
O ile dorze rozumiem idee tego przerwania (nie miałem okazji wykorzystać go w praktyce) to określona zmiana na którymkolwiek pinie z grupy wywołuje przerwanie... i teraz myślałem, żeby za pomocą prostych warunków zliczać, który wywołał i ile w danym czasie. Problem widzę w momencie, gdy przykładowo czujnik A wywoła przerwanie w bardzo krótkim czasie...
http://obrazki.elektroda.pl/6914408400_1... http://obrazki.elektroda.pl/8024236400_1... ATxmegi to łakomy kąsek dla kogoś, kto już poznał "stare" AVRki - zwiększona szybkość (32MHz!), o wiele więcej peryferiów (5 UARTów! 16 kanałów PWM!), modularna budowa i można używać tych samych dobrze znanych narzędzi. Ale potem...
Witam. Mam problem z kodem programu. Do pinu F5 XMegi128A3U mam podpięty przycisk wywołujący przerwanie INT0. O tak: http://obrazki.elektroda.pl/6613783300_1... Kod włączający i konfigurujący przerwanie: http://obrazki.elektroda.pl/8557297900_1... PORT_ISC_LEVEL_gc używam ze względu na to, że domyślnym stanem przycisku...
Witam , Zaczynam z AS6, dotąd używałem 4.18 głownie z asemblerem Pytanie dotyczy możliwego błędu symulacji prostego kodu w AS6, do potrzeb zapytania sprowadzonego do wersji jak niżej : http://obrazki.elektroda.pl/4044092400_1... również wygenerowany kod obsługi jest poprawny http://obrazki.elektroda.pl/7240738500_1...
Witam Utknąłem z moim kodem i plątam sie w koło ciągle, dlatego proszę o pomoc. W podprogramie "przyciski" przerwania od timer0 mam zrealizowany odczyt przycisków i zrobiłem sobie "flagi czasowe" przyciski: 'przerwanie co 26ms . kod sprawdzania przycisków . incr licz if licz=19 then ' flaga co ok 0,5 s flaga_500ms=0 ' w warunkach początkowych flaga_500ms...
Cześć Czy może ktoś mi podpowiedzieć, jak generować przerwanie od zmiany sygnału na lini SS? Obecnie próbuję to zrobić dodając przerwanie na PIN4 portu C [syntax=c] PORTC.INT1MASK=PIN4_bm; PORTC.INTCTRL= PORT_INT1LVL_LO_gc| PORT_ISC_BOTHEDGES_gc; PMIC.CTRL = PMIC_LOLVLEN_bm; [/syntax] oraz przerwanie [syntax=c]ISR(PORTC_INT1_vect) { nr_bajtu=0; }[/syntax]...
Witam. Buduję kolejny oscyloskop, z pewnych względów kodu pokazać nie mogę więc postaram się opisać problem jak najlepiej. Otóż, przy pomiarach bardzo małych sygnałów (o amplitudzie ok 150 mV) zauważam zakłócenia. Sygnał pochodzi z generatora funkcji zaimplementowanego również w tym urządzeniu. No nic dziwnego, zakłócenia jak zakłócenia, sygnał jest...
Próbuję zrozumieć działanie przerwań i coś mi to nie wychodzi, chciałem uzyskać efekt że po naciśnięciu przycisku program który jest w pętli nieskonczonej obsługuje przerywanie ale mi to nie wychodzi, o to fragmenty kodu: #include <avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> ENABLE_INT0_FLAGING; waitms(unsigned...
Witam. Buduję system, w którym potrzebuję zrobić zewnętrzne wyzwalanie pomiaru przez ADC. W uC pracują 2 ADC, zapisem do buforów po 512 próbek zajmuje się DMA. Wszystko śmiga, ale jeśli wyzwalam kolejne bloki (po 512 próbek) w przerwaniu np od ADC (Compare), od komparatora albo np zwykłym przerwaniem zewnętrznym to ewidentnie na wizualizacji próbek...
Witam, Mam taki problem. Próbuje odpalić LCD z kontrolerem ST565 na Xmega32E5. Do tej pory korzystałem z dobrze opisanego większego kolegi (Xmega128A3U). Problem który opisze poniżej nie występuje na na Xmega128A3U używając identycznego kodu. Kod na potrzeby testów wygląda tak: [syntax=c] #include <avr/io.h> #include <util/delay.h> #include...
Witam W projektowanym urządzeniu popełniłem pewien błąd, niestety płytki zostały już wytrawione i polutowane a znalezienie przyczyny nieprawidłowości zajęło mi dość sporo czasu, więc wolałbym uniknąć ponownego składania układu. Mam kilka przycisków połączonych z bramką NAND. Wciśnięcie któregokolwiek generuje na wyjściu bramki stan wysoki, który dalej...
Nie bardzo wiem dlaczego wogóle to nie chce wykonać podprogramu po otrzymaniu na noge ICP1 czyli portb.0 opadajacego zbocza. Nic się nie dzieje, co robię nie tak? Mój program: $regfile = "m8def.DAT" $crystal = 8000000 $baud = 9600 Config Portc = Output Set Portc.2 Reset Portc.1 Reset Portc.0 Config Pinb.0 = Input Config Timer1 = Counter ,...
Witam najpierw kawalek kodu :) TCCR1A=0x00; TCCR1B=0x01; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; TIMSK=0x04; // przerwanie interrupt [TIM1_OVF] void timer1_ovf_isr(void) { // Place your code here lcd_full(); delay_ms(100); lcd_cls(); } wektory...
witam. Mam taki problem ponieważ sygnał który dostaje z akcelerometru muszę scałkować podwójnie i do tego jest mi potrzebny przedział miedzy próbkami i mam problem z wyznaczeniem tego czasu. żeby mieć stałe odstępy próbkowania wymyśliłem żeby próbkowanie odbywało się w przerwaniu i teraz problem polega na tym ze w trakcie wykonywania przerwania od timera2...
Witam, napisałem prosty program którego zadaniem miało być co 0,5 sekundy posłać 1 znak za pomocą bluetootha BTM-222. Dla testów w procedurze przerwania napisałem miganie diodą. Dla tej procedury wszystko wykonuje się poprawnie: [syntax=c] ISR(TCC1_OVF_vect) { PORTF.OUTTGL = PIN7_bm; } [/syntax] Natomiast dla tej już niestety nie: [syntax=c] ISR(TCC1_OVF_vect)...
(at)paluszasty Z każdym portem są związane dwa przerwania INT. Czyli jeśli wykorzystasz piny należące do dwóch różnych portów, to będziesz miał 4 niezależne przerwania.
https://obrazki.elektroda.pl/7595010300_... Wiele osób zastanawiało się dlaczego kolorowe graficzne wyświetlacze działają bardzo wolno z Arduino UNO/Mega i wszystkimi AVR Mega/Tiny. Przeprowadziłem testy porównawcze wyświetlacza 128x160 ze sterownikiem IL9306 pracującym z interfejsem SPI. Do testów posłużyło Arduino UNO i KA-NUCLEO-F411CE....
https://obrazki.elektroda.pl/9151185000_... Autor poniższego zestawienia jest inżynierem i konsultantem wsparcia dla systemów wbudowanych. W swojej karierze poznał on szereg różnych architektur mikrokontrolerów, różniących się wydajnością, wyborem peryferii, poborem zasilania etc. Wybór odpowiedniego układu stanowi zawsze o sukcesie...
Witam, chciałbym rozbudować kod znaleziony tutaj: http://mikrokontrolery.blogspot.com/2011... Na razie chciałbym dodać obsługę timerów, niestety przerwania nie działają ;/ Sprawdzam działanie przerwań za pomocą JTAGa (Atmel ICE) i stawiam breakpoint'y w funkcjach obsługi tych przerwań, niestety program...
Bo to trzeba użyć nowej atmegi tam licznik jest dwukierunkowy i będzie generował przerwania także przy przejściu przez '0' W XMEGA timer też jest dwukierunkowy. Problem się pojawia tylko przy rozszerzeniu do 32-bitów, bo event system transmituje wyłącznie zdarzenia overflow, ale nie underflow - nie steruje kierunkiem drugiego timera Niestety nie udało...
Atmega 328P z kwarcem 18432000 (w specyfikacji mozna ja kręcić do 20MHz) spokojnie potrafi wygenerować trzy PWM przesunięte w fazie o 120 stopni z krokiem 256 z częstotliwością 50Hz przy tym nadając na USART o aktualnych warunkach jednego potencjometru. Pewnie że potrafi, ja na attiny 861 wygenerowałem 3 sinusy co 120 st z regulacją F od 20 do 250Hz...
Co do symulatora to coś nie zadziałało, powinien ustawić ADCA.CTRLA na 0b00000101 natomiast na przykładzie widać, że się nic nie zmianiło: No właśnie zadziałało i chyba ci pokazało co jest grane. Nie masz czasem wyłączonego ADC w rejestrach oszczędzania prądu? Sprawdź stan rejestrów PRP.
W zasadzie to w między czasie rozwiązałem problem i działający kod wygląda tak: [syntax=c] void Timer_init() { PORTD_PIN1CTRL = PORT_ISC_BOTHEDGES_gc | PORT_OPC_PULLDOWN_gc;// Zbocza wywołują zdarzenia EVSYS_CH0MUX = EVSYS_CHMUX_PORTD_PIN1_gc; // Transmitowane przez kanał 0 TCC4.CTRLD = TC45_EVACT_PWF_gc | TC45_EVSEL_CH0_gc; // Kanał 0 wyzwala pomiar...
Zgodzę się, że w wolnym systemie przerwania wielopoziomowe mają jakiś sens. Zmieniałeś w jakiejś architekturze priorytety przerwań ? Przydało Ci się to w jakimś realnym a nie akademickim przypadku ? W ARM ustawiam priorytety z lenistwa (nie chce mi się liczyć) ale pewnie wystarczyłby jeden. W 8051 i Z-80 to często konieczność (szybka transmisja USART),...
Wygrzebałem mój moduł X3 od leon instruments. Do pinu A1, którego przerwanie będę sprawdzał, podpiąłem przewód, z drugiej strony sobie" wisi". Nie jest podpięty do niczego. http://obrazki.elektroda.pl/7657341400_1... Zrobiłem prosty program: http://obrazki.elektroda.pl/8271471100_1... Wszystko jest ustawione tak, jak...
Nie pasuje to, że nie wrzuciłeś ani jednego kawałka kodu. Wielokrotnie w DIY nie udostępnia sie kodów, bardzo często do projektów w rodzaju miganie diodą. Dlaczego więc ja miałbym udostępnić kody? Mając doświadczenia z pomocą na forach rozumuję tak: Gdy potrzebuję pomocy, najczęściej jestem tylko naprowadzany na trop i pewnie tak by było gdybym otworzył...
Witam Próbuję wykonać ćwiczenie z kursu Leona http://www.leon-instruments.pl/2014/01/k... Uruchamiałem ten kod pod eclipse Luna z najnowszym toolchainem. Ww właściwościach projektu dla AVR hardware podałem właściwą sygnaturę procka i jego częsttliwość 62000000 Hz , kompilator wykrzykuje ostrzeżenie jak mam definicję zegra...
A cóż to za urządzenie, gdzie przerwania mogą zakłócić pracę?
Na AVR Xmega z 32MHz przerwania miałem na 80kHz, tutaj też tyle ustawiłem i program zaniemówił. Albo może nie do końca zrozumiałem ideę tych systick? Muszę po prostu wygenerować przebieg przez DAC, odczytując w stałych odcinkach czasu poszczególne wartości i przesyłać je do DAC. Ot taki prosty DDS. Być może SYSTIC się do tego nie nadaje?
O kolejkowaniu też myślałem ale to sporo przebudowa programu. Tylko jeśli program jest koszmarnie napisany :) Kolejkowanie to jedyne sensowne rozwiązanie. W aplikacji sprowadzi się do prostej wymiany instrukcji odwołującej się do SPI na funkcję realizującą transakcję. Wkleiłbym ci kod, ale jest tego trochę, tak jak pisałem, ściągnij sobie przykady...
Amógłbyś jeszcze napisać czy istnieje w xmega coś jak tryb przerwania CTC w atmega? Potrzebuję przerwanie co 1 sekundę i za bardzo nie wiem jak to zrobić a strasznie mało informacji w sieci:/ Czy CTC to jest CCA w xmega? Każda Xmega ma wbudowany układ RTC orac generator 32kHz więc można sobie 1 sekundowy taimer ustawić bez problemu (i bez dodatkowych...
A AVRach oprócz nowej serii Xmega nie ma priorytetów przerwań. Obsługa przerwania blokuje wszystkie przerwania. Rozwiązaniem jest timer. Nie zwykłem wykorzystywać przerwań zewnętrznych do przycisków. Lepiej wykorzystać timer. Sprawdzając co np 100ms ich stan. 2x wykrycie kolejno mamy akcję. Dodatkowo w ten sposób łatwo zrealizować inna funkcje przycisku...
Odczyt FLASH odbywa się bez konieczności modyfikacji NVM (o ile mówimy o odczycie bajtów/słów), If the application are using program space access in interrupts * (__flash pointers in IAR EW or pgm_read_byte in GCC) interrupts A czy to, co ja robię to nie jest ten __flash pointer? Co prawda korzystam z GCC, ale tutaj na forum doradzono mi, że nie trzeba...
Na ATMega644 oczywiście nie da się tego zrobić, chociażby z tego powodu, że bufor odbiornika jest jendobajtowy i odebrane znaki by się po prostu zgubiły. Natomiast z AVR da się coś takiego osiągnąć na XMEGA E5, gdy sprzęgniesz USART z EDMA w trybie wyszukiwania wzorców. Wtedy jest możliwość zgłoszenia przerwania po napotkaniu wzorca, który podałeś,...
AVR nie bardzo nadają się do WS2812. Ostatecznie Mega1284 (16 ram), ale kolejny problem to obciążenie procka podczas wysyłania danych do LED. Teraz nie pamiętam ale mimo modyfikacji prologu i epilogu przerwania, w czasie transmisji do LED wykonuje sie kilka/kilkanaście rozkazów. Xmega czy Arm rozwiązują problem najlepiej używając DMA. Co do kolorów,...
Pod TC_CLKSEL_DIV1024_gc kryje się: [syntax=c] (0x07 << 0) [/syntax] Czyli wg XMEGA Manual A odpowiada to prescalerowi /1024. A pod TC_OVFINTLVL_HI_gc: [syntax=c] (0x03 << 0) [/syntax] Czyli wg XMEGA Manual A odpowiada to ustawieniu przerwania na poziom wysoki.
A bierz sobie jaki chcesz kontroler i próbuj na czymkolwiek wedle swoich możliwości. Procesor jest zawsze "obciążony" w 100% chyba, że jest wprowadzany w jakiś tryb oszczędzania energii, więc gadanie, że coś tam zbyt obciąża procesor jest bez sensu. Miganie diodą też obciąża procesor w 100% i to w 99,999% przypadków. Jeśli procesor ma wykonywać jakieś...
Assemblera na ARM? Na AVR piszesz w ASM? Nie, czasami robię wstawki w przerwaniu, ale głównie sprawdzam co mi kompilator wypluł bo juz kilka razy miałem że program mi nie mnie chodził jak chciałem przez nadmierną optymalizację kompilatora. W ARM takich problemów nie ma. Wstawek ASM nie trzeba robić ani poprawiac kompilatora. Więcej ram, SPI, I2C, RAM,...
Coś te flagi przecież ustawiło... Najpierw włączasz obsługę tych przerwań, potem włączasz podciąganie pinu to flaga już ustawiona...a kasowana jest przez AVR sprzętowo kiedy obsługiwane jest przerwanie. Bascom nie musi obsługiwać żadnego kasowania flagi przerwania bo robi to sam procesor tyle, że w przerwaniu (jednym w wyjątków potwierdzających regułę...
Bo jak programujesz 1000 szt to robisz to kilka razy szybciej. Jeśli programuję takie ilości to zamawiam preprogramowane elementy, lub programuję EEPROM przed wlutowaniem. Przecież gdyby to miał robić MCU to musiałbym mieć program, który po pierwszym uruchomieniu jest zbędny. Zresztą i tak zostaje mi programowanie 1000 MCU. tmf napisał: A jakie to...
Z nowych mam tylko AVR32DA28 na atmega i attiny problem nie występuje, xmega nie mam. Przeinstalowałem AS7, bez zmian. Dodano po 38 Namierzyłem metodą Macajewa takie wektory: PORTA_PORT_vect _VECTOR(3) powinno być: _VECTOR(6) TCB0_INT_vect _VECTOR(6) powinno być: _VECTOR(12) PORTD_PORT_vect _VECTOR(11) powinno być: _VECTOR(22) Jakieś pomysły ?
Prawda jest taka, ze bez użycia przerwań nic sensownego nie da się zrobić. Czy to będzie Arduino czy ARM, czy (tfu przez lewe ramię) Bascom. Jakiej jedno proste zadanie tak. Może i kilka ale dokładając kolejne program nie nadąża w pętli głównej sprawdzać flag i wykłada sie tam, gdzie 6502 z zegarem 1MHz (0,5MIPS) daje radę bo używa przerwań (AVR 16MHz...
Kolega R-MIK ma racje. Natomiast ja się zdziwiłem. Zazwyczaj nie czytałem/nie zapisywałem flagi związanej z przerwaniem tylko pisałem obsługę przerwania gdzie flaga sama była kasowana. Jako "Appendix" chciałbym przypomnieć, bo może kiedyś kolega użyje Xmegi serii E, że tam wejście w procedurę obsługi przerwania nie kasuje flagi "sprzętowo" czyli samym...
xmega flaga przerwania xmega częstotliwości mikro xmega
wyższa matematyka ekspres krups konserwacja skype połączenie
Ciemny ekran telewizora - problem z podświetleniem Uszkodzenie akumulatora: przyczyny i diagnostyka