http://obrazki.elektroda.net/86_12805854... Witam, Chciałbym zaprezentować kolejny mini projekt aczkolwiek bardzo użyteczny i przydatny na codzień. Ponieważ posiadam kilka bardzo dużych wyświetlaczy VFD 2x20znaków (rozmiar lampy 20x6 cm !!!) postanowiłem zbudować mini panel reklamowy z wygodną obsługą dla klienta. Wyświetlacze omawiane były w http://obrazki.elektroda.net/65_12805841...
może inaczej , Clockrate moge ustawić na więcej ale to i tak niczego nie zmienia . Odbiornik odbiera dane po wysłaniu z nadajnika i ładnie wyświetla na lcd . Pytanie to bardziej chodzi o to czemu timer0 w odbiorniku jest blokowany lub chodzi tyle samo czasu co przerwa WAITMS w nadajniku . Przerwanie do SPI jest krótkie ale po wysłaniu danych następuje...
Osobiscie nie mam pojecia jakie moga wystapic bledy Zwarcie magistrali, przerwa na magistrali, za duża pojemność magistrali no i przypadek, który juz opisałem, czyli reset mikrokontrolera w czasie transmisji. Błąd tez może wystąpic w trybie multimaster.
RESET_PUSLE masz błędne, zawsze zwróci 1, bo za późno badasz presence pulse. send_byte jest błędne bo pomiędzy kolejnymi bitami nie masz przerwy. W read byte przerwa 15 us może być za krótka, bo czas trwania bitu 0 jest dłuższy, a w read nie czekasz aż magistrala wróci do 1.
MarasK -> ale przecież opóźnienia tzn to migotanie nie powstaje z powodu samej transmisji pomiędzy DS'ami tylko z tego powodu, że większość ludzi po wysłaniu polecenia pomiaru temperatury do czujników stosuje w tym miejscu pętlę opóźniającą 750ms aby po nie odczytać te temperatury i to tu jest pies pogrzebany. Bo obojętnie gdzie czy w przerwaniu, zy...
Witam Problem rozwiązany. W programie zmniejszałem wartość rejestru OCR1A o 100. Podczas takiej dekrementacji mogło dochodzić do przypadku jak niżej OCR1A=10000 wartość timer1=9940 jeżeli w tym momencie zmniejszyłem wartość OCR1A do 9900 to licznik liczył dalej do wartości 65536 i następowała przerwa na czas około 1-2 sekund Wystarczyło przed każdą...
Rzeczywiście sprawa banalna :D tylko zrozumieć o co chodziło :P dzięki wszystkim za pomoc. Mam taki pomysł: mam drobny mikrofonik pojemnościowy, czyli jak podłącze go do zasilania, to pracuje jak kondensator, który "ładuje się" jak pobierze z otoczenia dźwięk - naładowany więc przerwa w obwodzie - logiczne 0, gdy nie pobiera dźwięku jest cisza, to mamy...
Wyślij 2 razy po kolei, najpierw adres 000000xx potem bajt danych. Pomiędzy nimi może być dowolna przerwa na załadowanie bajtu, bo spi jest niesynchroniczne a sterowane zboczem, czas bitu nie gra roli, ważna jest tylko kolejność zdarzeń. Być może na obrazku transmisji masz to równiutko narysowane ale w tekscie to pewno pisze ze czasy nie graja roli....
1. jak rysujesz to dodawaj na schematach węzły - jakby to był nieco większy schemat to nie wiadomo by było które linie mają się łączyć a które nie... I tu już dostaję oczopląsu... 2. Zasilanie źle podłączone - pamiętaj że kondensator (dla prądu stałego) to przerwa - kondensatory mają być wpięte między gnd i vcc. Ty masz podpięte piny VCC też do GND...
Ruszy bez problemu tylko napisz to porządnie. Kamyczkowi nawet się nie chciało zajrzeć do tego kodu a wydaje jakieś nonsensowne opinie tylko dlatego że mu nie wychodziło. Zobacz, nie możesz skoczyć do gadającego Sub`a na taką wieczność jaką jest gadanie i podwójne czekanie na zakończenie gadania. [syntax=vbnet]Sub Powiedz_czas: '**********************...
W dokumentacji TSOP1736 można przeczytać: The distinguishing mark between data signal and disturbance signal are carrier frequency, burst length and duty cycle. The data signal should fullfill the following condition: • Carrier frequency should be close to center frequency of the bandpass (e.g. 38kHz). • Burst length should be 10 cycles/burst...
Mam następujący problem: posiadam tablice diodową 126 na 15 LED i trzeba napisać drugi generator znaków (jeden już mam trochę o nim jest w poście Bascom i cuda które się dzieją jeśli admin uzna że oba posty powinny zostać scalone to proszę scalić zakładam nowy z powodu iż tamten był defakto o problemach z kompilatorem nie o samej tablicy) Sprawa wygląda...
Witam Wszystkich Napisałem malutki programik, który ma za zadanie wyświetlić mi na jednym module matrycy LED jedną kolumnę w całości, jedna pusta a następnie ma wyświetlić górną polówkę kolumny. Tak jak to przedstawiono na rys. poniżej: Program wygląda następująco: .include "m32def.inc" .list .def acc = r16 .def acc2 = r17 .def param = r18 .def licznik...
Pierwsza część programu Dodano po 8 no i druga się nie mieści, więc wrzuciłem do pliku tekstowego.
Witam Mam problem Wszystko działało na portach PA PC i PD4-7 ale jak podpiąłem cały PD PB do drugiej części matrycy diodowej to przestało działać chyba przez przerwania. Zmieniłem rodzaj przerwania na czasomierz z uwagi ze chyba piny INT0 zmieniały stany. Wszystkie porty mam jako wyjścia a w części matrycy mam błędy zawsze w tym samym miejscu. Jaki...
Cześć Ten kod mi nie działa.Czy moglibyście rzucić na niego okiem. Ten kod poprostu ma za zadanie nadawać w standardzie space.Ladnie pokazuje adres ale nie działa komenda pokazuje same zera. [syntax=c_mac] //Załączanie plików nagłówkowych #include<avr/io.h> #include<util/delay.h> //Czasy dla nagłówka #define first_header 9460 #define second_header...
No nie bardzo. Pętle busy waits są w przerwaniu niewskazane. Zrób tak jak napisał (at)BlueDraco : odczyt poprzedniej konwersji-start następnej konwersji-wyjście bez czekania. [syntax=c]ISR(TIMER1_COMPA_vect) { switch(wejscie) { case 2: adc3=ADC; ADMUX = 0; ADMUX = (1<<REFS0)|wejscie; ADCSRA |= (1<<ADSC); break; case 3: adc2=ADC; ADMUX =...
Witam! Mam mały problem. Od kilku godzin próbuję ustalić przyczynę braku możliwości obsługi przerwania w moim zestawie EVB 5.1 z ATMega 32. Mianowicie, próbowałem wszystkich możliwych opcji uruchomienia przerwania poprzez naciśnięcie przycisku i niestety nie wychodzi. Po naciśnięciu przycisku 3 diody mają zostać wyłączane/włączane zależnie od poprzedniego...
Atmega 32, program obsługujący klawiaturę - 4 przyciski, odczytywane co 20 ms ( co któreś przerwanie timera 1), przyciski podpięte pod PC), PC0,PC1,PC2,PC3. jeżeli w programie wykorzystuję PC0 i PC1 to jest ok , ale jeśli w pętli obsługi przerwania odczytującego klawiaturę sprawdzam stan przycisków PC2 i PC3 to zgłoszenia przerwania są w każdym odczycie...
Witam! Mam problem z zaprogramowaniem atmegi 32, a mianowicie programator nie może się z nią skomunikować :cry: Procesor działa jak należy i wcześniej nie było problemów z programowaniem, próbowałem na innym procku i jest ok tylko z tą nieszczęsną "32-ą" jest problem. Dodam że korzystam z programatora szeregowego oraz nie zmieniałem ustawień lock bitów....
Witam, pisałem program i stanąłem na dość błahej sprawie, mianowicie nie mogę wywołać przerwania od przepełnienia licznika0 a nawet od porównania z zadaną wartością... dziwne bo na przykład przerwanie od INT0 działa znakomicie. Ten sam problem mam z licznikiem 1 i 2 Kod programu #include <avr/io.h> #include <avr/interrupt.h> // Biblioteka...
Witam. Buduje urządzenie w którym wykorzystałem Atmege32 w obudowie tqfp z wylutu. Problem jest tego typu że po wlutowaniu w urządzenie nie mogę jej zaprogramować. W oryginalnej płytce atmega pracowała z zewnętrznym kwarcem 8Mhz a w układzie docelowym będzie pracować na wewnętrznym rezonatorze. Oczywiście na czas przeprogramowania fuse bitów dolutowałem...
Qurcze, walczę z softem, gdzie muszę korzystać z komparatora (obsługuje go na przerwaniu) i dwóch przerwań zewnętrznych INT0 i INT1. Niestety coś tu mi nie działa i program się sam resetuje wracając do początku funkcji "main" :cry: int main() { //wlaczenie przerwan zewnetrznych INT0 i INT1 GICR |= (1<<INT0); // INT0 GICR |=...
Cześć. Napotkałem ostatnio na pewien problem, mianowicie w momencie gdy wywołuję przerwanie w swoim układzie, to po jego obsłudze główny blok programu nie jest kontynuowany, tylko wszystko zaczyna się od początku (albo resetuje procek). W załączniku schemat urządzenia. Załącznik usunąłem. http://obrazki.elektroda.net/63_12624652... Przerwanie...
Co do Bascoma to i kompilator może być winny. Spróbuj skompilować na starszej wersji Bascoma np. 1.11.9.5
Witam. Na wstępnie kilka informacji: -Mikrokontroler atmega32 -IDE - AVR Studio 4.18 + toolchain z winavr (kompilator avr-gcc). -Debugger - JTag ICE -Konwerter usb <> rs232 - AVR Prog w konfiguracji konwertera. Płytka z procesorem nie zawiera błędów , połączenie mikrokontrolera z konwerterem "zcrossowane" a sam konwerter jest sprawny (testowałem...
Witam, Mój program działa w dwóch trybach: pomiar częstotliwości i pomiar 4 napięć 0-10V. Zmiana trybu odbywa się poprzez przycisk podpięty pod PINC2. W trybie pomiaru napięć stosuje fragment kodu, który porównuje aktualne pomiary z poprzednimi i pomija je jeśli zmiana była zbyt mała, tak aby na wyświetlaczu nie było widać nieustannych zmian. [syntax=c]...
Korzystam z atmegi 32. Problem polega na tym że chcę zapisywać wartości do eeprom-u. Zapis robię co przerwanie timera2 od przepełnienia. I za każdym razem jak dochodzi do zapisywania do eeprom-u to mikrokontroler się resetuje. Czytałem coś o fuse bitach coś zmieniłem, ale nie pomogło. Trzeba oddzielnie eeprom i flash programować? Zestaw ewaluacyjny...
Witam Potrzebuje pomocy w obsłudze przerwań. Muszę zrobić projekt skrzyżowania na zajęcia z sieci automatyki, i napotkałem problem z przerwaniami. Próbowałem na wiele sposobów coś napisać, ale bez skutku. Potrzebuje jakiś testowy kod, który np: będzie mi zapalać i gasić diodę podpiętą do jakiegoś portu. Oto kod poprany z jakiejś strony, lecz też mi...
Witam Chciałem uruchomić przerwania, przygotowałem najprostszy kod z timerem T0 i przerwaniem od przepełnienia, ale nie chce mi zadziałać przerwanie. Dla sprawdzenia zmieniam stan portu do którego podłączona jest dioda. #define F_CPU 1000000 //ustawienie oscylatora na 1MHz #include <avr/io.h> //dołączenie podstawowej biblioteki #include <avr/interrupt.h>...
Witam wszystkich, mam problem z przerwaniem od przepelnienia, timer1. Siedze nad ta prosta rzecza któryś dzień z kolei i nie moge sobię poradzić. Prosiłbym o sprawdzenie kodu. [syntax=jezyk_C] #include<avr/io.h> #include <avr/interrupt.h> #define F_CPU 1000000 // czestotliwosc zegara 1MHz #include<util/delay.h> int main() { DDRA =...
Witam Zakupilem moduł uruchomieniowy : http://www.gotronik.pl/www/modul_avr.htm... oraz do niego programator : http://www.and-tech.pl/avrprog.htm Podłączylem programator (mimo, ze nie ma nawet opisu pinów ISP na płytce) i niestety nie dziala :( Po uruchomieniu obslugujacego ten programator programiku i chociazby probie zczytania flasha z ukonktrolera,...
Co tutaj przekombinowałem? Atmega32. Tryb Licznika. Celem było zapalenie i gaszenie diod co sekundę. Preskaler = 256. Przerwanie tak wyliczone aby wykonywało się co sekundę. Timer 16bitowy [syntax=c] #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> ISR (TIMER1_OVF_vect) { PORTC ^= ~0xFF; //zmiana stanu portu C...
Witam, W programie przedstawionym poniżej nie zostaje wywołana obsługa przerwania. Próbowałem na innych timerach tez bez skutku. AvrStudio 6, Atmega8a, optymalizacja O2. [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> #include "utils.h" #include "display.h" int main(void) { LEDInit( ); Display(0); //Init Timer 0 TCNT0 = 6; TCCR0...
Witam...Dlaczego przerwania z Timera0 generowane nie sa zgodnie z dokumentacja? chciałbym zrealizować generator sterujący pinami portu PC0-7...w taki sposób aby wartości z tabeli --- unsigned char GenTab DDRC = 0xFF; // port C jako wyjscie 11111111 CLI(); //disable all interrupts TIMSK = 0x01; //timer interrupt sources TCCR0 = 0x00; //stop OCR0...
Napisałem programik w celu testowania czasu w przerwaniu ADC. #include <stdint.h> #include <avr/io.h> #include <stdlib.h> #include <avr/interrupt.h> int main(void) { sei(); DDRB=255; DDRC=255; ADMUX = _BV(REFS0)|_BV(REFS1); ADCSRA = _BV(ADEN)|_BV(ADIE)|_BV&...
No teraz dobrze, ale czy to Ci w ogóle potrzebne? Zerujesz zmienną prze wejściem w pętle ... A wracając o głównego wątku, jeśli masz włączone przerwanie to jego czas dodaje się do tych 1780us, być może wiele razy na bajt (bo częstotliwości oscylatora nie podałeś) i sprawdzasz PD2 w niewłaściwym czasie ... Albert
Klawiszy (poza wyjątkowymi sytuacjami typu wybudzanie uC) nie robi się na przerwaniach INT. Delaye w przerwaniu to nieporozumienie. Twoje przerwanie realizuje się tylko po wciśnięciu przycisku, więc trudno by było, aby zwróciło informację o jego zwolnieniu. Zrób przerwanie zegarowe co 25-50ms i cyklicznie sprawdzaj stan klawiatury. Opanujesz w ten sposób...
To akurat może być. Słuzy to do progamowego wyzwalania tego przerwania, jak jest taka potrzeba. wiem, ale podłączyłem do portu INT1 przycisk więc to nie ten przypadek :) A jak za chwilę będzie chciał włączyć pull-up dla przycisku i weźmiemy pod uwagę, że robi się to tak: If PORTxn is written to '1' when the pin is configured as an input pin, the pull-up...
Enkodery dają na wyjściu kod Graya i trzeba to zdekodować zanim zaczniesz zliczać impulsy. Jak to zrobić masz w przykładach do mojej książki o C na AVR (link w stopce, przykłady są za darmo).
Co do Twojego pierwszego problemu to prawdę mówiąc nie wiem, ale zwróć uwagę na to że po zakończeniu obsługi przerwania zawartośc R16 i R17 jest zamieniona: ... .org 0x0012 rjmp t1Ovf ... t1Ovf: push r16 push r17 in R16, PORTC ldi R17, 0b00000011 eor R16, R17 out PORTC, R16 pop r16 ; R17 pop r17 ; R16 reti ... Może to wina własnie tego. Co do Towjego...
Niedawno było: TWI_master.c i TWI_master.h może wydawać się nieco skomplikowany, ale skorzystanie z zaimplemntowanych tam funkcji jest stosunkowo proste. We wątku, do którego link podałem, jest przykład obsługi pamięci I2C z wykorzystaniem tych funkcji.
Nic nie robiłem to czysty ardunio nano Więc jeżeli to klon to zapewne ma stary bootloader, który zawiera błąd z ustawieniem WDTON. Powinieneś zacząć od wgrania optiboot do tego Nano.
Wg mnie dobrze kombinujesz z buforem statycznym. Jeśli masz tylko dość pamięci to powinieneś pójść tą drogą, a odpowiedź na Twoje pytanie jest dość proste, tak mi się wydaje. Zrób po prostu funkcję, która będzie zwracała wskaźnik do Twojego bufora, coś na kształt: [syntax=c] uint8_t * buffer_get_ptr(void) { return UART_RxBuf; } [/syntax] W pliku nagłówkowym...
W trakcie wykonywania tego podprogramu zostało zgłoszone przerwanie zewnętrzne na nóżce int1 atmega328p. Czy atmega328p przerwie wykonywanie podprogramu nóżki int0 Zależy jak zadeklarujesz przerwanie, czy ISR bez atrybutu lub z atrybutem ISR_BLOCK albo jako SIGNAL czy ISR z atrybutem ISR_NOBLOCK lub jako INTERRUPT. Jeśli przerwanie w przerwaniu jest...
nie podciągnąłeś wejścia PD2 do plusa zasilania PORTD|=_BV(2);
Bezpośrednio raczej nie z uwagi na rezystancję wejściową ADC i ujemny zakres napięć. Trzeba pokombinować z wzmacniaczem operacyjnym w układzie podbijającym składową stałą o 2,5V.
Te procesory się aż tak nie różnią. Dodatkowe funkcjonalności pinów nie przeszkadzają w niczym dopóki ich nie uruchomisz. (PCINT - Pin Change Interrupt trzeba wiedzieć jak włączyć). Jest duża różnica jeśli chodzi o Timery właśnie. Mega8 ma na przykład tylko jeden rejestr Compare dla Timer2 dlatego inaczej się nazywają. Opisałem to u siebie na stronie...
A skąd wiesz, że się nie wykonuje? Jedyne co widzę, to to, że w przerwaniu zerujesz wyzerowany port. To raczej trudno zauważyć.
Jedyna zmienna, którą trzeba przechowywać, to old_A; można by zrezygnować z B, która jest używana raz, wstawiając read_B() zamiast B. I jest też sposób, by zrezygnować z A: porównujesz read_A() z old_A, jeśli się różnią, to zmieniasz old_A i zliczasz, kierunek według poprawionego old_A i read_B(). Przerwanie musi być na obu kierunkach zmian sygnału...
W dokumentacji jest napisane ile razy wolniejszy ma być zegar asynchroniczny . Poza tym jeśli procedura obsługi jest dłuższa niż czas miedzy przerwaniami program nie będzie działał i to raczej normalne zjawisko. Zasadniczo asynchroniczny zegar używa się tylko do wolnych operacji wymagających takiego rozwiązania np RTC resztę pędzi się szybkim zegarem...
:D Ale nadal mnie nurtuje dlaczego przy takim programie i włączonym wewnętrznym pull-up generuje Ci się przerwanie, pomimo stanu wysokiego na wejściu INT1. Co tam masz podłączone?
RTFM, pdf nt. ATMega32, strona 19: Bit 3 – EERIE: EEPROM Ready Interrupt Enable Writing EERIE to one enables the EEPROM Ready Interrupt if the I bit in SREG is set. Writing EERIE to zero disables the interrupt. The EEPROM Ready interrupt generates a constant interrupt when EEWE is cleared. Gdyby się nie dało zrobić jak pisałem tobym Ci głowy głupotami...
sprawdziłem w bascomie , co około 8ms jest przerwanie i przechodzi do "przerw" , czyli program ok
Witam. Zwykły kwarc 32K. Usypiasz procesor i możesz go budzić na żądanie w określonym czasie. Jak wszystko pójdzie dobrze uzyskać pobór prądu na poziomie 1uA w stanie uśpienia.
Po pierwsze, timer liczy od 0 do 255, ale to oznacza 256 impulsów pomiędzy przepełnieniami, czyli powinno być 256, a nie 255 * 128us. Po drugie zaokrągliłeś wynik z 32.64 do 32 przed dzieleniem, co w efekcie dało niedokładny wynik ilości przepełnień. W rzeczywistości częstotliwość przerwań można obliczyć dużo prościej: ( 8000000 / 1024 ) / 256 = ok. 30,5176.....
Dołącz bibliotekę <avr/interrupt.h>
Fusebity raczej. Np przez ich zmianę nie generuje już zegara albo wejście reset ma zmienioną funkcję. Swojego czasu na elektrodzie powstał fusebit doctor: https://www.elektroda.pl/rtvforum/topic1... Można to kupić (pogoogluj) ale dla jednego procesora nie ma sensu. Spróbuj procesorowi podać zegar z zewnątrz, może zareaguje...
Zacznij używać TAB-ulatora w kodzie bo analiza Twojego kodu to katorga. Popraw i załącz ponownie. Mamy się domyślać w których liniach występują warningi? Dla Ciebie Warning = Błąd: : http://mikrokontrolery.blogspot.com/2011...
Niestety problem znów się pojawił: Program nie wchodzi do pętli while, gdzie warunek jest niespełniony dopiero po zatrzymaniu dopiero co ustawionego rejestru licznika, próbowałem jeszcze inny sposób, z bitami zmiennej flag ustawianymi w przerwaniach - do przerwania wchodzi, ale jak wróci do programu to nie wychodzi z pętli - tak jakby warunek był cały...
Nie wiem czy odbierasz tam jakieś komendy. Wywal te Wait`y. Tutaj po zmianie stanu do zmiennej Blokada zostanie wpisana wartość do odliczenia w dół. Jeśli nastąpi następne przerwanie to w zależności od tego czy minął już czas blokady, to albo zostanie przedłużony jej czas bo ktoś trzyma przycisk dłużej albo.. :D [syntax=basic4gl]Dim Blokada As Word...
Żeby zrobić za pomocą Timera - to nie możesz używać trybu PowerDown tylko Sleep - żeby właśnie Timery mogły działać to po pierwsze. W taki trybie jednak będziesz miał nieco większy pobór prądu niż w pełnym PowerDown. Więc wszystko zależy na ile ma wystarczać bateria o ile jest to coś zasilane z baterii. Bez PowerDown'a na pewno będzie to sporo krótszy...
Odblokowałeś globalne przerwania ale nie odblokowałeś indywidualnego od UART_RXC. Flaga RXCIE w rejestrze UCSRB. JarekC
Moze chodzilo Ci o PORTD|=(1<<6); lub PORTD&=~(1<<6); ? ;]
Działa ;-) Ustaw Breakpoint na linijce (prawy myszy Toggle Breakpoint) [syntax=avrasm]com LED[/syntax] naciśnij F5 (Run) jak zatrzyma się na Breakpoint wykonaj kod przerwania krokowo F11 naciśnij F5 (Run) jak zatrzyma się na Breakpoint wykonaj kod przerwania krokowo F11 itd. Zamiast 15625 ładuj do OCR1A 15624. Wieczorem wrzucę inny sposób migania tym...
mogą być 2 bity startu, bo standard RC5 właśnie tak jest "skonstruowany", że posiada 2 bity startu. Natomiast jego rozszerzenie czyli RC6 wykorzytuje drugi bit startu jako normalny bit danych. Ok - teraz odpowiedź dla autora, wydaje mi się, że uda się to wyjaśnić bo sam kiedyś miałem podobny problem ze zrozumieniem tego etapu dekodowania. Cały problem...
A co na to symulacja programu? Taki program wgraj: .nolist .include "m32def.inc" .list ; ## START ########################################... .cseg ;=======================================... ;= WEKTORY PRZERWAŃ = ;=======================================... .org 0x0000 rjmp reset_vector ; po...
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...
Witam, Popełniłeś kilka błędów: - aby odblokować przerwania od przepełnienia timera 1 trzeba ustawić bit 2 a nie 5 w rejsestrze TIMSK - wektor przerwania od przepełniania timera 1 to nie 0x12 a 0x24 Dobrze jest przy pisaniu w C korzystać z funkcji dostarczanych wraz z kompilatorem "intrinsic function" takich jak __interrupt_enable, __interrupt_disable,...
Tak, możesz tak zrobić i zadziała to poprawnie. Ale napisz co chcesz osiągnąć. Bo może prosciej jest skorzystać z przerwania odbiornika UART - jest ono generowane w chwili odebrania bajtu danych przez UART i nie ptrzeba korzystać z rozwiązania jakie wymyśliłeś.
atmega32 przerwa przycisk atmega32 przerwa timer stm32 przerwa przerwa
elektroniczne głowice termostatyczne pakiet blacha solidny laptop
kuchenka mikrofalowa kuchennka mikrofalowa
Wskaźnik analogowy do ZTR-120 – wymiana uszkodzonej wskazówki, zamienniki, dobór Tania drukarka do etykiet – Xprinter XP-420B, iDPRT SP410, TSC TE200, Dymo Omega – porównanie