- Milyen okostelefont vegyek?
- Hat év támogatást csomagolt fém házba a OnePlus Nord 4
- Google Pixel topik
- Poco X5 Pro - ránézésre jó
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Beárazták az projektoros Ulefone-t
- iPhone topik
- Samsung Galaxy A56 - megbízható középszerűség
- eSIM, a kártyamentes szabadság
- Apple Watch Sport - ez is csak egy okosóra
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
Saua
tag
Sziasztok,
Ezt a kódot sikerült összeeszkábálni, nyomógombbal és telefonról is lehet kapcsolgatni a LED –et, és a telefonon megjelenik a LED aktuális állapota.
/*
LED attached from pin 12 to ground
pushbutton attached to pin 5 from +5V
10K resistor attached to pin 5 from ground
*/
#include <SoftwareSerial.h>
int bluetoothTx = 2; // TX-O pin of bluetooth mate, Arduino D2
int bluetoothRx = 3; // RX-I pin of bluetooth mate, Arduino D3
int led = 12;
int button = 5;
int dataFromBt;
SoftwareSerial bluetooth(bluetoothTx, bluetoothRx);
// változókat hozunk létre:
int ledState = LOW; // kimeneti pin aktuális állapota
int buttonState; // bemeneti pin aktuális állapota
int lastButtonState = LOW; // bemeneti pin előző értéke
long lastDebounceTime = 0;
long debounceDelay = 50;
void setup()
{
Serial.begin(9600); // Begin the serial monitor at 9600bps
bluetooth.begin(115200); // The Bluetooth Mate defaults to 115200bps
bluetooth.print("$"); // Print three times individually
bluetooth.print("$");
bluetooth.print("$"); // Enter command mode
delay(100); // Short delay, wait for the Mate to send back CMD
bluetooth.println("U,9600,N"); // Temporarily Change the baudrate to 9600, no parity
// 115200 can be too fast at times for NewSoftSerial to relay the data reliably
bluetooth.begin(9600); // Start bluetooth serial at 9600
pinMode(led, OUTPUT);
pinMode(button, INPUT);
digitalWrite(led, ledState);
}
void loop()
{
if(bluetooth.available()) // If the bluetooth sent any characters
{
dataFromBt = bluetooth.read();
if(dataFromBt == '1'){
digitalWrite(led, HIGH);
ledState = HIGH;
}
if(dataFromBt == '0'){
digitalWrite(led, LOW);
ledState = LOW;
}
if(dataFromBt == '3'){
bluetooth.print(ledState);
}
}
int reading = digitalRead(button);
if (reading != lastButtonState) {
lastDebounceTime = millis();
}
if ((millis() - lastDebounceTime) > debounceDelay) {
if (reading != buttonState) {
buttonState = reading;
if (buttonState == HIGH) {
ledState = !ledState;
digitalWrite(led, ledState);
}
}
}
lastButtonState = reading;
}Ezt szeretném módosítani, hogy négy LED –et lehessen kapcsolgatni.
Főleg a LED aktuális állapotának a lekérdezésével van a gond (most a telefon 100 miliszekundomonként küldi a 3-as karaktert és visszakapja a 1 vagy 0 karaktert)…nem tudom hogyan küldhetne a többi LED más-más karaktert az állapotokról, mert az állapotuk csak LOW vagy HIGH lehet.
Új hozzászólás Aktív témák
- AKCIÓ! VALVE INDEX virtuális valóság szemüveg garanciával hibátlan működéssel
- Bomba ár! Lenovo ThinkPad T490s - i5-8GEN I 16GB I 512SSD I 14" FHD I Cam I W11 I Gari!
- AKCIÓ! ASROCK H310CM i5 9600K 32GB DDR4 500GB SSD RTX 3050 8GB DeepCool Tesseract SW 500W
- Telefon felvásárlás!! Xiaomi Redmi Note 12, Xiaomi Redmi Note 12 Pro, Xiaomi Redmi Note 12 Pro+
- AKCIÓ! Gigabyte H510M i5 10400F 16GB DDR4 512GB SSD GTX 1070 8GB Rampage SHIVA Zalman 600W
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged