Hirdetés
- TCL LCD és LED TV-k
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Melyik tápegységet vegyem?
- Gaming notebook topik
- Bluetooth hangszórók
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Milyen CPU léghűtést vegyek?
- Vezetékes FÜLhallgatók
- SSD kibeszélő
- AMD K6-III, és minden ami RETRO - Oldschool tuning
-
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
-
Undoroid
őstag
Szia Aryes!
Végre volt egy kis időm és nekiugrottam ennek a projektnek! Sikerült végre életre kelteni a DHT11, Arduino Nano V3, 2x16-os LCD trióból építhető hőmérséklet- és páratartalom indikáló szerkezetet! A kódja eredetileg UNO-hoz készült, de Nano-val is működik:
#include <LiquidCrystal.h>LiquidCrystal lcd(4, 5, 0, 1, 2, 3);byte degree_symbol[8] ={0b00111,0b00101,0b00111,0b00000,0b00000,0b00000,0b00000,0b00000};int gate=11;volatile unsigned long duration=0;unsigned char i[5];unsigned int j[40];unsigned char value=0;unsigned answer=0;int z=0;int b=1;void setup(){lcd.begin(16, 2);lcd.print("Temp = ");lcd.setCursor(0,1);lcd.print("Humidity = ");lcd.createChar(1, degree_symbol);lcd.setCursor(9,0);lcd.write(1);lcd.print("C");lcd.setCursor(13,1);lcd.print("%");}void loop(){delay(500);while(1){delay(500);pinMode(gate,OUTPUT);digitalWrite(gate,LOW);delay(20);digitalWrite(gate,HIGH);pinMode(gate,INPUT_PULLUP);//by default it will become high due to internal pull up// delayMicroseconds(40);duration=pulseIn(gate, LOW);if(duration <= 84 && duration >= 72){while(1){duration=pulseIn(gate, HIGH);if(duration <= 26 && duration >= 20){value=0;}else if(duration <= 74 && duration >= 65){value=1;}else if(z==40){break;}i[z/8]|=value<<(7- (z%8));j[z]=value;z++;}}answer=i[0]+i[1]+i[2]+i[3];if(answer==i[4] && answer!=0){lcd.setCursor(7,0);lcd.print(i[2]);lcd.setCursor(11,1);lcd.print(i[0]);}z=0;i[0]=i[1]=i[2]=i[3]=i[4]=0;}}
A felmerült hiba megoldása pedig (immár) egyszerű: user error! Ha jobban odafigyeltem volna, akkor hamarabb észreveszem, hogy az Uno- és a Nano annyiban (is) különbözik egymástól, hogy az RX/TX csatlakozásaik fordítva helyezkednek el a PCB-n! Nálam ezt még tetézte az is, hogy erősen használt volt a hozzám került Breadboard és van rajta egy-két pin, ami bizony kontakthibás!Annyi kérdésem lenne még ezzel kapcsolatban, hogy a kijelzett értékeket nem-e lehetne kibővíteni -a programsor módosításával- úgy, hogy a mért értékek egy tizedesértékig lennének kijelezve? Ami biztos, hogy a " C " és a " % " jeleket kettővel el kell mozdítani a jelenlegi helyéről, amit a
set cursorparanccsal lehet megoldani...
Új hozzászólás Aktív témák
- Google Pixel topik
- Fejhallgatós találkozó
- Yettel topik
- Vicces képek
- PROHARDVER! feedback: bugok, problémák, ötletek
- TCL LCD és LED TV-k
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Apple iPhone Air - almacsutka
- Melyik tápegységet vegyem?
- További aktív témák...
- ARCTIC Liquid Freezer III 360 A-RGB Processzor vízhűtő
- Phanteks Eclipse P600S Black Számítógép ház
- Corsair 32GB KIT DDR5 6000MHz CL30 Vengeance RGB Grey AMD EXPO / XMP
- Iphone 16 PRO 256GB Titanium BLACK - Garanciás - Akku: 94%
- Esport Gaming PC (Intel i5-9400F, 32GB RAM, RTX 2060, 500GB SSD) Eredeti Windows11 Pro
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
ekkold

