Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam.
Stworzyłem sobie układ, który wygląda jak na zdjęciach. Problem tkwi w tym, iz atmega nie trzyma żadnych ustawień(ustawiłem rtc, po zrestartowaniu godzina i data jest całkiem inna od tej ustawionej), za nic nie mogę zmusić dht11, aby wyświetlał temp. Co robię źle?Dodam,że program wgrany na arduino uno,l lub chińską podróbę arduino nano działa prawidłowo.
Kod wygląda
#define przycisk1 9 #define przycisk2 10 #define d 3000 #include <LiquidCrystal_I2C.h> #include <DS3231.h> #include <DHT.h> #include <Wire.h> LiquidCrystal_I2C lcd (0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); DS3231 rtc(SDA, SCL); float wilgotnosc; float temperatura; #define DHTPIN 8 #define DHTTYPE DHT11 DHT dht(DHTPIN, DHTTYPE); void setup() { Serial.begin(9600); lcd.begin(16,2); dht.begin (); rtc.begin (); lcd.noBacklight (); pinMode (przycisk1, INPUT_PULLUP); pinMode (przycisk2, INPUT_PULLUP); //rtc.setTime(11, 35, 10); //rtc.setDate(23, 11, 2017); } void loop() { temperatura = dht.readTemperature(); wilgotnosc = dht.readHumidity(); switch ((digitalRead(przycisk1) == LOW)) { case 1: //instrukcje dla var=1 lcd.clear(); lcd.backlight(); lcd.setCursor(0,0); lcd.print("TEMP"); lcd.setCursor(0,1); lcd.print("WILG"); lcd.setCursor(8,0); lcd.print(temperatura); lcd.print("*C"); lcd.setCursor(8,1); lcd.print(wilgotnosc); lcd.print("%"); delay(d); lcd.clear(); break; default: lcd.noBacklight(); lcd.setCursor(0,0); lcd.print("Godz: "); lcd.setCursor(0,1); lcd.print("Data: "); lcd.setCursor(6,0); lcd.print(rtc.getTimeStr()); lcd.setCursor(6,1); lcd.print(rtc.getDateStr()); } if ((digitalRead(przycisk2) == LOW)) { lcd.backlight(); delay(1000); } else if ((digitalRead(przycisk2) == HIGH)) { lcd.noBacklight (); } }
Offline
Pokaż schemat.
BTW za ten delay(1000) to powinieneś dostać kopa w rzyć, i to centralnie w środek.
Offline
schematu jako takiego nie mam, tu https://postimg.org/gallery/2wgut0pbw/ wsadziłem zdjęcia,aczkolwiek raczej pomocne nie będą...coś mi się tak wydaje.
BTW za ten delay(1000) to powinieneś dostać kopa w rzyć, i to centralnie w środek.[/quote]
Dlaczego za krótko?Ostatnio edytowany przez qba1707 (2017-11-23 18:00:18)
Offline
[quote=qba1707]schematu jako takiego nie mam, tu https://postimg.org/gallery/2wgut0pbw/ wsadziłem zdjęcia,aczkolwiek raczej pomocne nie będą...coś mi się tak wydaje.
BTW za ten delay(1000) to powinieneś dostać kopa w rzyć, i to centralnie w środek.[/quote]
Dlaczego za krótko?[/quote]
:D
W ogóle nie używać do takich zadań delay.
Offline
Time (s) | Query |
---|---|
0.00016 | SET CHARSET latin2 |
0.00007 | SET NAMES latin2 |
0.00119 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.143.0.10' WHERE u.id=1 |
0.00076 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.143.0.10', 1725763228) |
0.00046 | SELECT * FROM punbb_online WHERE logged<1725762928 |
0.00263 | DELETE FROM punbb_online WHERE ident='18.191.12.109' |
0.00059 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=30080 AND t.moved_to IS NULL |
0.00005 | SELECT search_for, replace_with FROM punbb_censoring |
0.00166 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=30080 ORDER BY p.id LIMIT 0,25 |
0.00079 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=30080 |
Total query time: 0.00836 s |