https://obrazki.elektroda.pl/3222529000_... Kto zna mnie na forum, albo czytał moje artykuły, ten wie, że delikatnie rzecz ujmując Jeden standard, by wszystkimi rządzić Projektowanie układów z użyciem Arduino jest proste. Płytki Arduino i moduły rozszerzeń do nich mają standardowy kształt i rozstaw złączy, dzięki czemu możemy ułożyć...
https://obrazki.elektroda.pl/8691272400_... Witam, poniższy mini-projekt powstał z inspiracji Część elektroniczna Urządzenie bazuje na dwóch PCB (4x wyświetlacz LED + płyta główna) połączonych ze sobą taśmą flex z jakiejś drukarki. Wyświetlacze to wylutowane z czegoś 7-segmentowe pojedyńcze kostki ze wspólną anodą i czerwonym filtrem...
Jak w czystym C (AVR GCC) wyglądała by funkcja millis() ?, a może pokaż też 2 podejście (listing), gdzie milisekundy to zmienna globalna np millis. Wykorzystaj timer do przerwać dostępny na każdym AVR. W AVR GCC, funkcja podobna do `millis()` z Arduino, która zwraca liczbę milisekund od startu programu, może być zaimplementowana z wykorzystaniem timera...
Jeżeli używasz klasy Serial, to tam to już jest zaimplementowane. Jeżeli nie, tu uważaj na możliwe problemy linkera (duplicate reference, symbol already defined), bo domyślna funkcja main, ta, która w pętli odwołuje się do funkcji loop, ma referencję do klasy Serial i przez to, może nie być możliwe instalowanie własnej obsługi przerwania UDRE_vect,...
Jak powinno się rozwiązywać tego typu zagadnienia? Bo zapewne taki problem będę miał w każdej sytuacji, w której program będzie "w tle" oczekiwał na reakcję użytkownika. Jeżeli dobrze zrozumiałem chciałbyś obsłużyć naciśnięcie przycisku w dowolnym miejscu wykonywania funkcji/programu? Jeżeli tak, to najlepiej taką obsługę przycisku zrealizować przez...
Witam, Mam problem z programem poniżej (używam Arduino Uno). Program powinien przełączać zmienna "state" na przerwaniu generowanym na pinie2 (na zbocze RISING) (do pinu 2 podłączony jest pilot rc na układzie PT2262-generujący stan wysoki na naciśniecie przycisku pilota) (Dodam, że na zbocze FALLING działa poprawnie) Czy któś może mi powiedzieć, dlaczego...
Witam, próbowałem obniżyć prąd w moim Arduino i wkleiłem kod ze strony. I przeoczyłem, że występuje on w dwóch miejscach i odciąłem sobie dostęp do AVR. Jak to przywrócić :)? [syntax=c] ADCSRA = 0; PRR = 0b00000111; MCUCR |= (1<<BODS) | (1<<BODSE); MCUCR &= ~(1<<BODSE); // must be done right before sleep[/syntax]
Witam. Zrobiłem programator czasowy na Arduino, który steruje przekaźnikami i utknąłem - wyłączyła mi się logika :( Mam taki kod i działa ok: [syntax=c] // pora nocna poniedziałek - piątek if(dt.hour == godz_on_tydz and dt.minute == min_on_tydz and weekend == 0 and marker == 0) { marker = 1; } if(dt.hour == godz_off_tydz and dt.minute == min_off_tydz...
Witam Chcę się komunikować z moim uC (arduino UNO) za pomocą UART. Mikrokontroler jest podłączony z PC za pomocą USB, konwerter UART <-> USB jest wmontowany w moją płytkę. Napisałem kod w języku C aby po wysłaniu za pomocą Monitora portu szeregowego jakieś komendy (w moim przypadku jest to liczba) zaświeciła się dioda, dodatkowo dodałem aby wysłano...
Witam, ostatnio zacząłem przygodę z Arduino, kupiłem sobie podróbkę i najpierw żeby komunikowało się musiałem zainstalować sterownik na USB i wszystko działało idealnie, bawiłem się na silniku krokowym 28BYJ-48 i dzisiaj chciałem zobaczyć działanie tego pierwszego programu https://arduino-info.wikispaces.com/Smal... Podczas wgrywania programu...
Potrzebuję pomocy w przerwaniu pętli while (linijka 146) założenie jest takie jeżeli BlutoothDane=s to ma wykonać tą pętle a jeżeli BlutoothDane=d to ma ją przerwać. problem jest taki, że nie przerywa pętli cały układ ma działać jako sterownik Led na bluetooth. Proszę o szybką pomoc. Proszę o przeniesienie do odpowiedniego działu.
Witam, mam problem z kodem, chodzi mi o to żeby po zmianie stanu (przycisku) w porcie szeregowym wyświetliła się tylko jedna wiadomość a nie cały szereg w nieskończoność czyli jedno kliknięcie to jedna wiadomość . o to kod, jak to naprawić? [syntax=arduino]#define BUTTON 7 void setup() { Serial.begin(9600); pinMode( BUTTON, INPUT); } void loop() { if(digitalRead(BUTTON)...
Witam Robię na arduino prosty tester uSwicha który, wyzwala cewkę która, załącza i wyłancza przełącznik. W programie wykonuje sprawdzanie czy ilość powtórzeń zgadza się z odczytaną ilością z przełącznika. Mój problem polega na tym, że błędnie odczytuje mi ilości zmian stanów. W programie wykorzystuje przerwanie aby wykryć zmianę zbocza, gdy wykonałem...
Witam walczę z kodem mającym sterować urządzeniem, lecz nie bardzo wiem w jaki sposób zrealizować "wygaszenie" po określonym czasie Funkcji i przejście do następnej. Przy tradycyjnym wywołaniu kolejnych funkcji poprzednie działają również. Zależy mi na tym aby działała przez określony czas "funkcja termostat", następnie po jej "wygaszeniu" uruchamiać...
Witam, mam pewien problem a mianowicie zrobiłem sobie sterownik pieca C.O a dokładniej samej pompki. Układ jest oparty na mikrokontrolerze Atmega 328P. Napisałem do tego program i wszystko pięknie działa do pewnego momentu. W programie napisałem że pompka ma się wyłączyć jeżeli temperatura spadnie do 42 stopni. Gdy czujnik osiąga tą temperaturę to ją...
Witam Potrzebuję podpiąć się pod zegar sterujący PWM arduino aby uzyskać przerwania co 50 do 100ms czyli co np 50 ms nastąpiło by przerwanie i wywołanie odpowiedniej funkcji. Niestety nie potrafię tego kodu co znalazłem w internecie rozgryść czy ktoś mógłby mi wyciągnąć z poniższego kodu co jest niezbędne do zrealizowania tego i wytłumaczyć co z czym...
Tak jak w tytule, wpisuję kod przerywa on delay i następuje nowe zadanie .
Witam, Opis dzialania: Czujnik TCRT5000, podpiety do pinu 2 lub 3, dioda nadawcza podciagnieta przez opornik 150ohm, tranzystor przez 10kohm. Standardowe podlaczenie, i wszczystko dziala prawodlow. Uklad ma liczyc impulsy z tarczy oborotwej, i robi to prawidlowo. ;) Problem: W miescu gdzie to pracuje ze czujnik siwetla, ktory ma w sobie przekaznik,...
Witam. Mam napisany program na Arduino UNO, który ma oddzielnie obsługiwać 2 serwa podpięte pod wyjście 9~ i 10~. Oba serwa działają, jednak zauważyłem że serwo podłączone do wyjścia 10 bardzo nierówno pracuje. Co chwile są jakieś skoki, na chwile się zatrzumuje, czasami potrafi się cofnąć. Nie jest to wina samego serwa, ponieważ po zamianie wejść,...
Cześć, Szukałem po forum, nie znalazłem sensownego rozwiązania. Mam podłączone dwa Arduino Serialem do siebie, oba na osobnych zasilaczach. Jedno Arduino steruje przekaźnikiem który uruchamia zaliczasz do drugiego Arduino. No i wszystko pięknie by było gdyby nie utworzyła się pętla. Oczekiwałem efektu tego typu: 1. wyłączam arduino I 2. wyłacza mi się...
Hej, mam taki projekt w średnio-zaawansowanym stadium, mianowicie: 1. Skrzynki na warzywa są. 2. Same rośliny są. 3. Zasilacz, pompa, elektro-zawory i oświetlenie dla pierwszych 7 skrzynek złożone podłączone. 4. RPI HA, Arduino z Firmatą, dysk twardy i moduł 16 przekaźników podłączony. 5. Wiadro z wodą i 'hydrauliką' też. PS. wszystko od zasilacza dalej...
Witam, udało mi się zrobić przerwanie zegarowe. Teraz potrzebuję przerwania takiego, żeby zadziałało, gdy napicie na pinie analogowym osiągnie odpowiednią wartość. A ta wartość będzie wpisana w arduino i porównywana z tą z pinu wejściowego.
Obsługa WS2812 na AVR nie może działać przy aktywnych przerwaniach z jakiegokolwiek źródła. Obsługa DMX korzysta z przerwania UART i masz jeszcze przerwanie timera. Proste? Zmień mikrokontroler.... Z ATmega WS2812 DOBRZE nie popędzisz.
Nie przerwiesz pętli for, while, do while jeśli nie będziesz w każdym obiegu pętli sprawdzał stanu, który ma to przerwać. Ta część: if (irrecv.decode(&results)){ long int decCode = results.value; się nie wykona w żadnej takiej pętli. Musiałbyś obsługę tego przenieść w przerwanie, czyli cyklicznie co np. 10ms sprawdzać stan (irrecv.decode(&results),...
Witam. A gdzie masz przerwanie do obsługi rotora?
Nie programuje w arduino, ale w programach pisanych w C, na mikroprocesory AVR, istnieje przerwanie od UARTa. Gdy odbierasz ramkę danych poprzez UART, załączana jest flaga przerwania. W obsłudze przerwania zapisuj godzinę w której wystąpiło przerwanie, poprzez to będziesz miał swój znacznik czasu.
Czy ktoś podzieli się przykładem lub podpowie co robię źle? Arduino IDE i ESP32. Potrzebuję przerwanie co 2 ms od sprzętowego timera. Wszystkie przykłady dotyczą arduino w starszych wersjach, gdzię między innymi funkcja timerBegin przyjmuje 3 argumnty. Od wersji 3.0 z tego co wyczytałem przyjmuje tylko jeden. Bazuje na tym https://espressif-docs.readthedocs-hoste...
Zacznijmy od pytań: 1. Które bity według Ciebie ustawiłeś w TCCR2B : Autor tematu pisał, że stosuje gotową bibliotekę do obsługi jakiegoś panelu dotykowego. Z tego, co zrozumiałem, to przerwanie to znajduje się we "wnętrzu" tej biblioteki. Takie efekty są oczywiście normalne, gdy ktoś mało świadomy tego, co się dzieje w jego programie stosuje gotowe...
Proponuję Autorowi tematu wrócić do działu, w którym zazwyczaj pisze, czyli do Arduino, ponieważ: - profesjonalne systemy alarmowe nie są kompatybilne z Arduino, - profesjonalne czujki alarmowe nie są kompatybilne z Arduino, - w sekcji Arduino łatwiej uzyskać pomoc w kwestiach programowych dla Arduino. Porty mikrokontrolerów AVR można skonfigurować,...
Cześć, jaki to jest spory lag? Może wystarczy nie blokować pętli głównej i nie robić tego laga? Przerwanie też możesz obsłużyć. Nie znam Arduino, ale myślę, że wystarczy zamienić obsługę i konfigurację "Serial" na własną, tak jak byś pisał bez Arduino. Pozdrawiam.
Odnoszę się do kodu z postu #24. Zmienne 'wyslij' oraz 'ilosc' powinny mieć kwalifikator volatile ponieważ są używane w programie oraz w procedurze obsługi przerwania. [syntax=c] volatile int ilosc; volatile bool wyslij; [/syntax] Wywołanie funkcji serial() w pętli loop() może być wielokrotnie "przerwane" przez obsługę przerwania ENKODER_ISR() jeżeli...
Witam, przykladowo ustawiasz jakis timer ktory wybudza uklad/zglasza przerwanie a obsluga tego przerwania skanuje twoje peryferia. Ewentualnie to samo ale timer zewnetrzny czy nawet zegar RTC ktory wybudza Arduino. Pozdrawiam
Emulowanie BL0937 z Arduino jest dobrym pomysłem, mówi nam, czy przerwania na zmianę są odpalane, ale nie jest to teraz potrzebne, ponieważ wprowadzono role licznika. Przerwanie zmiany pinu HAL pod maską jest takie samo dla BL0937 i dla licznika, więc albo oba będą działać, albo nie. No, może z wyjątkiem kodu specyficznego dla BL0937, ale to powinno...
Kazdy czujnik niech generuje przerwanie, w przerwaniu badasz ktory czujnik sie odezwal i wlaczasz diody dla tego czujnika.
W obsłudze timera (TIMER0_COMPA_vect) zrób wyświetlanie odpowiedniej cyfry. Wcześniej trzeba zdjąć bity maskujące. Ja w moim zegarze nixie mam rtc ds3231 i tam co sekundę sygnał 1 Hz wyzwala przerwanie w którym zmieniana jest flaga sygnalizująca że należy odczytać akualny czas i uaktualnić wartości wyświetlane na lampach.
Weź pod uwagę takie problemy: 1. zminimalizuj drgania styków przycisków (tzw. debouncing) programowo lub sprzętowo używając kondensatorów 2. przerwanie od enkodera wywołuj stanem FALLING lub RISING (Ty masz LOW co jest bardziej podatne na drgania przycisku zwieranego do masy) 3. zmienna globalna "time" użyta w przerwaniu powinna być typu volatile (Ty...
zmień funkcję: Timer_conf [syntax=c] void Timer_conf() { TCCR3A=0;// tego rejestru nie ustawiłeś, a trzeba TCCR3B = (1 << WGM32);// "=" zamiast "|=" TCCR3B |= ((1 << CS32) | (1 << CS30)); //PRESKALER 1024 OCR3A = 15625; TIMSK3 = (1 << OCIE3A); // "=" zamiast "|=" TCNT3 = 0; } [/syntax] zamknięcie obsługi przerwania w extern "C"...
Oczywiście, że delay będzie opóźniał pętlę loop. Akurat z Serial to nie ma znaczenia, bo to jest robione na przerwaniach w Arduino, nawet jak loop jest zablokowany to po odbiorze czegoś na uart robi to sprzętowo, odbiera bajt, przenosi do bufora i zgłasza przerwanie, zaczyna odbierać kolejny. W tym czasie funkcja obsługi przerwania odczytuje ten bajt...
Czyli z płytką można "gadać" normalnie po I2C, za pomocą znanej biblioteki https://www.arduino.cc/en/reference/wire a linię INT (niewątpliwie jest to wyjście) należy podłączyć do jakiegoś wolnego pinu, z którym da się skojarzyć przerwanie zewnętrzne https://www.arduino.cc/reference/en/lang... Możliwe,...
W tej architekturze programu tego nie zrealizujesz. Ramki CAN musisz wysyłać co określony czas. Zrobisz to przy użyciu rutyny obsługi timera ustawionego na zdefiniowaną przez Ciebie częstotliwość. Dane do wysłania muszą być gotowe, gdy nadejdzie przerwanie (nie obliczamy wtedy częstotliwości). Pomiar częstotliwości jest również do przerobienia, bo teraz...
No tak, ale co z tym przerywaniem procedury włączania na rzecz wyłączania? Przecież napisałem: Niezależnie więc od tego, kiedy to żądanie wyłączenia nastąpi, obsługa przez przerwanie wydaje się sensowna. Do rozważenia jest opcja usypiania Arduino po wyłączeniu wzmacniacza. Czyli w procedurze "wyłączania" wyłączasz w ustalonej sekwencji poszczególne...
https://www.arduino.cc/reference/en/lang... Jak działa przerwanie - Jeśli arduino wykryje zmiane stanu pinu, niezależnie co się w tym momencie dzieje (delay, jakaś funkcja) automatycznie uruchomi wybraną funkcje.
Jęśli chodzi o pytanie nr 3 to tak Dodano po 7 Bezpośrednia odpowiedź na pytanie Aby jednocześnie wyświetlać prędkość obrotową (RPM) wentylatora oraz ustawioną moc (np. w formie procentowego wypełnienia PWM) na wyświetlaczu dotykowym podłączonym do Arduino Mega, należy: - Zliczać impulsy z tachometru (pin TACH) wentylatora, przeliczać je na obr./min...
W tym trybie timer po prostu zlicza impulsy zegarowe do niego doprowadzone, jeśli przekroczy zakres to zgłasza przerwanie overflow (nadmiaru) i rozpoczyna zliczanie od nowa. Funkcja obsługi tego przerwania zlicza je zwiększając liczniki f - przechowujący czas z rozdzielczością <1ms i m przechowujący liczbę milisekund. W programie należy korzystać...
Nie licz na gotowe biblioteki, które najczęściej zawierają masę błędów. Napisz swoją obsługę serwa. Timerem wygeneruj impuls zależnie od tego jaki kąt chcesz uzyskać. Wiele serw nie wymaga przerwy pomiędzy impulsami ok 20ms, jeśli jednak ma ona być to też jest proste, po wygenerowaniu impulsu, wywołane zostanie przerwanie, które zmieni konfigurację...
Procesor ATmega od biedy "ma możliwość" obsługi przerwań zgłaszanych z częstotliwością 33 kHz, ale pod warunkiem, że jest programowany w C lub asemblerze, a nie w Arduino ani Bascomie. Obsługa takiego przerwania w C musi być b. uważnie napisana - kilkanaście linii kodu, bez wywołań procedur, mnożeń ani dzieleń.
Witam, Przerwanie to "impuls" pojawiający się raz na określony czas (ustawiasz to inicjalizując przerwanie, przykładowo Time to rodzaj licznika, który ma pewną wartość wstępną, którą ty wpisujesz. Jego wartość zmienia się z taktem zegara, a jak szybko, też ty decydujesz, a jak doliczy do zera, to zgłasza przerwanie). Obsługa przerwania to procedura/funkcja,...
Wyzwolenie przerwania maskowalnego w czasie pracy programu użytkownika powoduje przerwanie działania i wyświetlenie "Err CA80". Zgłaszanie przerwań ma sens tylko w sytuacji, gdy jest odpowiedni program obsługujący to przerwanie. Monitor CA80 wykorzystuje przerwanie maskowalne do pracy krokowej i w CA88. Poza tym pod adres 0FFCFH (przerwanie użytkownika)...
Hm, jak rozumiem, to podczas obsługi przerwania mikro kontroler zostawia cały bałagan wykonujący się w pętli loop i pędzi do tego co w tym przerwaniu się znajduje. Przerwanie znajduje się w funkcji poza pętlą loop, a gdzie definiujemy warunek obsługi przerwania? Do czego zmierzam, czysto teoretycznie analizując zagadnienie (może mieć w przyszłości podłoże...
A konkretnie, które delay powodują problem? Generalnie to wszystkie . To poszczególne "efekty" powinny być wywoływane w konkretnych interwałach czasowych, jako tzw. zdarzenia i niekoniecznie na przerwaniach, a nie same efekty decydować, jak długo mają trwać i blokować wykonywanie pozostałej części kodu. Kod jest do przeprojektowania w taki sposób,...
Do obsługi LCD używam biblioteki LiquidCrystal_I2C.h ona używa delay, jak to sprawdzić ??? Skoro piszesz, że używa to chyba sprawdziłeś? Zapomnij o dziwolągach takich jak LCD z interfejsem równoległym przez ekspander I2C i to jeszcze najgorszy z możliwych czyli PCF8574. - Podłącz wyświetlacz bezpośrednio do uC - Użyj LCD z kontrolerem I2C - OSTATECZNIE...
Typ płytki Arduino to Duemilanove - Połączenie diody LED: zewnętrzna dioda - Czas migania: dowolny - Dalsze działanie programu: zakończenie pracy Wstępna ocena dostępnych informacji - Analiza podanych przez użytkownika danych: - Płytka Arduino: Duemilanove. - Połączenie diody LED: Zewnętrzna dioda podłączona do płytki. - Czas migania: Dowolny (domyślnie...
Przerwanie PCINT na pinie PD7. W procedurze obsługi przerwania włączenie któregoś timera i zerowanie jego licznika. Timer skonfigurowany na PWM z zadaną częstotliwością i wypełnieniem. W procedurze obsługi przerwania Comp timera odliczanie trzech impulsów, potem wyłączenie timera i reinicjowanie licznika impulsów. Jeżeli koniecznie jest zachowanie okresu...
Robiłem eksperyment i w kodzie zostawiłem tylko liczenie impulsów i sterowanie silnikiem. Impulsy wchodzą generują przerwanie w mikrokontrolerze, w obsłudze przerwania następuje liczenie. Czujnik to kontrakton, bo Halla wymagałby zasilania. Może jednak coś w kodzie: attachInterrupt(digitalPinToInterrupt(PI... onStep, FALLING); void onStep()...
Nie jest to układ filtrujący, jego zadaniem jest zamiana sekwencji sygnałów z enkodera na jawne sygnały STEP / DIR. Tak też podejrzewałem, ale podobno bez niego arduino gubiło impulsy, chyba, że to tylko kwestia dobranych wartości dla rezystorów. Jeżeli są to wyjścia typu "otwarty kolektor" powinieneś spróbować użycia "silniejszych" pull-up'ów lub...
W amatorskich aplikacjach nigdy nie bawiłem się w liczenie sum kontrolnych, ani tworzenie jakiś super wymyślnych formatów ramki. Twój uK ma sprzętową obsługę USART i może być widziany jako wirtualny port COM, to najprostszy sposób komunikacji z PC. Możesz sobie przesyłać bajt po bajcie, albo zdefiniować jakiś bufor, który po wypełnieniu wywołuje przerwanie...
(at)JokoPS A to zarządzanie systemem chłodzenia wodnego to wymaga mocy obliczeniowej, że hej... Nie szukaj problemów tam, gdzie ich nie ma. Wykorzystując przerwania możesz spokojnie zliczać impulsy sprzętowo (lini IRQ ci wystarczy), lub programowo, wykorzystując przerwanie timera, w którym będziesz sprawdzał stan sygnałów z wentylatorów. Do tego w...
A jakie są założenia? Pisałeś, że pomiar ma być z dokładnością do mikrosekund? Skoro mierzysz czasy rzędu 100ms, to na pewno musi to być wyrażone z dokładnością do 0,001ms? Nie wydaje mi się. A jeśli rzeczywiście tak musi być to zastosuj inną taktykę - licznik timera rozszerzony na dodatkowe bity przez przerwanie obsługi przepełnienia timera, a sygnał...
Zmieniony program sterownika. dodałem przerwanie timera a w nim: obsługę klawiszy w przerwaniu co 50ms uaktualnienie zegara oraz synchronizacje z wewnętrznym RTC co godzinę pustą funkcję timerIntervalHalfSec w której proponuję odczytywać stan wejść analogowych, nie na raz tylko po jednym. dodatkowo masz przerobioną funkcję switch reagującą na nacisnięcie...
A jaki jest sens obsługiwać tutaj przerwanie w połowie transferu DMA? Wystarczy jedno - po zakończeniu transferu. To nie Arduino, że wystarczy połączyć dwa programy i jakoś będzie działać. Proponuję najpierw zapoznać się z dokumentacją układu i zrozumieć co oznaczają poszczególne funkcje i bity w HAL i RM. Bez tego pozostaje ślepe zgadywanie lub wiara...
Wydaje mi się że jeżeli jedną ramką nie pobudzisz 2 odbiorników to wszystko będzie ok a tak to jeden odbiornik ir powoduje że wchodzi w przerwanie i tam przerwania są blokowane on jest "głuchy nie wie że coś transmitujesz. Wiec jeśli są one w dużej odległości od siebie to możesz tak zrobić inaczej nie ma szans
Witam. Próbuję uruchomić soft dla czujnika DHT22+LCD Nokia ze strony http://feriar-lab.pl/kurs-arduino-18-obs... Niestety najpierw zaimportowałem bibliotekę z innego zródła niz podał autor. Kompilacja została przerwana. Po zaimportowaniu właściwej bibioteki i usunięciu niewłasciwej pojawia sie niestety taki błąd:...
[syntax=arduino] volatile unsigned int temp, licznik = 0; [/syntax] Zmień tu na signed lub wyrzuć unsigned. Czy wiesz co się dzieje (w pamięci procesora) jak od 0 odejmiesz 1 ? Dla uproszczenia możesz wyłączyć jedno przerwanie. Żeby sprawdzić obsługę enkodera należy sobie gdzieś postawić punkty na oście i obudowie pokręcić pare pełnych obrotów, w różne...
Parę lat temu, kiedy planowałem wziąć udział w Kazachstan Solar Challenge, zastanawiałem się nad tym, jak własnoręcznie zrobić sterownik do trójfazowego elektrycznego silnika rowerowego. Po krótkim poszukiwaniu znalazłem interesujący artykuł, który wyjaśnia ten temat dość dokładnie. Postanowiłem przetłumaczyć najciekawsze jego części. https://obrazki.elektroda.pl/1602722800_...
Nie widzę żadnych grubych błędów w tym kodzie, ale może czegoś nie dostrzegam, dziwi mnie tylko że próbujesz coś robić z timer1 w BADISR. BADISR to przerwanie które nie powinno się wykonać, ale się wykonało bo przypadkiem włączyliśmy przerwania od jakiegoś peryferium, a nie napisaliśmy jego obsługi, więc robi się tam obsługę błędów. Nie rozumiem też...
Już widzę kogoś, kto opiera pętlę główną na delay() i próbuje odczytać przyciski do 3ms ;) ( swoją drogą - po co ? ) Ale.. Nie ma i z tym problemu. 1- w obsłudze przerwania z expandera, odczytujesz rejestry expandera z poziomu niskiego dostępu do interfejsu TWI ( bez użycia przerwań ) 2- Zdziwię Cię, ale nawet w obsłudze przerwania, w której to inne...
Swoją drogą, dlaczego zawsze "frakcje" różnych procesorów się ze sobą "jedzą"? Nie jedzą. Równie często używam AVR co i ARM ale na siłę nie pcham AVR tam gdzie nie ma to sensu. AVR ma pewne zalety, takie jak szeroki zakres napięć zasilających. Jesli nie trzeba mocy obliczeniowej ARM, to na siłę nie będę wciskał ARM z stabilizatorami impulsowymi itp,...
arduino obsługa przerwać timer przerwać arduino arduino przerwać
wiertarki futerko wzmacniacz dzwiek laptop pakiet blacha
kuchenka mikrofalowa kuchennka mikrofalowa
VW Touran I/II – podłączenie impulsu drogi do taksometru, GALA, CAN, legalizacja taxi Wolna strefa indukcyjna – jak działa, budowa, marki Bosch, Siemens, AEG, Electrolux, Samsung