Przeszukaj forum
Pokazywanie wyników dla tagów 'przycisk'.
Znaleziono 5 wyników
-
Witam. Od niedawna zacząłem interesować się programowaniem oraz Arduino, i chciałbym zrobić takie coś (ale kompletnie nie wiem jak to zrobić): Klikam przycisk => silnik kręci się w prawo (3s) => przerwa (2s) => silnik kręci się w lewo (3s) => Stop. I kiedy kliknę przycisk znowu to samo od poczatku. *Arduino Leonardo *Silnik (zwykły, chiński z samochodu RC) Proszę o pomoc, będę bardzo wdzięczny.😉
-
Witam serdecznie, potrzebuję małej pomocy przy przerwaniach programując ESP32 przy pomocy Arduino IDE. Chciał bym liczyć ilość wciśnięć przycisku za pomocą przerwań. Po wciśnięciu przycisku wyświetla się napis że przycisk został wciśnięty. Jednak po puszczeniu przycisku ponownie wyświetlany jest komunikat o wciśnięciu przycisku. Fizycznie przycisk został wciśnięty 7 razy a wyświetla się że był wciśnięty 14 razy. Może ktoś ma pomysł jak rozwiązać wskazany problem? #define DEBOUNCE_TIME 250 volatile uint32_t DebounceTimer = 0; #define PIN_BUTTON 12 uint32_t button_count = 0; void IRAM_ATTR buttonpressed() { if ( millis() - DEBOUNCE_TIME >= DebounceTimer ) { DebounceTimer = millis(); button_count += 1; Serial.printf("Przycisk wciśnięty %u razy.\n", button_count); } } void setup() { Serial.begin(115200); pinMode(PIN_BUTTON, INPUT_PULLUP); attachInterrupt(PIN_BUTTON, buttonpressed, FALLING); } void loop() { }
- 1 odpowiedź
-
- ESP32
- przerwania
-
(i 2 więcej)
Tagi:
-
UNO + Motorshield rev.3 Kontrola silnika DC z przycisku
Cookie_Monster opublikował temat w Arduino i ESP
Witam; Buduje urządzenie które ma za zadanie pobrać (wciągnąć) element na tackę, poprzez aktywowanie mikro przełącznika przy wprowadzaniu elementu. Posiadam Arduino Uno, Motor Shield Rev.3, mikroprzełącznik NO/COM/NC, silnik 12VDC. Proszę o pomoc w dopisaniu lub zmianę w kodzie, aby silnik pobierał element tylko w czasie wciśnięcia przycisku, poniżej przesyłam mój kod pętli. Z góry dziękuję za pomoc const int MotorPinA = 12; const int SpeedPinA = 3; const int BrakePinA = 9; const int Pobranie = HIGH; const int Zwrot = LOW; void setup() { pinMode(MotorPinA,OUTPUT); pinMode(SpeedPinA,OUTPUT); pinMode(BrakePinA,OUTPUT); Serial.begin(9600); } void loop() { digitalWrite(MotorPinA, Pobranie);//kierunek obrotu silnika Serial.println("Pobranie"); analogWrite(SpeedPinA, 100);//prędkość silnika od 0 do 255 Serial.println("szybkość 100"); delay(1000);//czas pracy silnika digitalWrite(BrakePinA,HIGH);//rozpoczęcie hamowania Serial.println("Hamowanie"); delay(500);//przerwa digitalWrite(BrakePinA,LOW);//zatrzymanie hamowania }-
- UNO
- Motor Shield
-
(i 1 więcej)
Tagi:
-
czy można zrobić takie coś że jak się kliknie na guzik (zamontowany na płytce stykowej taki zwykły kwadratowy takie jak na załączonym obrazku) to np. będzie to równo znaczne z naciśnięciem klawisza A na klawiaturze dziękuję z góry za odpowiedzi
-
Witam! Pewnie problem na zasadzie początkującego użytkownika STM32 ale co poradzę - wystąpił ! 🙂 Mianowicie, mam podłączone 3 przyciski do STM32F103CBT6, przyciski podłączone z rezystorem pull-up i poprzez kondensator filtrujący. W procesorze włączony również pull-up na wejściu od przycisku. Reakcja na wciśnięcie (zbocze opadające) miała być uruchamiana z wykorzystaniem przerwań zewnętrznych. I tu pojawia się problem bo o ile program nie zajmuje się czymś innym albo tylko jakimiś drobnymi rzeczami to wszystko jest w porządku - reakcja następuje od razu. Jeśli tylko zacznę np. więcej rzeczy wyświetlać na OLEDzie to reakcja następuje losowo. Wszystkie przerwania mają priorytety i grupy ustawione na 0. Dodam, że sprawdzałem na oscyloskopie czy występują jakiekolwiek drgania styków - zbocze opadające jest gładziutkie, nie ma możliwości, ze tu coś jest nie halo. Program pisany w HALu tak jak w kursie Forbota. Jeśli będzie potrzeba to dodam listing. Dodatkowo również w ten sam sposób uruchomione są przerwania z zewnętrznego urządzenia i tam wszystko śmiga, no a na przyciskach nie chce - ciekawe. Proszę o jakieś sugestie co to może być, czy ktoś się z czymś spotkał.
- 4 odpowiedzi
-
- STM32
- przerwania
-
(i 2 więcej)
Tagi: