Przycisk nie będzie używany tak jak standardowo do resetu program Tak się nie da, przycisk jest podłączony do fizycznego wejścia Reset mikrokontrolera i nie można zmienić programowo jego funkcji.
Pokazujesz dowolnie wybrany fragment kodu, sformatowany w nieczytelny sposób. Na tej podstawie nikt Ci nie pomoże. Ten fragment wygląda bzdurnie, bo żeby weszło w case 0: buttonPresses musiałby mieć wcześniej wartość -1. Trudno zgadnąć, co to znaczy "dalej nie wraca", bo nie wiadomo, co, skąd i dokąd miałoby wracać.
No i słusznie wyskakuje... nie masz deklaracji ani definicji tempC w pętli głównej programu, występuje tylko jako zmienna lokalna w jednej z funkcji.
zegar tyka 65535-0
Dodajesz pliki c zamiast cpp. Kod skompilowany jako C nie ma odpowiedniej dla C++ [url=https://pl.wikipedia.org/wiki/Dekor... dlatego linker nie może znaleźć potrzebnych funkcji.
Ludzi, którym nie działały if'y było już tu wiele;) Jeżeli nie wierzysz w tą funkcję z arduino to powinieneś ją przetestować czymś znanym. Np: [syntax=c] String stringOne = "February 18, 2016|36|N/A|N/A|67%|29|ESE at 7|30.12|Partly Cloudy|17.0|06:40 AM (CET)|04:43 PM (CET) "; if(stringOne.indexOf("|Partly Cloudy|")>=0) Serial.println("|Partly Cloudy|");...
Co "toto" jest? ISR_NO_BLOCK(TIMER0_COMP_vect) Wyszukiwarka nie działa? Czemu kolega strzela na ślepo? Ja rozumie "dawno, dawno temu, za siedmioma górami, za siedmioma lasami, gdy nie było Internetu..." Ale teraz? https://www.nongnu.org/avr-libc/user-man... Tak ciężko znaleźć? Przy okazji. Chce kolega koniecznie dziedziczyc...
ICP -Funkcja Input Capture
ChatGPT wyłączyli? :) unsigned long poprzedniCzas6 = 0; // czas poprzedniego pomiaru dla przycisku na pinie 6 unsigned long poprzedniCzas5 = 0; // czas poprzedniego pomiaru dla przycisku na pinie 5 const unsigned long opoznienie = 300; // czas opóźnienia w milisekundach int zw_na_warstwe = 0; void zwoje() { unsigned long aktualnyCzas = millis(); if...
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ć...
Cześć, Zasadniczo dobrze, ale nie w pełni zgodne z wytycznymi jakie podałeś. Teoretycznie brak modulo 256 w zależności od implementacji procesora w pewnych sytuacjach może spowodować, że wynik może być nieprzewidywalny. Checksum += data[i] % 256;
czyli o ile dobrze myślę, to tutaj bym wartość miał nie zwracaną bezpośrednio przez funkcję, ale musiałbym podać "wskaźnik" do zmiennej w argumencie funkcji i moja funkcja zapisze wartość do tej zmiennej. A sama funkcja mogła by zwracać swój stan 0 - udało się wykonać funckję prawidłowo; 1 - "jakiś tam błąd". Ale to jest proste do zrobienia. Najpierw...
To dioda nadawcza a nie odbiorcza...
Tak. Sugeruję tylko nazwać funkcję czytelniej np Enter(). W języku C przyjęło się, że dużymi literami piszemy makra, natomiast pozostałe nazwy funkcji i zmiennych już nie. (chodzi o wszystkie litery w nazwie duże) Wywołania wymagają dodatkowych nawiasów (), w tym przykładzie ENT(); UP(); itd
Jakie masz typy tych zmiennych? pom powinna mieć 32 bity - uint32_t albo unsigned long.
http://obrazki.elektroda.pl/3848101600_1... Coraz bardziej popularne jest budowanie zegarków własnej konstrukcji. Pochodzący z Brazylii autor poniższego projektu przekonuje, że podobne konstrukcje są stosunkowo proste i nie wymagają zaawansowanych umiejętności. Poniższy zegarek nie jest też zwykłym czasomierzem. Posiada on funkcje pomiaru...
Czyli co mam zrobić? Przemapuj ograniczony zakres ruchu i traktuj to jako pełny(!) W Arduino isnieje do tego funkcja 'map'. e marcus
Dokładnie tak jak napisałeś. PWM jak ma dawać jakieś stałe napięcie to trzeba dołożyć zewnętrzny filtr RC. Przykłady programów z gotowymi funkcjami znajdziesz w 3 pierwszych rozdziałach (analogRead, analogWrite, map, constrain), schemat filtra pewnie też gdzieś tu na forum leży. Gotowe funkcje Arduino wykonują się w czasie liczonym w us, dziesiątkach...
prosić o pomoc w napisaniu kodu Jasne, ale na początek wklej to co sam już napisałeś i pytaj o konkretne problemy. Tutaj nikt za Ciebie tego nie napisze, żeby była jasność.
Ciekawe jak zrobisz z tego funkcję z parametrem.
Funkcja tobin To jest źle: unsigned int bitval = 65535; Ponieważ binarnie jest to 16 jedynek, a dalszy ciąg tej funkcji wyraźnie robi bitowe AND z tą liczbą po czym bitowo przesuwa w prawo, by na tej podstawie sprawdzić czy na danej pozycji jest 0 czy 1. Łatwo się domyślić że powinna tutaj na starcie być liczba gdzie MSB = 1 a reszta = 0. Czyli (najprościej...
Kłania się tutaj obsługa strumienia danych. Find szuka danych lecz nie zapamiętuje tego w czym szukało. Jak szuka 'kolega' to na tych samych danych nie może szukać 'kot'. Musisz zapamiętać określona ilość znaków a potem przeszukiwać je pod kątem 'kolega' lub 'kot'.
Tylko cały problem polega na tym, że chciałem zrobić to właśnie z arduino gdyż mam tam biblioteki i funkcje obsługujące przeróżne rzeczy o jakie będę chciał rozbudowywać projekt. Wiem, że wszystko da się napisać natywnie w C jednak chciałem skupić się na celu a nie oprogramowywaniu na niskim poziomie każdej funkcji.
W Arduino są funkcje do konwersji między tablicą char i String. Linki już miałeś podane do Arduino Reference, a tam na dole spis funkcji/metod z przykładami.
Wartość zmiennej wysyłanej z komputera poprzez terminal czy przez BTH jest przechowywana chwilowo. Warto wykorzystać SwitchStatement do setowania np. innej boolowskiej. W twoim przypadku będzie to mniej więcej tak: [syntax=c] int Data, wartosc = 0; bool strob_b; void setup() { Serial.begin(9600); pinMode(5, OUTPUT); } void loop() { if (Serial.available())...
Ja tam nie mam żadnego problemu żeby go skompilować, ściągnij sobie najnowszą wersje arduino, między 1.0 a wcześniejszymi trochę pozmieniał się kod. Ja mam 1.0 i wszystko działa [syntax=c]int buttonPin = 2; int ledPin = 13; int buttonState = 0; void setup() { pinMode(ledPin, OUTPUT); pinMode(buttonPin, INPUT); } void loop(){ buttonState = digitalRead(buttonPin);...
Spr u buję pomóc, choć przynajmniej w tym poście - pytająco: 1. Dlaczego piny które nie są rekonfigurowane w trakcie pracy zamiast w setup() konfigurowane są wielokrotnie w loop()? (wywołania pinMode() ) 2. Jaki cel mają puste pętle " while (...) {} "? Zasadniczo psuje to wzorzec narzucony przez Arduino. Słuszną drogą jest bieżące i cykliczne sprawdzanie...
Niepotrzebnie mieszasz myślowo różne systemy walutowe. [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> #include <Arduino.h> unsigned long FlagTime; void setup(){ // to jest odpowiednik main Serial.begin(9600); DDRB &= ~(1 << DDB0); // ustawienie pinu B0 jako wejście ( wejście licznika ICP1) PORTB |= (1 <<...
Tu jest mała pułapka. Pin 0 to najczęściej RX od USART a pin 1 to jego TX. Arduino mają najczęsciej włączony bootloader który też uruchamia USART który przejmuje te dwa piny. Jeśli chcesz wykorzystać te piny do komunikacji to nie ma sprawy, ale jak chcesz na nich ustawiać lub odczytywać stany to musisz wyłączyć odbiornik i nadajnik. Przykładowo dla...
U mnie również dostępna opcja "Additional Boards Manager URLs" https://obrazki.elektroda.pl/7687333300_... Napewno masz zainstalowaną wersję 1.8.9? Jeżeli próbowałeś instalować z apt, to ją wywal "sudo apt purge --remove arduino".
Programowaniem bawię się co prawda od niedawna, ale tak sobie myślę, że nie bez powodu w konsolach 8 bitowych były 4 przyciski i krzyżak. Dzięki temu w 1 przesłanym bajcie od razu przesyłasz stan wszystkich przycisków. No a jak jest pilot "master" to w 2 - jest jeszcze start/menu. Oczywiście w Arduino podłączasz 8 przycisków do różnych pinów - najprościej....
Nie traktuj tego jak gotowca, nawet nie wiadomo, czy działa, po prostu pozwoli Ci poznać poszczególne funkcje.
Pomiar odległości wykonywany jest dziesięciokrotnie z półsekundowymi przerwami między pomiarami, co daje łączny czas trwania tej sekwencji = 5 sekund. To prawda. Rozwiązanie to zastosowano zapewne dla lepszego zobrazowania zmian odległości w terminalu. Dla prób może zostać ale w docelowym kodzie lepiej wykonywać jeden pomiar w każdej iteracji pętli...
Witam, pewnie już sam zauważyłeś, że masz stałe opóźnienia w funkcjach rysujących. Pozdrawiam.
Trzeba dodać lokalną funkcję pomocniczą procfun (): processor () ma pozostać nie-statyczna.
co mogło by spowodować niekontrolowane działanie programu (takie jak opisałem, że po kilkunastu godzinach jest kompletny freeze)? Poza utraconą łącznością po I2C z modułem RTC, to raczej nic takiego nie ma, co spowodowałoby takie zachowanie. Dodano po 16 Spróbuję to napisać w formie alarmu. W bibliotece RTClib, którą aktualnie używasz nie ma wprost...
Aby nie pogubić się w kodzie, zwykle w takich sytuacjach tworzy się tzw. maszynę stanów. Aplikacja w danym momencie znajduje się w jednym z nich i przy odpowiednich warunkach przechodzi do innego stanu. Łatwo wtedy rozwijać aplikację o kolejne stany i zachowania. W Twoim przypadku proponowałbym takie stany aplikacji: entering_pin // tryb wprowadzania...
W Arduino jest odpowiednia funkcja: delayMicroseconds(10);
Analogowy miernik VU i zegarek (projekt oparty na platformie Arduino) http://obrazki.elektroda.pl/8058184000_1... http://obrazki.elektroda.pl/6158149700_1... http://obrazki.elektroda.pl/9668306800_1... Projekt ten przywraca do świetności stary, analogowy miernik VU, poszerzając jego funkcjonalność o możliwość...
W Arduino 1, w funkcji receiveEvent() nie powinieneś wywoływać Serial.print() - [url=http://www.gammon.com.au/forum/?id=...
milis nie jest sprzętowe, bo w przerwaniu jest inkrementowana zmienna, którą zwraca funkcja
Całą dokumentację do arduino masz na dysku(Pomoc->Referencje). Odnajdź "Serial" i przeczytaj co robią wszystkie dostępne funkcje. Na pewno znajdziesz coś odpowiedniego.
Witam Szczerze przyznaję że nie programuję dla ARDUINO, ale czy w tym if'ie cnt i inkrementował bym ją od 0 do 999 cały czas porównując do Twojego czasu zapamietanyCzasLED1 jeśli cnt < zapamietanyCzasLED1 to włącz LED jeśli nie to wyłącz. A tak nawiasem mówiąc to grzałką elektryczną można wędzić? :D Pozdr.
Przecież alarm jest funkcją, więc wywołanie musi być alarm();
Chyba RB6 mam źle podłączony do D4 To jest prawidłowo. Ten schemat to nie Arduino (tylko pokaz zasady programowania mikrokontrolera Microchip), chodzi tylko o to, aby CLK (czyli D4) połączyć z RB6, a Data (czyli D5) połączyć z RB7. Cały czas mylisz pojęcia. Nie ma co patrzeć na standardowe funkcje Arduino, tylko w jaki sposób zdefiniowane w programie....
Może nie tyle sprawdzanie co odwołanie się do funkcji "MyHandleNoteOn(3,127,127);"
kurcze nie dobrze bo dalej nie działa, nie za bardzo kumam jak wywolac funkcję
Arduino UNO Mini Limited Edition posiada wszystkie funkcje Arduino UNO, ale jest czterokrotnie mniejsza od pierwowzoru, a USB typu A zastąpiono złączem USB typu C. Dlaczego gniazdo USB -C nie jest złocone ?! :)
Arduino wymyślono po to abyś nie musiał grzebać w rejestrach. Jeśli to potrafisz nie nie używaj arduino. Oczywiście możesz zmieniać rejestry timerów ale przez to niektóre funkcje mogą przestać działać: https://arduino-info.wikispaces.com/Time... Napisz co chcesz osiągnąć a nie jakimi metodami to będzie można coś podpowiedzieć.
Dlaczego czytasz adr=0 a nie 30001 (30000)? Podaje się w offset w danej grupie adresów, a przesunięcie robi już sama funkcja.
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...
1. Ja się uczyłem z tej książki: https://helion.pl/ksiazki/jezyk-c-szkola... Dobrze opisane podstawy języka. 2 i 3. Cóż chyba najlepiej zacząć od podstaw, które arduino bezczelnie omija. Musisz zapoznać się z wszystkim co było "pod spodem" funkcji na arduino. Czyli co to są rejestry, jak je obsługiwać...
Wykorzystaj przerwanie timera - w nim naprzemiennie wyświetlaj to co potrzebujesz. Wada - do LCD nie możesz się odwoływać z poziomu programu głównego. Chyba, że sprytnie napiszesz funkcje dostępu do LCD.
Nawet jak wykomentuje millis to przełączanie wyjść działa dla obu na raz. Nie wiem dlaczego... Może dlatego, że używasz wspólnej zmiennej startMillis dla różnych LED. Natomiast currentMillis wystarczy, że będzie zmienną lokalną funkcji funkcja (), przynajmniej tak to wynika z zamieszczonego kodu. Generalnie zamiast używać kolejnych zmiennych np. pir1,...
Dopisałeś vin to mogłeś odrazu sprawdzić menu. Teraz albo wykup online albo jest tu temat na elce jak to ominąć za pomocą Arduino
Jeśli wszystkie tablice są jednakowej długości, to może zrób z tego tablicę dwuwymiarową. Napisz funkcję wyświetlającą, która oczekuje w parametrze wskaźnik na char i przekazuj odpowiedni adres elementu z tablicy. np. Deklarujesz tablicę tak: [syntax=cpp] char tablica[2][10] = {{1,2,3,4,5,6,7,8,9,10}, {11,12,13,14,15,16,17,18,19,20}}; [/syntax] Funkcja...
Witam, mam pytanie, jestem zielony w Arduino, bo dopiero zaczynam... Czy w Arduino jest możliwe przypisanie danej funkcji do innego styku - w sensie, gdy do pinu np. 2 zostanie podane napięcie, dzieje się jakaś funkcja - "naciska" się dany klawisz... i tak z każdym pinem - do pinu nr 3 zostanie podane napięcie, to naciska się inny klawisz... Dziękuję...
Znalazłem w necie. Trzeba tylko zobaczyć co robią funkcje Arduino, np "attachInterrupt".
https://arduino.stackexchange.com/questi...
Tak, dokładnie.
DUE jest na ARM a to inna architektura, jest problem z timerem, tu masz rozwiazanie http://forum.arduino.cc/index.php?topic=... Pozdr
No to radziłbym się zaznajomić z tego typu pojęciami bo są to podstawy. Otóż w języku C mamy cztery klasy pamięci. Określają one widoczność zmiennych oraz czas ich życia. Są to: auto , register , static oraz extern . Wszystkie zmienne deklarowane w funkcji (bez słowa kluczowego static) należą do klasy auto . Zakres ich widoczności oraz czasu życia określa...
funkcją if.
Dzięki za pomoc ale zrobiłem tak: [syntax=c]int getPYInt(int PYIntx) { int PYInt; if (PYIntx == 0) return PYInt = 0; if (PYIntx == 1) return PYInt = 5; else if (PYIntx == 100) return PYInt = 255; else if (PYIntx > 0 && PYIntx < 100) return PYInt = round(((PYIntx*2.55)/10)*10); }[/syntax] i działa :)
[syntax=c]void Fases() { digitalWrite(TAH, (vala && !valb) ? HIGH : LOW); digitalWrite(TAL, (valb && !vala) ? HIGH : LOW); digitalWrite(TBH, (valb && !valc) ? HIGH : LOW); digitalWrite(TBL, (valc && !valb) ? HIGH : LOW); digitalWrite(TCH, (valc && !vala) ? HIGH : LOW); digitalWrite(TCL, (vala && !valc) ? HIGH : LOW); } [/syntax] Już w tym fragmencie...
Nie jestem na tyle zaawansowany by znać tę funkcję.
Naprawdę tak trudno znaleźć opis najczęściej używanej funkcji w Arduino? Pomyśl, jaki argument może mieć funkcja czytająca stan wejścia?
Myślałem, że te kody mieszają się (nowy z poprzednim) Jak to "mieszają się"? Rozwiń proszę myśl bo nie jestem w stanie sobie tego wyobrazić, człowiek tyle czyta w Internetach i nagle trafia na coś, czego wyobrazić sobie nie sposób. Że znaczy co, jeden dokleja się na końcu drugiego, instrukcje wykonują się naprzemiennie, czy jak? Proszę rozwiń co masz...
Ale potrzebuję dopisać to tak, że dwa kliknięcia muszą być w czasie krótszym niż np. 10 sek, inaczej zmienne się wyzerują, a diody nie zaświecą, jeśli np. klikniemy przycisk jeden raz i drugi raz za 15sek, to żeby nic się nie stało. Identycznie z drugą zmienną. Łatwiej chyba Ci będzie użyć jakiejś gotowej biblioteki do obsługi przycisków, jeżeli chcesz...
Czym ty to aktualnie kompilujesz? Bo masz funkcję z Arduino, a wywalone loop() setup() i zwykły main w to miejsce. Jak już dojdziesz do działającego lcd("Test"); to sprawdź czy jest konieczna inicjalizacja wire.begin();
A dlaczego nie chcesz uzyc delay?
manekinen czy mógłbyś dodać funkcję "Arduino Doctor"dla AtMega328 która polegałaby na ustawieniu fuse bitów i wgraniu bootloadera ?
Witam, Trudno zrozumieć na jakiej zasadzie to ma działać. SendMessage() to "funkcja odbierająca"? Czego oczekujesz po "reciveVal = mySerial.read();"?
.toInt() wykorzystuje atol() (linia 739 https://github.com/arduino/ArduinoCore-A... atol() nie umie w inne systemy niż dziesiętne więc dla hexów trzeba tak: [syntax=c]strtoul(code.c_str(),NULL,16))... I to chyba wystarczy. A tu o tym co to jest: http://www.nongnu.org/avr-libc/user-manu...
Robiłem z tym wyświetlaczem. Mam kod w C na AVR mega (zero funkcji Arduino). Jak ratuje sytuacje moge poszukać.
Ponieważ jest sobota i jestem leniem to gotowego programu pisał nie będę. Poza tym cała frajda z Arduino to napisać własny program, który będzie działał. funkcja Delay jest najgorszym z możliwych rozwiązań, bo podczas jej wykonywania program stoi. Proponowałbym zapoznać się z funkcją timer. Proste przykłady są tutaj https://playground.arduino.cc/Code/Timer...
Możesz mieć tylko jedną funkcję loop(), to jest funkcja główna, pełniąca podobną rolę jak funkcja main() w klasycznym C++. Pętle możesz sobie używać normalne (for, while, do while) wewnątrz tej funkcji.
Nie znam Arduino, ale czy funkcja setuo() nie powinna być wywołana na początku funkcji loop()?
Problem był dosyć trywialny - jeden marker który ustawiłem aby zmienił wartość z false na true w momencie wywołania attachInterrupt miał wartość true, a funkcja wykonywana w tym poleceniu działa tylko wtedy gdy marker1==false. Bez urazy ale zrobiłeś coś, co generalnie jest bez sensu. Wsadziłeś do ISR kawał kodu, który robi różne rzeczy, ustawia parametry,...
Wartość 4294967295 to -1, więc wg dokumentacji funkcji -holdingRegisterRead to failure. BTW patrząc na funkcje modbusa w arduino - brakuje mi odczytu wielu rejestrów- poważna wada. Modbus niestety ma parę niekonsekwencji. raz adresy sa liczone od 0 raz od 1. Producenci też dokładają swoją interpretację. Radziłbym najpierw wykorzystać jakiś program na...
Trzeba było dobrze ustawić funkcje definiujące znaki
Pokaż swoje próby, schemat podłączenia. Na początek wystarczy obsługa millis(), timery sprzętowe można zostawić na coś wymagającego dużej precyzji, odliczenie 60s nie musi być wyliczane z dokładnością pojedynczych cykli zegara uC. Pisanie na prive to kiepski pomysł, jeśli moje rozumowanie jest błędne tutaj od razu ktoś to poprawi . Akurat w Arduino...
Mam to zmienić w bibliotece? Tak. W tej funkcji : [syntax=arduino]//----------------------... // Implements Max7456::init //--------------------------------------... void Max7456::init(byte iPinCS) [/syntax]
Nie mogę dać sobie rady z guzikiem który trzeba kliknąć dwukrotnie żeby włączyć diodę Możesz skorzystać z biblioteki [url=https://github.com/evert-arias/Easy... gdzie jest dostępna funkcja [syntax=c] onSequence(number_of_presses, sequence_timeout, onSequenceMatchedCallback) [/syntax] która powinna rozwiązać ten problem.
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ć...
Wykorzystanie funkcji loop() w Arduino Core nie jest obowiązkowe. Jeżeli ktoś chce napisać program w paradygmacie Interrupt-Driven wykorzysta jedynie funkcję setup() do inicjacji odpowiednich przerwań. W środowisku wielowątkowym funkcja loop() jest wywoływana z wątku o bardzo niskim priorytecie, więc również można ją zaniedbać. Tak samo myślę, że dało...
Przeanalizuj(zastosuj) przykładowy szkic "blink without delay". Zrezygnuj ze stosowania funkcji delay na rzecz millis , micros.
Próbowałem już w taki sposób. Wtedy muzyka nie włącza się w ogóle. Gaśnie dioda od transmisji na Arduino, tak jak w momencie gdy odtwarzacz gra, jednak odtwarzacz w ogóle nie reaguje. Nie da się w jakiś sposób wymusić jednokrotnego wykonania funkcji?
CH340G jest mega tani i co ciekawe działa "od kopa". Kiedyś się bałem takich tanich modułów, ale skoro są popularne, to znaczy, że działają:) Konwertery oparte o FTDI mają dużo często niewykorzystywanych funkcji
Czy ogólnie da się do WPA2 PSK podłączyć? Ogólnie tak, ale trzeba użyć odpowiednich funkcji z ES8266 SDK, a nie Arduino Core. [url=https://gist.github.com/Matheus-Gar...
Okazuje się, że "ćwiczyłem" to samo zagadnienie. Po konsultacji z autorem, okazało się, że nie wgrałem katalogu Data. Autor wspomniał o tym w pierwszym poście Należy pamiętać, że skatch używa SPIFFS i należy wgrać oddzielnie katalog data przy pomocy funkcji w Arduino "ESP32 Sketch Data Upload". Po wgraniu tego katalogu wszystko OK.
Czy da się w jakiś prosty sposób programowo zrobić ustawianie losowego wyjścia po naciśnięciu przycisku na STM32F103? Przykład: wciskam switch i losowo ustawia się jedno z zadeklarowanych wyjść. Na arduino jest funkcja random a tutaj nie mam pojęcia jak to zrobić. Arduino ma zbiór dodatkowych gotowych funkcji które możesz bezpośrednio użyć w kodzie....
Np.: Timer1.attachInterrupt( onLamp ); wywołuj przed pętlą główną. Chyba że w trakcie pracy programu chcesz zmienić przypisaną funkcję na inną.
Co to za "dziwactwo" w czym napisany jest kod źródłowy? Nie czyste cpp. Czy to jakieś środowisko Arduino ? Przecież to masz c++ :) na początku masz zadeklarowaną klasę z sekcją prywatną ze zmiennymi potem publiczną z metodami. Dziwactwem jedynie są funkcje arduino np: pinMode, digitalWrite czy funkcja Main.
Czy np. stosowanie tablic, pętli tylko ułatwi programowanie (np. skróci długość programu "polepszy przejrzystość" kodu), czy ma też wpływ na prędkość działania, stabilność pracy? Raczej to pierwsze chociaż na prędkość działania ma oczywiście wpływ sposób w jaki iteruje się po zmiennych. Odnośnie pamięci - czy dla arduino ma znaczenie, że program i...
Jak spowodować aby PIERWSZY odczyt np. komórki "0" nie wyświetlał 255 ? Zapisać wymaganą wartość wartość. - na etapie programowania lub odpowiednią funkcją sprawdzającą czy eeprom jest czysty. [syntax=arduino] if(EEPROM.read(0)==255) //czy eeprom jest czysty ? { EEPROM.write(0,0); // ... co tam trzeba EEPROM.commit(); delay(200); } [/syntax]
Nie no byłem przez chwilę przekonany, że tak jak długo trzymam przycisk to tak długo wysyłany jest sygnał. Zapomniałem, że w serial monitorze jest to informacja jednorazowa. Tylko teraz musze jakaś powalczyc z app inventorem bo nie znam funkcji.
Struktura programu wskazuje na Arduino (wypadałoby podać jakiego języka i platformy temat dotyczy) Zapozanaj się z funkcją flush https://www.arduino.cc/en/serial/flush
Dłuższe przewody powodują zakłócenia, wszystkie piny Arduino pełnią funkcję IO
#include jest to dyrektywa, która podłącza Ci zewnętrzne pliki do Twojego projektu. Masz w sumie 2 takie dyrektywy: #include "coś_tam.h" - jeśli plik nagłówkowy znajduje się w tym samym katalogu co funkcja main, #include <coś_tam.h> - jeśli plik nagłówkowy jest gdzieś indziej, np w domyślnym folderze z podstawowymi funkcjami arduino. Przejrzyj...
arduino funkcja arduino tworzyć funkcja funkcja delay arduino
bosch agregat prądotwórczy satel integra zasilanie czujek szumy nikon
falownik powmr edifier r1280db
Lokalizacja termostatu w pompie ciepła Atlantic 10 kW Oświetlenie w piekarniku Mastercook Plus - lokalizacja i wymiana