Hirdetés
- Ha nem növelnéd feleslegesen a villanyszámlád, a Chieftecnek van pár új ajánlata
- ARC vs eARC — Ilyet is tud a HDMI-d? 🤨
- A következő évtizedbe repíti a NAND hatékonyságát a Samsung új kutatása
- ASUS blog: kisebb, de nem gyengébb – a mini PC-k forradalma
- 5 kilowattos GPU-k előtt nyitná meg az utat az Intel
- TCL LCD és LED TV-k
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Azonnali alaplapos kérdések órája
- Pánik a memóriapiacon
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Milyen billentyűzetet vegyek?
- Apple asztali gépek
- Kormányok / autós szimulátorok topikja
- Itt a Valve GŐZGÉP — Steam Machine, mi vagy te? 🧐
-
PROHARDVER!
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
-
softguner
csendes tag
válasz
#96292352
#1190
üzenetére
Ezek alapján, kijavítottam neked a fenti kódomat. Elviekben működik, bár tesztelni ezt sem tudtam, mert nincs nálam semmi. Az első kódnál is kiderült volna, hogy balfax voltam, de sajnos nincs nálam eszköz.
int buttonpin = 13;
int buttonpin1 = 12;
int value =0;
int value2 =0;
int adat=0;
int b1state = 0;
int b2state = 0;
void setup ()
{
pinMode(buttonpin, INPUT);
pinMode(buttonpin1, INPUT);
Serial.begin (9600);
}
void loop ()
{
value = digitalRead (buttonpin);
if (value != b1state)
{
if (value == 1)
{
adat++;
Serial.println(adat);
}
}
b1state = value;
value2 = digitalRead (buttonpin1);
if (value2 != b2state)
{
if (value2 == 1)
{
adat--;
Serial.println(adat);
}
}
b2state = value2;
} -
softguner
csendes tag
válasz
#96292352
#1182
üzenetére
Ezen a szinten ennek azért már kisujjból kellene mennie.
int buttonpin = 13;
int buttonpin1 = 12;
int value =0;
int value2 =0;
int adat=0;
void setup ()
{
pinMode(buttonpin, INPUT);
pinMode(buttonpin1, INPUT);
Serial.begin (9600);
}
void loop ()
{
value = digitalRead (buttonpin);
if (value == 1)
{
adat=adat+1;
}
else
{
value2 = digitalRead (buttonpin1);
if (value2 == 1)
{
adat=adat-1;
}
Serial.println (adat);
}
}Nézd át mert fejből írtam.
-
softguner
csendes tag
válasz
#96292352
#1152
üzenetére
Szerintem, ez a kód így eleve nehézkes. Van egy DHT library az arduino.cc-n. Ott létrehozol két objektumot és definiálod azokat két különböző néven.
Ebben van egy példaprogram. Ez a kódja.
#include "DHT.h"
#define DHTPIN 2 // what pin we're connected to
// Uncomment whatever type you're using!
#define DHTTYPE DHT11 // DHT 11
//#define DHTTYPE DHT22 // DHT 22 (AM2302)
//#define DHTTYPE DHT21 // DHT 21 (AM2301)
// Connect pin 1 (on the left) of the sensor to +5V
// NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor
// Initialize DHT sensor.
// Note that older versions of this library took an optional third parameter to
// tweak the timings for faster processors. This parameter is no longer needed
// as the current DHT reading algorithm adjusts itself to work on faster procs.
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
Serial.println("DHTxx test!");
dht.begin();
}Itt Definiálod a változókat a beolvasott lábakat. Stb stb.
Pl:
#define DHTPIN 2
#define DHTPINSEC 3
DHT dht(DHTPIN, DHTTYPE);
DHT dhtsec(DHTPINSEC, DHTTYPE);
void setup() {
Serial.begin(9600);
Serial.println("DHTxx test!");
dht.begin();
dhtsec.begin();
}És a többi és a többi. Én ezt csinálnám.
-
dave0825
őstag
válasz
#96292352
#1147
üzenetére
Más téma: egyik haverom vett ebay-ről egy Uno klónt, és most néztem neki, hogy 12000 van ráírva az órajel-generátorára, viszont a hirdetésben Atmega16U2 van, ami (én úgy tudom, meg leírást is úgy találtam) 16MHz-es lenne, nem? A képen a hirdetésben tényleg 12000 van ráírva, viszont a neve sem ugyanaz a panelnak, mint a képen, csak UNO van ráírva, semmi más "márka". Szerintetek kezdő arduinózónak mennyit számít, ha ennyivel kevesebb az órajele? Szervomotorok vezérléséhez, ledek villogtatásához, meg ilyen alapabb dolgokhoz elég a 12MHz?
-
#96292352
törölt tag
válasz
#96292352
#1146
üzenetére
Ebben van a baj:
int DHpin = 7;
int DH2pin = 9;
byte dat [5];
byte dat2 [5];
byte read_data () {
byte data;
for (int l = 0; l < 8; l ++) {
if (digitalRead (DHpin) == LOW) {
while (digitalRead (DHpin) == LOW); // wait for 50us
delayMicroseconds (30); // determine the duration of the high level to determine the data is '0 'or '1'
if (digitalRead (DHpin) == HIGH)
data |= (1 << (7-l)); // high front and low in the post
while (digitalRead (DHpin) == HIGH); // data '1 ', wait for the next one receiver
}
}/* 2nd sensor */
byte dat2;
for (int i = 0; i < 8; i ++) {
if (digitalRead (DH2pin) == LOW) {
while (digitalRead (DH2pin) == LOW); // wait for 50us
delayMicroseconds (30); // determine the duration of the high level to determine the data is '0 'or '1'
if (digitalRead (DH2pin) == HIGH)
data |= (1 << (7-i)); // high front and low in the post
while (digitalRead (DH2pin) == HIGH); // data '1 ', wait for the next one receiver
}
}
return data;
} -
gyapo11
őstag
válasz
#96292352
#1143
üzenetére
Ja hogy az egyszerre az egy kijelzőre két értéket jelent. Ebben nem tudok segíteni, nem használtam még kijelzőt sem, de ha áttekinthetőbbé tennéd tagolással, megjegyzésekkel a programot, akkor talán valaki észrevenné a hibát vagy a megoldást.
Mi történik? Egyesével ki tudod íratni, tehát a beolvasás és a kiírás megy. Vagy valami pozícionálási gond lehet a kijelzőn, vagy a második értéket ugyanabba a változóba olvasod, és ezért nincs meg az első.
Új hozzászólás Aktív témák
- PROHARDVER! feedback: bugok, problémák, ötletek
- Kerékpárosok, bringások ide!
- Mindenkinél több és erősebb AI gyorsítót ígér Elon Musk
- TCL LCD és LED TV-k
- Elektromos autók - motorok
- Győr és környéke adok-veszek-beszélgetek
- Motorola Moto G54 5G Power Edition - nem merül le
- Opel topik
- Milyen routert?
- Nintendo Switch 2
- További aktív témák...
- magyar billentyűzet - 162 - 163 - Lenovo LOQ (15ARP9) - AMD Ryzen 7 7435HS, RTX 4060
- Apple iPhone 14 128GB, Kártyafüggetlen, 1 Év Garanciával
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Bomba ár! HP ProBook 650 G3 - i3-7GEN I 8GB I 128GB SSD I 15,6" FHD I Cam I W10 I Garancia!
- Telefon felvásárlás!! Huawei P20 Lite/Huawei P20/Huawei P30 Lite/Huawei P30/Huawei P30 Pro
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
DHT, SHT? Esetleg HR202 bár az nem digitális, az csak egy ellenállás.
ekkold

