A może tak: Dim Temp As Integer Dim Disp As String * 5 Temp = 366 'odczytana wartość temperatury Disp = Str(Temp) Disp = Format(Disp , " 0.0") Locate 1 , 1 Lcd Disp Pozdrawiam...
Niestety na twoim programie też nie działa B Wyświetla "DS18B20" "temp: -0,1*C"
(...) Blynk.virtualWrite(VPIN_coolerbtn, coolerState); } } if (modeState == 0) { display.setTextSize(1); // Draw 2X-scale text display.setTextColor(SSD1306_WHITE); display.setCursor(32, 45); display.print("Manual Mode"); display.display(); } delay(3000); } Witaj, Wygląda na to, że kod, który dostarczyłeś, jest niekompletny. Mogę jednak podać Ci podstawową...
Cześć, odnośnie założeń projektowych to chciałbym: - dokonywać pomiarów tak często jak pozwoli na to ds18b20 - wyświetlanie temp odbywać się będzie na ekranie lcd do którego mam już odpowiedni sterownik - całość odpalana będzie na zestawie „S3EStarter Kit” firmy Digilent Orientuje się już mniej więcej na jakiej zasadzie działa komunikacja...
Pisanie programu to nie wszystko, trzeba jeszcze umieć usuwać błędy i go testować Sprawdź czy teraz coś Ci wyświetli: [syntax=c]ds18b20_pad[0] = 0x90; ds18b20_pad[1] = 0x01; temp = (ds18b20_pad[1] << 8) | ds18b20_pad[0]; if(temp < 0) temp = -temp; temp >>= 4;[/syntax]
W załączniku kod źródłowy wsadu dla wyświetlaczy 2x16, 3 czujniki, z wyświetlaniem temp. do jednego miejsca po przecinku. Dolna linijka (trzeci czujnik) bez problemu wyświetla dwucyfrowe ujemne temperatury.
Tu masz działający i uproszczony do max kod do obsługi ds18b20 (wyświetla temp na wyświetlaczu) [syntax=basic4gl] I = 1wread(2) S = I / 16 T = Fusing(s , "##.#") Locate 1 , 1 Lcd "Temp:" ; T ; Chr(0) ; "C" [/syntax] tu masz dokładnie objaśnione co i jak: [syntax=basic4gl]Do 1wreset 'reset 1wwrite &HCC 'jedna kostka, więc wykorzystujemy rozkaz SKIP ROM...
Nie winikajac w obliczenia wsadz to: [syntax=c] c = temp; c+=0.5; a=c; c-=a-0.5; c=c*10+0.5; b=c;[/syntax] po tym: [syntax=c]while (1) { temp=ds18b20_gettemp();[/syntax]
Witam! Mam problem z termometrem, otóż wyświetla mi dodatkowe cyferki na wyświetlaczu (dołączam zdjęcie, żeby było wiadomo o co chodzi). Cały listing programu wzięty jest z tego kursu: http://hobby.abxyz.bplaced.net/index.php... po małych, sporych modyfikacjach, otóż termometr miał działać również jako alarm do pieca CO (żeby nie zagotować...
Ja bym się nie bawił w analogówke ... Sam zrobiłem stację meteo podłączoną do serwera , dane zbierane były do bazy danych mysql a stronka z odpowiednimi skryptami wyświetlała wyniki w postaci wykresów ( gnuplot ) oraz wskaźniki we flaszu bieżącą pogode. Zastosowałem mikrokontroler atmega8 pomiary temp czujnik DS18B20 pomiar wilgotności czujnik analogowy...
Mam tylko jeden czujnik na magistrali Ale gdy pozbywam się 1wverify Dsid1(1) to układ nie wyświetla temp.
A najlepsze z tego wszystkiego jest to: char temp[10]; int16_t temperatura; ... DS18B20_read_scratchpad(0, (uint8_t *)&temperatura, 2); dtostrf(temperatura,1,1,temp);
Z tego co się orientuję to pisząc temp2 = 32+(5/9)*temp; działasz na liczbach całkowitych, więc wynik będzie zawsze 32 bo 5/9 całkowite to 0. Chyba powinno być temp2 = 32.0+(5.0/9.0)*temp; Ale nie jestem pewien. Dodano po 17 Z tego co pamiętam z programowania w C to właśnie zapis "5.0/9.0" dawał kompilatorowi sygnał że dzielenie ma się odbyć na liczbach...
Dziękuję autorowi za schemat . moje pytania : do jakiego adresy przypisano w programie DS1307 . : czy dobrze rozumuję podłączenie wyświetlacza W1 do DIN , W2 do CS , W3 do CLK . : czy zamiast czujek DHT22 i BME280 można dopisać do programu dwa czujniki DS18B20 (temp zew i wew) .Wyświetlane naprzemiennie z czasem
Czy ten napis "Rozpoczynam temp" znika po tej sekundzie, czy wyświetla się cały czas?
sprobuj wkleic ten program do swojego procka jezeli masz wszystko dobrze podlaczone to powinien wyswietlac temperature z dokladnoscia 1 st C Config Lcd = 16 * 1 Dim Bd(9) As Byte Dim T As Byte 'Integer Config 1wire = Portb.1 Cls Lcd "TEMP " Do Gosub Ds1820 Locate 1 , 6 : Lcd T Loop End Ds1820: 'dokladnosc 1st C 1wreset 1wwrite &HCC 1wwrite &H44 Waitms...
Dodanie tej linijki [syntax=c]temperatura = 0xFF5E; //<------ -10.125[/syntax] na stałe definiuje wartość temperatury, chodzi o to żeby na wyświetlaczu pokazywało ujemną temp. po obniżeniu temp. poniżej zera wyświetla jakieś symbole. W monitorze poru szeregowego dobrze pokazuje temp. dodatnią jak i ujemną.
Witam wszystkich! Czy któryś z szanownych kolegów, mógłby mi wytłumaczyć (najlepiej tak łopatologicznie) jak podzielić jakąś liczbę w taki sposób aby wyodrębnić cyfrę odpowiedzialną za: setki, dziesiątki, jedności? Problem pojawił się gdy przeglądałem któryś już z rzędu program odczytujący temp. z DS18b20, a następnie wyświetlający ją na kilku wyświetlaczach...
A czy ta twoja konwersja temp ci dziala? Bo u mnie wyświetla teraz 4095,94 stopnia :)
Biblioteka której użyłeś nie ma możliwości dowolnej konfiguracji pinów. W załączniku masz bibliotekę prosto z Rosji :D Chiński wyświetlacz sam mi się uszkodził ale coś tam wyświetla :D http://obrazki.elektroda.pl/6257086800_1... Kod którego użyłem do zrobienia tego zdjęcia [syntax=vbnet] $regfile = "m8def.dat" ' specify the used micro...
No to tak: Jeżeli dobrze czytam program to masz 4 przyciski, timer ustawiony tak aby przerwanie od niego występowało co 50 Hz i nic poza tym. Używasz tylko przerwania od Timera - boisz się innych? Czy może to tylko nieznajomość AVR. Aż prosi się żeby przyciski działały pod INT0 / 1 - zewnętrzne przerwanie i po kłopocie. Następnie _delay_ms(750); zamienił...
Jeśli chcesz już na piechotę liczyć to pamiętaj, że w U2 jest zapisana cała liczba, a nie tylko wartości całkowite. Czyli chcąc wyświetlić tym sposobem liczby ujemne musisz ją zanegować, dodać jedynkę, wyświetlić znak "-" i dopiero Twojego sprintf'a. Nie wiem co to za procesor i jak bardzo zależy Ci na oszczędności miejsca, ale jeśli nie bardzo to najprościej...
ok zaprogramowało tylko chyba mam jakieś błędy w kodzie bo nie wyświetla temperatury, Pisze samo "Termometr" a czujnik temp mam podłączony. Co może być nie tak?
Zrób [url=https://en.wikipedia.org/wiki/Metho... temperatury i doprowadź wyświetlanie temperatury do porządku. Aby uzyskać wartość jednostek przy konwersji temp lepiej użyj operatora modulo.
zwróci najmniejszą możliwą temp. Pullup cały czas będzie powodował stan wysoki. Z tym, że po procedurze resetu powinieneś otrzymać błąd
Witam. Skompilowałem i wgrałem program pomiar temperatury z DS18B20 do mikrokontrolerów Attiny 2313 i Atmega 8. Przy Attiny 2313 temp. jest wyświetlana prawidłowo natomiast przy Atmedze mruga. Zmienałem częstotliwość oscylatora wewnętrznego na 8 MHz, nic to nie pomogło. Program jest ze strony portalu naukowego, wyswietlacz LCD 2 *16. Co może być przyczyną...
Problem polega na tym, że odczytujesz wartość ADC z uC zamiast z DS18xxx. Brakuje ci obsługi DS18B20. Poniżej fragment kodu działającego u mnie. [syntax=vbnet] Config 1wire = Portb.0 '0,1,2 NOP 3,4,5,6,7 works good ON MY Equipment Do 1wreset 'reset 1wwrite &HCC 'jedna kostka, więc wykorzystujemy rozkaz SKIP ROM 1wwrite &H44 'dokonaj konwersji Waitms...
(...) y jeżeli elektronicznie podłączenie jest sprawne, zaproponujesz listing (AVR GCC) testujący taka "obciążoną" magistralę wyświetlający adresy odczytanych termometrów, ich parametry i temperatury oraz szacunek, który z nich to fake. Program ma możliwie najwięcej nieprawidłowości wychwycić (obsługa błędów). Rozpoznanie podróbek DS18B20 wymaga zaimplementowania...
Witam, Mam zegarek z czujnikiem temperatury DS18b20 i czujnik co 1 sekundę wpisuje do zmiennej "temp" informacje o temperaturze. Wszystko działa temperatura się wyświetla, jest ok. Nie potrafię zrobić temperatury średniej z 24h czyli z całej doby. Oraz temperatury maksymalnej i minimalnej. Chciałbym to wyświetlać w postaci danych: temperatura max, temperatura...
Witam, mam pytanko do szanownego grona: Posiadam mikrokontroler avr do którego podłączone mam czujnik temp ds18b20 i wyświetlacz 7segmentowy. (Czujnik działa poprawnie jeśli wyświetlam temperaturę na wyświetlaczu LCD). Chciałbym jednak wyświetlać temp na wyświetlaczu 4x 7 Seg. napisałem funkcje do wyświetlania na 7 seg void display(uint8_t init,char...
Nie znalazłeś, bo pewnie niczego nie ma. DS1820 jest tylko czujnikiem i jako taki nie posiada oprogramowania. Program dorabia twórca co konkretnego urządzenia wykorzystującego ten czujnik. Nawet jeśli jest to prosta aplikacja układu podpięta pod COM, oprogramowanie jest kwestią inwencji autora. Może jeszcze nikt nie wpadł na to żeby temp podawać w trayu...
witam czy ta biblioteka obsluguje ujemne temp? bo na wystwietlaczu ponizej zera otrzymuje wartosc 4096..i maleje wraz z malejaca temp... co jest nie tak? dziekuje pzdr. Mamy zgadywać , czy pokażesz kawałek kodu jak ją wyświetlasz/wysyłasz.
dobrze kombinujesz jeżeli chcesz uniknąć taimerów to do for ... wyświetlanie ... ta pętla powinna trwać około tyle czasu co ile chcesz odczytać temperaturę next gosub inicjowanie_dsa (pamiętaj że przed odczytem trzeba go poinformować że ma odczytać temp) for ... wyświetlanie ... ta pętla powinna trwać około 750ms next gosub odczyt_dsa loop
a może lutując przegrzałeś ds'a, wtedy często wyświetlane jest 85st albo często występują pewne zakresy odczytu temp (do ok 2 stopni) gdzie temperatura waha się w tym zakresie - z własnego doświadczenia
Witam. Czy mógłby ktoś mnie naprowadzić jak zrealizować wyświetlanie temperatury na jednej matrycy 8x8? Odczyt temp. wraz z kodem jest opisany na http://akademia.nettigo.pl/ds18b20/ A kod i opis na przewijany tekst na http://tronixstuff.com/2013/10/11/tutori... Nie wiem za bardzo jak okroić ten kod z przewijanym...
Co to znaczy programy Arduino w języku c? Dodano po 4 Jasne, oto przykłady programów w języku C na Arduino dla podanych zadań: ### 1. Wyświetlanie napisu zawierającego polskie znaki Jeśli używasz wyświetlacza LCD, możesz napotkać problem z polskimi znakami, ponieważ standardowe wyświetlacze LCD nie obsługują ich bezpośrednio. Możesz spróbować zastąpić...
Teraz zastanawiam się jak napisać kod który by przy braku zmiany wagi "wyrzucał" na wyświetlacz temperaturę. Kod do obsługi ds18b20 (czujnika) już mam. Myślę nad wprowadzeniem dodatkowej zmiennej "stara_waga" i porównywaniu jej z aktualną przez minute. jeśli się nie zmieni to wyświetlała by się temp na wyświetlaczu.
Witam chciałbym zaprezentować mały układzik pomiaru temp. z dwóch czujników Ds18b20 po sieci WiFI. Od dawna chciałem zbudować termometr elektroniczny dla domu który będzie mierzył temperaturę zewnętrzną i wewnętrzną , nawet parę takich zrobiłem niestety zawsze brakowało mi determinacji aby dokończyć obudowę i projekty lądowały w..... (no wiecie na strychu...
Nie do końca rozumiem! Pobrane z Ds'a dane są zapisane w tablicy: unsigned char ds18b20_pad[9] Trochę niżej składam to i dzielę na 16 czego wynikiem jest zmienna temp zadeklarowana oryginalnie jako double: [syntax=c]temp = ((ds18b20_pad[1] << 8) + ds18b20_pad[0]) / 16.0 ;[/syntax] Zmienna temp była typu "double" i program działał, natomiast zmieniłem...
Witam, mam problem, kiedyś robiłem termometr oparty na atmega8, z podpiętym lcd i czujnikiem ds18b20, działało elegancko, teraz chcę wykorzystać starą płytkę, uruchamiam a tu nie wyświetla temperatury, tekst na wyświetlaczu jest elegancko, nawet mam podpięty do portu com i też działa, a z tym czujnikiem się już kilka dni użeram i nic. Testowałem na...
Ale w jaki sposób dopisać do mojego pliku.h te drugie wyjście? Dodano po 48 W głównym programie main.c jest odczyt z czujnika ds18b20 podpiętego do pinu PA0 a na chwilę obecną temperatura zew i wew jest czytana z tego samego czujnika bo nie potrafię zdefiniować drugiego czujnika na pinie PA2.Czy mam stworzyć nowy olik z rozszerzeniem .h? np:ds18b20x.h?...
Witam chciałbym zaprezentować układ pomiaru temperatury z wielu czujników Ds18b20 ,na razie czterech z jednego modułu ESP8266. Projekt nawiązuje do tego rozwiązania : https://www.elektroda.pl/rtvforum/topic3... Tamten projekt już nie będzie rozwijany w tym natomiast wprowadziłem wiele zmian przygotowując sobie grunt pod przyszłą rozbudowę i...
Witam, czy ktoś ma schemat do urządzenia które: mierzy temperaturę mierzy napięcie akumulatora wyświetla zegar i steruje ładowaniem akumulatora?? Sprecyzuj czego temp chcesz mierzyć i na jakim czujniku (DS18b20) napięcie akumulatora czy ładowanie (nap w instalacji) Zegar to proponuje tani PCF8583 ładowanie OK te 10V ale musi być histereza i max napięcia...
oto kod mojego programu, właśnie niewiem czy napewno 176 to numer stopnia, skąd jeszcze mogę się tego dowiedzieć? niewiem o co ci chodzi z tym put_s chyba powinno być lcd_puts(zmienna); #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "hd44780.h" #include "ds18b20.h" char stopien=176; char...
Witam, potrzebuje czujnik temp do ok 150°C. Czujnik ma być podłączony pod atmegę8, temperatura wyświetlana ma być na lcd. Aktualnie używam ds18b20, ale jego zakres kończy się na 127.9°C co dla mnie jest trochę za małym zakresem. Dokładność czujnika powinna być na poziomie 1-2°C. Pozdrawiam
wiem wiem, że tak to się robi mam to napisane w programie dokładniej ten fragment jest za to odpowiedzialny: ................. Tyle, że czujnik ds18b20 nie podaje temperatury tak po prostu do procesora np.: 20 stopni Celsjusza tylko trzeba to troszkę przekonwertować za co odpowiedzialna jest ta część programu: fajnie miło i przyjemnie jeśli temperatury...
Ludzie może mi odpowiedzieć jak sie zczytuje tą temperaturę chodzi mi o młodszy i starszy bajt. Jest coś takiego jak Read scratchpad BEH i jak tą komendą odzytać te dwa bajty. tam jest 8 bajtów obok bajtów temp są dwie wartości 50H i 05H czy to są adresy zpod których się zczytuje tą temperature
2. Jak wygląda wyświetlanie temp z DS1820 (nie B), przy użyciu wzoru: TEMP=TEMP_Read-0,25+(Count_Per_C-Count_R... Wynik w postaci ZSDJ,X ale lubi oszukiwać :(
Dziękuję Wam za pomoc. Menu działa. Dorobiłem sobie dwa pliki do odczytu i wyświetlania temperatury na DS18B20. Mam plik_glowny.bas I pliki do DS18B20 - Config_DS18B20.bas oraz DS18B20.bas W celach testów zrobiłem osobny program aby tylko sprawdzić czy popranie działa odczyt temperatury. I działa bezbłędnie. Zasada działania tych plików jest następująca:...
Siema tak wygląda całość. void LCD_18b20_multidrop( unsigned char *adrr) { unsigned char i,tablica[4]; signed char alarm; int temp; ow_reset(); ow_byte_wr(0xCC); ow_byte_wr(0x44); delay_ms(2000); ow_reset(); ow_byte_wr(0x55); for (i = 0; i<8; i++) { ow_byte_wr(*adrr);...
Witam ! temp = ((~scratchpad[1])*16... + (((~scratchpad[0]... temp_calosci = temp; poprzecinku = (temp - temp_calosci)*10; // dzięki temu można pozbyć się minusa gdy jest-0.0625 st.C bo i tak wyświetla // do częsci dziesiętnych więc byłoby -0.0 st C <-- troche bez sensu if((temp_calosci+poprzecinku)...
Jest to modyfikacja kodu termometru z kursu avr-gcc. Mój wkład to funkcje 'przyciski' i 'termostat', a więc błąd dotyczy tylko ich(ewentualnie usytuowania ich w programie). Problem polega na tym, zwarciu PC4 do masy dostaje krzaki na lcd. Oto kod: #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "hd44780.h"...
Cześć, przeszukując elektrodę znalazłem dużo informacji o dwóch sensorach temp - ds18b20 oraz LM35 . Jednak wszystko co znalazłem to typowe zastosowania termometru - wyświetlanie temp z komputera / samochodu / pokoju. Tymczasem w mojej sytuacji najważniejszy jest czas reakcji na zmianę temperatury (na sensor będzie puszczony strumień powietrza o prędkości...
Witam Chciałbym przy użyciu dwóch przycisków ( nawet jednego, bo pewnie tak się da ) zmieniać czujnik DS18B20, a właściwie wskazania które pokazuje. Mam dwa układy DS18B20 i przy założeniu ( teoretycznym ), że mam mało miejsca na wyświetlanie, więc dobrze by było mieć możliwość zmiany ( na przemian jednym przyciskiem lub dwoma - pierwszy-drugi ). Samo...
Witam, w ramach nauki programowania uC, znalazłem kod pozwalający na wyświetlanie temperatury z DS18B20, na wyświetlaczu 1602A. Jako że na samym przeklejeniu kodu pewnie zbyt wiele bym się nie nauczył, użyłem nieco innego termometru(dokładność nie 0,1, a 0,5*C), zmieniłem układ w jakim ma się wszystko wyświetlać, zastąpiłem float przez int zmieniane...
Czesc wszystkim, Mam problem z poprawnym działaniem termometru na 7-segmentowym wyświetlaczu. Załączam film - no nie chce się bardzo rozpisywać. Generalnie to nic złego w bibliotekach multipleks. Coś z kodem jest nie tak prawdopodobnie w dsb1820. Poniżej załączam kod. Proszę o pomoc. Pozdrawiam. Dodam tylko, że temperatura jest wyświetlana poprawnie...
Witam ponownie Wyświetlanie już działa dobrze przetestowane na powyższym programiku, zawsze wyświetla 012345 w trybie konfiguracji 16*1 lub 16*1a Natomiast problem stanowi program do wyświetlania temp. Jest to program przepisany z książki p. Wiązany ale niestety wyświetla bzdurne wartości, wydaje mi się że problem tkwi w przeliczaniu samej wartości....
Zakładam, że temp -127C jest błędem A dokładniej < -50C lub > 50C Naukowa metoda :-) Tak naprawdę to nie wiesz co się dzieje ma magistrali! Czy brak odpowiedzi na reset, czy złe CRC jak w ogóle jest czytane a wątpię w to. Sprawdzaj CRC! Wcześniej jednak zrób sobie log co się dzieje na magistrali: - reset - presence - search rom (tu masz crc)...
Witam, mam pytanie odnośnie przesyłania pomiaru temperatury z czujnika DS18b20 przez RS232 do PC. Korzystam z płytki edukacyjnej: http://are.net.pl/?id=products&cmd=9... Do uC mam podłączony czujnik DS18b20, wyświetlacz LCD. Pomiar temperatury na LCD wyświetla się poprawnie, to samo chcę wysłać przez RS232 do PC i już nie działa, w ogóle...
Na wyświetlaczu mam górny rząd prostokątów. Co jest nie tak w kodzie? [syntax=arduino]/* * Połączenia: * * 1. Wyświetlacz LCD 2x16 po I2C: * - VCC: 5V (pin Arduino 5V) * - GND: GND (pin Arduino GND) * - SDA: A4 (pin Arduino A4) * - SCL: A5 (pin Arduino A5) * * 2. Czujnik DS18B20: * - VCC: 5V (pin Arduino 5V) * - GND: GND (pin Arduino GND) * - Data:...
Witam Szanownych forumowiczów! Naukę z mikrokontrolerami zacząłem dość niedawno i od pewnego czasu męczy mnie pewna sytuacja z którą nie potrafię sobie poradzić dlatego zwracam się z prośbą do was. No więc do sedna programuję na płycie EvB 4.3 zakupionej w internecie program jaki używam do programowania to AVR Studio 5.0. Mój problem polega na tym,...
no tak zgadza się ale chodzi o poznanie zasady jak to działa, dokładność przetwornika wynosi 0.5st wiec wystarczy nawet całkowite wyświetlać Dodano po 25 Przetestowałem oto mój kod temp = zamien_temp(msb,lsb)*10; d=temp%10; temp=temp/10; c=temp%10; temp=temp/10; b=temp%10; temp=temp/10; a=temp%10; if(a==0) a=10;//wyłącznie 1 wyświetlacza...
Witam Jaki powinien być czas pomiędzy odczytami temp. z 2-uch czujników DS18B20? Chodzi o to, że złożyłem układ napisałem kod który odczytuje temp. jednak przy próbie odczytu temp. z czujników jeden po drugim wyświetla mi tylko temp. jednego z nich (coś jakby pomijało jeden czujnik)... Temperaturę wyświetlam w dwóch liniach na LCD linia pierwsza temp....
Czujniki DS18B20 mam 3 szt. nowiutkie sprawdzone Dodano po 10 Chodzi raczej od strony programu jak wpisać te czujniki Dodano po 34 Ok , udało mi się zapisac czujniki potrzebna była kombinacja klawiszy wyłączenie i włączenie zasilania ale pojawił sie nowy problem mianowicie po ustawienia termostatu czyli temp, zadanej niestety go nie załącza
Podejrzewam że problem jest z odbiorem danych z pilota. BASCOM i GETRC5 nie za bardzo sobie z tym radzi. No i czy masz na pewno pilota RC5? Dodano po 1 Zobacz to: [syntax=basic4gl] $regfile "m8def.dat" 'konfiguracja mikroprocesora $crystal = 4000000 'konfiguracja kwarcu Config Portb = &B11111111 Portb = &B11111111 Config Portc = &B1111101...
Witam Próbuje przerobić kod obsługujący kilka DS18B20 na jednej linii i drugi obsługujący kilka DS18B20 na kilku liniach. Niestety jak na razie efekt jest taki, że działa tylko pierwsza linia, czyli dwa DS18B20. Jeśli chodzi o konfiguracje, to celowo nie ma Config 1wire = Porta.1 gdyż wpisanie tego portu, jako 1WIRE powoduje wyświetlanie 0.0 dla pierwszego...
Wiem. To tylko w celach debugu dla wygody. Zmienię to w finalnej aplikacji jednak obecnie nie ma to wpływu na obsługę ds18b20
Witam, chcę pobierać temp z dwóch czujników DS18B20. Nastepnie sprawdzić czy temp. z 1 czujnika jest mniejsza o 3 stopnie od czujnika 2.Jeśli jest np. mniejsza o 1 stopień, równa lub większa załącza się elektrozawór. Kod jest bardzo prosty, ale jak się nie używa tego na codzień jest już gorzej. Na koniec temp. chcę wyświetlać na LCD, ale to już obie...
Poprawiłem, po usunięciu return faktycznie zadziałało. Teraz mam problem z wyświetlaniem wyniku, przykładowo jeśli jestem na wyświetlaniu Nap, podłączam baterie 1,4V wynik wyświetla się, ale po odłączeniu baterii dalej zostaje 1,4V. Dopiero po przełączeniu na Temp i znów na Nap pokazuje 0.0V. Jak zrobić, żeby wynik na bieżąco był odświeżany i zczytywany...
Witam, Podepnę się pod wątek. Jak wrócę do domu sprawdzę czy u mnie kod działa prawidłowo i dam Ci znać. Jedyne co mi przychodzi teraz do głowy to bym sprawdził co pokaże Arduino bez ustawiania czasu. Zakomentuj czas.adjust(DateTime(__DATE__, __TIME__)); i jeszcze dla pewności zresetował bym DS1307. Ja mam inny problem. Może ktoś z szanownych forumowiczów...
A co to jest SZCZAŁKA ? :? I moglbys swoje pytanie troche rozwinac bo mozna te "szczalki" np. wyswietlac na LCD lub podlaczyc LED [takie jak w np. windach]. A zalozenie jest takie, ze pobierasz temp. i porownujesz z ostatnim pomiarem i jesli wartosc jest mniejsza to temp. spada, czyli "szczalka" w dol. Natomiast jesli temp. jest wieksza od poprzedniego...
Próbowałem. Dodawałem odczyt do programu głównego za getrc5, a wyświetlanie temp w Sub Wys_czas na końcu za Lowerline. Efektem tego było wyświetlanie d dolnej linii na wyświetlaczu: Wynik: 0.0 C Us. Czyli coś namieszałem, bo powinno być najpierw w dolnej linii: Ustaw godzinę, po ustawieniu dopiero temperatura.
Witam, Mam program do obsługi tego czujnika, lecz działa on jedynie dla temperatur dodatnich a chciałbym także aby mierzone były temperatury ujemne. Dodatnie temperatury wyliczam według wzoru: temp = ((lsb & 0x0F) * 0.0625); temp +=((lsb >> 4)+(msb << 4)); temp *= 10; temp0 = (unsigned int)...
Witam, jestem początkujący więc proszę nie krzyczcie na mnie. Chciałem zrobić termometr na atmega16, z temperaturą wyświetlaną na 3 7-segmentowych wyświetlaczach LED (trzeci to 1 liczba po przecinku). Z głębin internetu udało mi się wyłuskać coś takiego: main.c [syntax=text]#include <stdio.h> #include <avr/io.h> #include <util/delay.h>...
http://obrazki.elektroda.pl/2534599000_1... Zegar + termometr DS18B20 - ATtiny 2313 - LED Wykonany na ATtiny 2313. Znane podobne zegary oparto na Atmega 8 i LCD. Program napisany w Bascom. Pracuje bez zarzutu. http://obrazki.elektroda.pl/9466031800_1... http://obrazki.elektroda.pl/4401807600_1... http://obrazki.elektroda.pl/5327081100_1...
http://obrazki.elektroda.net/91_12698878... Witam Przedstawiam moja pierwsza konstrukcje w dziale DIY, którą jest zasilacz dwukanałowy, symetryczny. Od dawna chciałem mieć zasilacz symetryczny, ponieważ czasem potrzebowałem napięcia symetrycznego. Pewnego dnia kapnąłem się że mogę, wykorzystać 2 transformatory z ładowarek, które mi się plątały...
Witam Jeśli temp jest zmienną zawierającą temperaturę odczytaną z ds18b20 to jest to zmienna 16 bitowa ze znakiem. W związku z tym proponuję: - odczytać najstarszy bit (znak) i gdzieś go zapamiętać - jeśli liczba jest ujemna (MSB = 1), wykonać bitową negację i dodać 1 W tym momencie wykonanie operacji przesunięcia bitowego o 4 w prawo zwróci wartość...
Witam serdecznie, wspomnę, że jestem początkującym "programistą" i jest to moje 1 poważne starcie z uC. Planuje wykonać pewne urządzenie, które będzie wyświetlało temperaturę na LCD oraz przy wciśnięciu przycisku, będzie wyświetlał się losowy napis z tablicy na LCD. Niestety otrzymuję błąd przy kompilowaniu. Tytuł postu poprawiony
Witam. Chciałem zrobić termometr bezprzewodowy. Na razie mam problem z komunikacją UART. Nadajnik działa na 100 % odczytywałem temperaturę na komputerze prze ft232. Ale odbiornik nie odczytuje temperatury. W tej chwili obydwa mikrokontrolery są spięte przewodem TX ->RX Kod Nadajnik [syntax=c]#include <stdio.h> #include <avr/io.h> #include...
Witam, Uporałem się już z obsługą multipleksowania wyświetlaczy 7-segmentowych za pomocą timerów, ale teraz powstał kolejny problem. Mam taki kod: [syntax=c]/* Plik "main.c" */ #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "ds18b20.h" #include <avr/interrupt.h> #include <stdbool.h> #define F_CPU...
Witam serdecznie Przejrzałem mnóstwo wątków i stron www o AVR i problemach z komunikacją z czujnikiem temp. DS18B20. U mnie pomiar działa ale jest pewien haczyk - temperatura mierzona jest (i wyświetlana na LCD) do wartości 70stopni Celsjusza. Dalsze ogrzewanie czujnika powoduje, że otrzymuję tylko jedną wartość temperatury tj. 127,9. Po schłodzeniu...
Hey czyli problem jest w instrukcji Ss = Format(ss , " 0.0") wrzuć ten program i powiedz czy wszystko gra jeżeli tak będę pisał co zrobiłem. [syntax=basic4gl]$regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) 'Deklaracja portów od wyświetlacza...
Zobacz w załączniku. Ze swojego programu wołasz procedurę KONW_DS, jeśli czujnik zostanie znaleziony na magistrali to jest ustawiana flaga JESTDS, wtedy w zmiennej TEMP masz wartość temperatury w kodzie U2. W buforze SCREEN1 (program wyświetlał temperaturę na wyświetlaczach 7-segmentowych) masz przekonwertowaną temperaturę na kody wysyłane do wyświetlaczy...
Witam, Mam na linii kontrolera słynny DS18B20. Jeżeli czujnik jest podłączony to wszystko jest ok. Problem pojawia się wtedy jeżeli odepnę na chwilę czujnik. Funkcja zwraca mi wartość -1, a ponowne podłączenie czujnika nie powoduje ponowienia prawidłowych odczytów. Trzeba wtedy po podłączeniu zresetować cały układ. [syntax=c] int odczyt_DS (void) {...
Dzieki za pomoc, swieci ladnie. Idac dalej zrobilem taki manewr, ze mam 3 czujniki temp DS18b20 podlaczone pod nozke nr 4 i chce temp na nich zmierzona wyswietlic na LCD (JM082A http://www.pliki.jm.pl/karty/JM082ASPEC.... ktory podlaczony jest do portu C. Mysle o przyklejeniu tych czujnikow do procka, chipsetu plyty i GPU klejem termoprzewodzacym tak...
Witam serdecznie Napisałem program w którym wykorzystuję czujnik DS18B20 do pomiaru temp. Funkcja zwraca poprawną wartość temp. z tym, że po restarcie procka, na LCD zwracana jest wart. 0. Ponadto mając taki oto kod jak poniżej program skacząc do "jakas_etykieta" ( malo wazna nazwa ;-) ) zapętla się gdyż wskazania sa ciągle 0st. natomiast gdy zaladuje...
Witam, mam problem z przerobieniem biblioteki do obsługi DS1820, tak ,aby można było odczytywać temperature z kilku czujników umieszonych na osobnych pinach. Biblioteki pobrane są ze strony http://kursc.dioda.com.pl/. W podanym niżej pliku port PC0 do którego przypięty jest czujnik jest przypisany na sztywno. Chciałem zrobić tak: #define SET_ONEWIRE_PORT...
Kod razem z bibliotekami skopiowałem ze strony. /* Plik "main.c" KURS AVR-GCC cz.5 (xyz.isgreat.org) Termometr cyfrowy, przykład nr. 3 (schemat i opis działania w artykule) atmega16 (1MHz) */ #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "hd44780.h" #include "ds18b20.h"...
Witam! Zrobiłem sobie termostat i wszystko ładnie po podłączałem oraz oprogramowałem. Jest jednak jeden problem: chce sobie zrobić podmenu (ustawianie histerezy). Na początek tworzenia w/w podmenu chciałem sprawdzić, czy są wciśnięta oba przyciski, a nastepnie wyczyścić wyświetlacz i wypisać aktualną temperaturę. Problem jest jednak taki, że wszystko...
ok do tego też doszedłem a jakiś przykład w c jestem początkujący Dodano po 10 uint8_t buffer[8]; write_text(itoa(temp,buffer,10)); to mi działa ale dostaje taki błąd warning: pointer targets in passing argument 2 of 'itoa' differ in signedness
Ja to robię w następujący sposób (BASCOM AVR): 1. Trzymam temperaturę w zmiennej typu integer, np. 36.6 °C to liczba 366; 2. Aby wyświetlić temperaturę np. na LCD deklaruję zmienną typu string i przepisuję do niej temperaturę za pomocą funkcji Str(). Następnie formatuję przygotowany string przy użyciu funkcji Format i wyświetlam. Przykład: Dim Temp...
Witajcie ponownie , w głowie mojej zrodził się nowy pomysł , a że z Bascomem słabo więc znowu zwracam się do was .Jak w temacie chcę złożyć zegarek synchronizowany sygnałem DCF 77 , termometrem in - out na 2 x ds18b20 pod jedny gniazdem 1-wire , datą i podświetleniem włączanym czasowo po naciśnięciu klawisza. Mam parę programików do obsługi zegara dcf...
Cześć, napisałem właśnie funkcje do obsługi protokołu 1-wire i chciałbym wykorzystać je w prostym termometrze cyfrowym. Myślałem o zrealizowaniu tego w ten sposób, że w pętli while byłyby dwa bloki kodu. Jeden odpowiedzialny za odczyt temperatury z DS18B20, rozłożenie zmiennej z temperaturą na poszczególne cyfry, sprawdzenie czy temp. ujemna i na którym...
Ogólnie tamten program był źle zaczęty bo w pętli inkrementował adres DSa i go wysyłał na Serial, z displayem LCD to się nie udało po wciąż pod tą samą pozycją wyświetlało wszystkie temperatury. To działa i jest w miare czytelne. [syntax=c] //I2C bus support #include <Wire.h> //I2C #include <LiquidCrystal_I2C.h> //OneWire bus suport #include...
Program kompiluje się i wgrywa. Wyświetlony zostaje napis "SAPiR Kamil Osinski" następnie w pętli chciałem kontrolnie wyświetlić zawartość tablicy ROM lecz wyświetlane są same "0". Zatem przypuszczam, że nie został w ogóle odczytany kod ROM. Po czym program przechodzi po kolei do końca kodu i wyświetla napis "Temp", numer czujnika i temperaturę równą...
[syntax=c] if (DS18X20_OK == DS18X20_read_meas(gSensorIDs[0], &subzero, &cel, &cel_fract_bits)) { TabTemp[0] = cel; //część całkowita TabTemp[1] = cel_fract_bits; //część dziesiętna Send_Packet(W_TX_PAYLOAD_NOACK_CMD, TabTemp, 2);// wysyłanie wartosci testowej } [/syntax] Nie wiem jak wyświetlasz dane, ale powinno cokolwiek się zmieniać ze zmianą temp....
Ja znam taki algorytm odczytu temperatury i jest naprawdę super. Korzystam z niego już od dawna i podaje dokładnie temperaturę z krokiem co 0,1°C (chociaż wątpię aby aż taka wielka poprawność podawania temperatury była) no ale 2 takie termometry położone obok siebie pokazują temperaturę identyczną lub różnią się o 0,1-0,2°C więc chyba coś w tym jest...
Powiedz jakie wartości odczytujesz z czujnika (chodzi mi o wartości binarne zmiennych LSB i MSB). temp = (float)(LSB | (MSB<<8)); dziwnie mi to wygląda. jak by tu czegoś brakowało... Jeżeli na czujniku rzeczywiście by było -1 to byłby uwalony, ale tutaj ewidentnie masz coś w kodzie skopane. Podaj jakie LSB i MSB przyjmuje wartości. Pozdrawiam
Dzięki za odpowiedź. Niewiele z tego rozumiem. Co mam zrobić, żeby to zadziałało? Tak wygląda mój main.c: [syntax=csharp]/* Plik "main.c" KURS AVR-GCC cz.5 (xyz.isgreat.org) Termometr cyfrowy, przykład nr. 3 (schemat i opis działania w artykule) atmega8 (1MHz) */ #define F_CPU 1000000L #include <stdio.h> #include <avr/io.h> #include <util/delay.h>...
Poległem... :( Ale jest progres! Ale jednak poległem... Mam już kod, który wygląda, przynajmniej jak dla mnie sensownie, ale niestety nie działa. Czy ktoś z Was mógłby mi pomóc w rozwikłaniu problemu? Temp 1: aft timer Znając życie i początkujących programistów takich jak ja, to coś prostego i głupiego, ale niestety już trochę nad tym dziś siedzę...
ds18b20 tempo ds18b20 wyświetlać ds18b20 bascom wyświetlać
montaż zasilacza antenowego generator energii przycisk indukcyjny
moduł bluetooth blaupunkt daytona
Mercedes radio – podłączenie kabli brązowy, czarny, szary do radia ISO (czarny, czerwony, żółty, pomarańczowy, niebieski) Wymiana głowicy w CF Moto 500 bez wyjmowania silnika