Wskazania potencjometru przemapuj na wybrany zakres liczb, jest przykład w Arduino 03. Analog w szkicu Calibration. Do przycisku zainstaluj jakąś bibliotekę rozróżniającą krótkie i długie przyciśnięcia, krótkim możesz sobie startować/pauzować, długim zrobisz reset. Do zliczania użyj millis(), przykład masz w #2.
Atmega 328 Przerwanie 50hz do sterowania fazowego blokuje odliczanie millis(); , występują opóźnienia w całym programie. Trudno cię zrozumieć, ale sprawdzanie millis() wskazuje na to że nie używasz potencjału jaki jest w sprzęcie, powinieneś ustawić przerwanie tak aby timer wywołał je kiedy jest potrzeba zmiany stanu wyjścia, albo w ogóle bez udziału...
Jak to zrozumiesz to sobie sam napiszesz :) [syntax=c] long odliczanie = 0; // zmienna long do zapisania czasu pojawienia się '1' void setup() { Serial.begin(9600); // komunikacja serial baudrate 9600 } void loop() { if (Serial.available()){ // jesli ktoś coś wklepał w serial monitorze char p = Serial.read(); // odczytaj to co wklepał i zapisz jako...
Po co symulator/emulator do takiego projektu. Choć oczywiście są i LCD + DS obsłużą bez problemu: https://www.youtube.com/watch?v=QVn9u9vg... Bierzesz płytkę Arduino Nano i podłączasz 1 czujnik, wgrywasz program przykładowy z bibliotek DS18B20 + rezystor 4,7 i testujesz - od razu masz wyniki pomiaru na terminal i test poprawności załatwiony. Potem...
No proszę, o tym pisałem, od razu się pojawi ktoś, kto wie lepiej i poprawi. Zacznij od millis(), z przykładu blink: [syntax=c] unsigned long currentMillis = millis(); if (currentMillis - previousMillis >= 10UL) { // save the last time you blinked the LED previousMillis = currentMillis; zmienna--; }[/syntax] Możesz sobie zrobić odliczanie np. co 10ms...
Zanim napiszesz kolejny post zaczynający się od "dlaczego mi nie działa", warto rozważyć, czy tak na prawdę użycie Arduino jest a) możliwym rozwiązaniem zadania, które sobie postawiłeś b) mieści się w zakresie Twojej wiedzy i umiejętności. Ten wątek utworzyłem, w celu pomocy udzielenia odpowiedzi na te dwa pytania, i zebrania w jednym miejscu linków...
Kod bazujący na przykładzie z Arduino IDE - BlinkWithoutDelay. Unikaj stosowania delay() , zwłaszcza tak długich czasów jak w Twoim kodzie - w tym czasie Arduino nie reaguje na nic ( no..prawie na nic ;) ) . Jeśli wartość ADC "skacze" , zastosuj uśrednianie tej wartości. Chyba, że nic prócz tego kodu nie będzie wykonywane, to gdzieś w pętli możesz dodać...
Przyjąłem że masz przycisk chwilowy a przekaźniki sterowane stanem wysokim. Tutaj poprawki : [syntax=c]#include <OneWire.h> #include <DallasTemperature.h> #define PIN_SENSOR 7 // pin do ktorego podloczono DS18B20 #define PIN_PK1 4 // pin sterujacy przekaznikiem 1 #define PIN_PK2 5 // pin sterujacy przekaznikiem 2 #define PIN_PK3 6 // pin...
Witam, ...silnik bedzie sie awersowal i rewersowal z czestotliwoscia 100 ms. W tym samym czasie w przegladarce internetowej bedzie podglad na temperature tego silnika w kilku jego miejscach. Oczywiscie trzeba bedzie zrobic tam rowniez buttony wlaczania i wylaczania tego silnika. Narazie tworze prototyp na diodach. Najpierw zdecyduj się na język jakim...
https://obrazki.elektroda.pl/4024708700_... Witajcie moi drodzy. Przedstawię tu pierwszy na świecie tutorial programowania modułu WiFi WB2S, czyli BK7231. Moduł ten występuje w wielu urządzeniach smart home, a w internecie panuje opinia, że nie można stworzyć dla niego własnego firmware. Nic bardziej mylnego - pokażę tu krok po kroku...
Nie wiem jak zrobić czy na Deley, czy na millis. Nie mam pomysłu jak ułożyć kod. Może ktoś pomoże?? Dziękuje za pomoc Czas odliczany przez funkcję delay() jest dość dokładny, bo odcinki czasowe 1-milisekundowe są formowane przez wbudowany w procesor Timer0. Arduino automatycznie (bez twojej wiedzy) konfiguruje go do tej funkcji. Jednak zliczaniem tych...
https://obrazki.elektroda.pl/7335795800_... Przedstawię tutaj płytkę ESP32-2432S028R oferującą przede wszystkim duży kolorowy wyświetlacz LCD TFT 2.8" oparty o sterowniki ILI9341 (wyświetlacz) i XPT2046 (rezystancyjny panel dotykowy, wraz z rysikiem), a to wszystko za raptem około 50 zł. Pokażę tu jak można przykładowo obsłużyć ten...
Rozumiem z tego, że zakłócenia pojawiają się na wejściach Arduino? Lepszy debouncing można by zrobić tak: odczytywać w pętli wszystkie wejścia i zapisywać do zmiennej (każde wejście do innego bitu); po odczytaniu kompletu wejść porównywać tę zmienną z poprzednią wartością - jeśli była zmiana, zrestartować odliczanie czasu debouncingu; kiedy upłynie...
https://obrazki.elektroda.pl/1761046600_... Pokażę tu jak uruchomić z Arduino czterocyfrowy wyświetlacz 7-segmentowy sterowany poprzez rejestr przesuwny 74HCT164 i cztery tranzystory BC546. Płytka z wyświetlaczem znów będzie odzyskana z elektrośmieci. Będzie to już kolejny temat, w którym uruchamiam wyświetlacz, gdyż omawiałem już...
https://obrazki.elektroda.pl/6206626500_... Przedstawię tutaj prosty w użyciu moduł pozwalający na uzyskanie dodatkowych portów I/O. Jeden PCF8574 sterowany jest tylko dwoma sygnałami, a daje nam aż całe 8 konfigurowalnych wejść/wyjść razem z dodatkowym opcjonalnym sygnałem przerwania. Co więcej, dwa piny mogą wysterować jednocześnie...
https://obrazki.elektroda.pl/8539859500_... Witam! Prezentuje wam zbudowane przeze mnie ciekawe efektowne urządzenie. W 2013r. zbudowałem zegar widmowy w oparciu o projekt pewnego użytkownika z forum (zegar 4 lata bez przerwy pracuje i ma się dobrze). Pewnego dnia przeszukując aliexpress przypadkowo natrafiłem na kit kuli z efektem...
https://obrazki.elektroda.pl/9290552300_... Witajcie moi drodzy. Zapraszam na kolejną część mojego tutoriala PIC18F2550 i kompilatora SDCC . W tej części poznamy sterownik wyświetlacza LED MM5450, połączymy go z PIC18F2550 i napiszemy od 0 implementację ich komunikacji. Docelowo użyjemy MM5450 do wysterowania wyświetlacza LED 5 na...
Dlaczego nie użyłeś ESP? Miałbyś możliwość sterowania z telefonu czy przez przeglądarkę Właśnie, podchodzenie do rolet żeby nacisnąć przycisk trochę bez celu, no niby jest tam jakiś timer. Ja zrobiłem na początku na pilota ir, później już na esp32 z prostymi krokowcami z przekładnią, mam sterowanie po ir i przez sieć plus odliczanie kroków czyli zasłanianie...
https://obrazki.elektroda.pl/5405238700_... Witam. Dzisiaj ja postanowiłem dodać kolejny artykuł pt. naświetlarka UV do wykonywania obwodów drukowanych metodą naświetlania. Naświetlarka powstała z racji "potrzeba matką wynalazku" aczkolwiek długo nosiłem się z zamiarem jej wykonania a główną przeszkodą był jak dla mnie układ czasowy...
https://obrazki.elektroda.pl/9159355200_... Dzisiaj przedstawię pierwsze kroki z programowaniem taniej płytki Lilygo TTGO T-OI Plus/Mini D1 Plus, której sercem jest ESP32-C3 wraz z 4MB pamięci Flash. Na pokładzie znajduje się też konwerter USB na UART CH340K i złącze USB typu C, a w ramach "plecaczka" płytki jest slot na ogniwo 16340...
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...
Wrzucam kod na którym dziś pracowałem (bez lepszych efektów). Wywaliłem z niego obsługę klawiatury, lcd i eeprom żeby był czytelniejszy. Po naciśnięciu przycisku na klawiaturze przechodzi program do stanPodlewania 1, po czym następuje odliczanie itd. 450 jest to liczba impulsów na litr. W tym wypadku po przekroczeniu liczby impulsów wyłączana jest pompa...
https://obrazki.elektroda.pl/6460011900_... Witajcie moi drodzy. Przedstawię tu wnętrze starego radia Universum UR-1052 Quelle z 1994 roku. Radio moją uwagę przykuło nietypowym kształtem obudowy oraz samym sposobem jej złożenia. Radio to odbiera standardowo AM/FM oraz oferuje dodatkowo zegar i budzik z dość ładnym, czerwonym 7-segmentowym...
Tak, kolega (at)tos18 nakierował mnie na tą funkcję millis() i ogarnąłem ją w taki sposób jak przedstawiłeś, natomiast dziękuję za switch case () - wezmę te funkcję na warsztat. Obecnie zastanawiam się, czy zastosowanie funkcji for (int i=1; i<5; i ++), umożliwi mi odliczanie odpowiedniego czasu dla danego "zestawu"? Chodzi o schemat blokowy funkcji...
Witam serdecznie, mam problem z wykonaniem projektu ze strony http://www.circuitstoday.com/measuring-w... Części które posiadam: Arduino UNO Wyświetlacz I2C 16x2 LCD prosty enkoder ze swichem lub enkoder dfrobot df400 Czujniki krańcowe, fotoelektryczne, rezystory Wykonałem schemat ze strony, zmodyfikowałem kod programu...
Dokładnie tak jak piszesz , nie znam sie na programowaniu ,powiedzmy że się uczę to co napisałem ten program spełnia moje warunki lecze , są pewne niedogodności własnie zwiazane ze stanem przycisków jak i z funkcją delay , nie wiem jak wpisac zamiast delay mills , zawsze wyskakuje mi jakiś błąd Dodano po 6 Więc napisałem tak jak kolega powiedział lecz...
Cześć wszystkim, Zwracam się do Was zapytaniem odnośnie możliwości wykorzystania układu Arduino, a mianowicie chciałbym stworzyć w oparciu o ten układ urządzenie zliczające ilości wyprodukowanych sztuk wyrobu. Zliczanie miałoby odbywać się poprzez wyzwolenie pierwszej krańcówki rozpoczynającej odliczanie czasu aż do momentu wyzwolenia drugiej krańcówki...
To samo w przypadku opóźnień za zwyczaj nie potrzeba tutaj kosmicznej dokłądośći. W wypadku stosowania mechanizmów typu event-driven, gdzie jest istotne odliczanie czasu dla poszczególnych zadań, niestety jest potrzebna dokładność dla funkcji millis(), micros() etc. Może nie "kosmiczna", ale precyzyjna. Dla płytek Arduino z AVR stosowanie programowania...
Cały ten kod można sobie w du.... włożyć, bo [syntax=c] delay(t); [/syntax] to przykład jak nie pisać programu. Jak niby przy takim rozwiązaniu zatrzymać odliczanie? Wyłączając zasilanie? Mamy rym i można robić kampanię reklamową "Zatrzymujemy odliczanie przez zasilanie!".
Dziękuję za materiały. banmar_2005 Powiedz czy na tym kodzie i tych materiałach zbudowałeś swoją stację , to jest projekt finalny czy będę musiał coś kombinować ? jest dwa rodzaje wyświetlaczy Nokia 5110, autor projektu zastosował trudno dostępny i droższy i pod taki wyświetlacz pasuje płyta główna, masz trzy wyjścia, albo poprawisz wyprowadzenie ścieżek...
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...
Spróbuj z j'em pokombinować, może gdy jest =0 to jest to końcowe odliczanie i trzeb zobaczyć co dla wczesniejszych if'ów?
Moduł główny zbiera sygnały z czujników i ma główny kod. Dwa moduły(10m od głównego) wyświetlają dane na wyświetlaczach ośmiosegmentowych które zrobiłem. Panel(5m od głównego arduino) z przyciskami i wyświetlaczem lcd. Nie mogę głównego modułu umieścić w panelu. Biorąc pod uwagę że te wyświetlacze wykorzystują ic2, wykorzystałem expander do przycisków...
Witam, Jestem początkującym elektronikiem i postanowiłem zbudować prostego robota z użyciem arduino. Jego zadaniem byłoby omijanie przeszkód wykrytych za pomocą dwóch ultradźwiękowych czujników odległości. W tym wypadku po wykryciu przeszkody zależnie od tego którym czujnikiem jedno z kół zaczęłoby się obracać w druga stronę na określony czas, aby skręcić,...
Szczerze to nie wiem czy musi być NO_BLOCK. Chciałbym zrealizować odliczanie czasu. Cały czas się uczę tego wszystkiego. Zmienne do odliczania czasu [syntax=c] volatile uint64_t milisekunda=0,sekunda=0;[/syntax] Przerwanie INT0, TIMER2 do regulacji fazowej. INT0 do detekcji przejścia przez zero wykorzystuje. Przerwanie INT1 do enkodera pełno krokowego...
Cześć wszystkim, Po ponad 2 miesięcznej przerwie wróciłem do swojego projekciku i niestety o ile wtedy wszystko szło w dobrym kierunku, to teraz pozapominałem niektórych kwestii i na dodatek przekombinowałem teraz z kodem co w efekcie przysporzyło mi kilku problemów. Program pisany jest w C# i ma współpracować z Arduino, do którego podpięte są dwa włączniki...
milis nie jest sprzętowe, bo w przerwaniu jest inkrementowana zmienna, którą zwraca funkcja Czyli Arduino rezerwuje timer na te cele. Skoro tak, to przerwania nie wpłyną na dokładność tego milis, chyba, ze trwają ponad 1ms A z ciekawości, jak realizowany jest micros? Przerwania z czestotliwością 1MHz nie wchodza w grę, pewnie timer do generowania milis...
Witam jestem poczytujący w ardruino czy można dopisać do tego kodu załączanie na ustalony czas ustawiany na lcd żeby przekaźniki włączały się po koli . Pirewszy np:2 sek wyłącza i przechodzi do kolejnego przekaźnika znowu na 2 sek. [syntax=c]#include <Wire.h> #include <LiquidCrystal_I2C.h> // biblioteka do LCD LiquidCrystal_I2C lcd(0x27,...
Program jest wykonywany w kolejności jak jest napisany. jeśli chcesz dodatkowy silnik uruchamiać np. co 10 obiegów pętli razem z drugim silnikiem to wpisz odpowiedni warunek w if drugiego silnika i wyłącz go w odpowiednim miejscu zerując zliczanie obiegów pętli. Jeśli chcesz niezależnie np. co 30min, napisz odliczanie czasu chociażby z wykorzystaniem...
Przecież to nie ma sensu. Ani poprzedniczas nie przechowuje poprzedniego czasu, ani aktualnyczas nie ma nic wspólnego z aktualnym czasem. Zmienna 'aktualnyczas' ustawiana jest każdorazowo przez millis() w funkcjach prog2() oraz prog3() (odnoszę się do pierwszej wersji zamieszczonego programu). W dalszej kolejności, jeżeli różnica pomiędzy 'aktualnyczas'...
To można policzyć odpowiednio dodająć i mnożąć sekundy,
stany poczatkowe wejśc z 'buttonami' nie są ustalone (brak podciągania do Vcc, bądź do GND rezystorami Zgodnie z tym, co jest na obrazku w poście #4 wejścia te są podciągnięte do zasilania, a więc użycie pinMode(x, OUTPUT) jest całkowicie zasadne. Dodano po 5 A program główny, sztuczki z millis same się zrobią? Trudniejszej metody niż "ręczne" odliczanie...
No bardzo możliwe, w sumie to zmiana wartości jakieś zmiennej na określony czas, cykl 25s. Kodu nie poprawię, bo nie zdążę ogarnąć dzisiaj co do czego, ale wrzucę kilka wykorzystanych kiedyś przykładów, używających tylko millis() do robienia różnych dziwnych rzeczy. Można zrobić w jednej funkcji jak tu: [syntax=c]const int buzzer=13; const int button=2;...
Zacznij od dodania przed [syntax=csharp]digitalWrite(LED_PIN, LOW); // switch on LED[/syntax] ustawienia zmiennej np "czas" na wartość np w sekundach przez jaki ma wyjście byc aktywne. W setup() dopisz ustawienie timera najlepiej w tryb ctc na np 10ms (zależy jakie zrodzielczości cie interesują). W przerwaniu zrób dzielnik aby uzystać sekundę, np: [syntax=c]ISR(...
Witam. Chcę sprawdzić stan konta, w tym celu wysyłam polecenie AT z portu szeregowego AT + CUSD = 1, „* 101 #”, po kilku sekundach otrzymuję odpowiedź na port szeregowy i wszystko jest cacy. Problem pojawia się, gdy chcę sprawdzić status konta w ten sposób: altsoftserial.print („AT + CUSD = 1, \" *101 # \ ""); Widzę na porcie szeregowym,...
Cześć, Chce Wam przedstawić moje wypociny. Kod zegarka opartego o ring 12 led ws2812 i czujnik temperatury DHT11. Ponieważ nie posiadam RTC - czas jest wprowadzony w kodzie. Oczywiście można sobie dopisać odpowiednie procedury ustawiania czasu np poprzez przyciski, port com, pobrać z RTC lub z internetu, BT itd. Projekt powstał wczoraj w nocy, tak z...
kamilple, Powiedz po co ma Arduino odliczac do 30' po nacisnieciu przycisku??? Z tego co widze masz 2 opcje: 1) po nacisnieciu przycisku robisz pomiar i wyswietlasz go a po 30' ekran gasnie, 2) robisz odczyty co 30' ale wyswietlasz po nacisnieciu przycisku 30' mozesz to zrobic tak: [syntax=c] long a = 0; loop() { .... a= (millis()/1000); //poczatek...
Witam Na początku chciałbym powiedzieć, że nie mam dużego doświadczenia z platformą. Tak naprawdę poznałem ją jakieś 2 lata temu, gdy kupiłem urządzenie działające na Arduino Nano, byłem po prostu pod wrażeniem, jak coś tak prostego może w sobie ogarnąć tak wiele. Z lutownicą jestem od dziecka czyli już jakieś 34 lata, gdyby w moich dziecięcych latach...
Witam, W skrócie: -brama dwuskrzydłowa, -siłowniki z własnymi krańcówkami, (najtańsze "super power jack"), -preferowane arduino ale nie jest to warunek,po prostu mam i zalega mi arduino uno Oczekiwane: -sterowanie z pilotów + przyciski w domu np. dzwonkowe + klawiatura do wpisania kodu, -automatyczne zamykanie bramy po zdefiniowanym czasie z poziomu...
Witam, w pierwszych słowach: zdaje sobie sprawę że można zrobić to lepiej, ale uczę się i czerpię z tego rozrywkę. problemem numer jeden są przerwania i to chcę naprawić. Do rzeczy: bawiąc się chcę poskładać zegar binarny. Reprezentacja godzin za pomocą diod. Odwrócona logika: dioda świeci gdy na nóżce jest stan LOW. Chcę zmieniać wartość godzin i minut...
Witam. Jestem TOTALNIE początkujący w pisaniu programów na Arduino. Ze znajomymi bawimy się w ASG i chciałbym zbudować atrapę bomby. To co udało mi się zrobić do tej pory to odpalenie wyświetlacza, diody która mruga 3 razy wraz z buzzerem i wyświetlenia podstawowego tekstu. Tekst wygląda tak "Wpisz Hasło" " _ _ _ _ " Próbowałem zrobić coś aby po kliknięciu...
arduino odliczanie czasu odliczanie czasu timer arduino odliczanie sekund
falownik eurodrive kodek dekoder korektor graficzny wzmacniacz
tatarek sterownik interfejs diagbox
Sprawdzenie zgodności fazy głośników w zwrotnicy Niedopasowanie fazowe głośników a jakość dźwięku