Na temat fuse bitów był osobny temat wałkowany i to dobrze ale narazie ich nie ruszaj bo "uwalisz" procka. DS-y są "wyczulone" na czas w którym następuje konwersja i jesli bedzie nieodpowiedni(wg noty 750ms) to DS moze wariowac i w ogole nie mierzyc(nie zdarzy wykonac konwersji). Jesli chodzi o ADC to w zasadzie różnica jest taka ze przy standardowym...
Spoko, zostaje jeszcze sporo pamięci flash i ram. Używam biblioteki Redlib nohost.
Fakt mój błąd, czytałem z góry zamiast z dołu i zamieniłem nóżki 1 i 3. Teraz działa. Tylko że nie wiem czemu nie pokazuje więcej niż 25 st, powyżej dostaje na 7segmentowca 07.0 (wartość po przerobie na 7 segmentów, ale 7 faktycznie wskazuje) I się zastanawiam czy krzywdy nie zrobiłem tej czujce, jakieś pomysły czemu tak się dzieje? ds18b20_init(0,0,...
1. Poczytaj w datasheet układu co dokładnie robi komenda &H55 i jak jej używać ;) Jeśli już to użyj bascomowego 1wverify(), ale możesz dać tu też &HCC, jeśli masz tylko 1 czujnik. 2. Co do zasilania: http://www.micropik.com/PDF/ds1820.pdf (Strona 24) http://datasheets.maximintegrated.com/en... (Strona 19)
Tu masz dosyć starą (ale jarą) bibliotekę OneWire obsługującą kilka pinów procka: https://github.com/gonium/mikrowerk/tree... Ja jej co prawda używałem tylko w konfiguracji jednopinowej więc nie wiem jak się sprawuje w wielopinowej.
Kolego a wiesz, ze DS18B20 i DS1820 to nie te same układy. Inne są dokładności, konfiguracje itd.
Oczywiście , że wpisując : Config 1wire = Porta.1 zablokujesz odczyt z Porta.0 Musisz przed odczytem z Porta0 , wpisać w programie Config 1wire = Porta.0 a następnie gdy będziesz odczytywał z Porta.1 wpisujesz linie Config 1wire = Porta.1 Czyli , najpierw konfiguracja z której linii potem odczyt.
Niestety nie mogę odnaleźć programów testowych (jeszcze z czasów zabawy z Bascom), na których termometry w obu konfiguracjach chodziły sobie parę dni, ani dokładnych wyników...
Ale robiłeś coś takiego? Też mi się wydawało to proste, ale niestety. Odczyt 1 układu ok, 10 po kolei ok, 2 lub więcej "jednoczasowo" już nie ok. Wymogiem jest aby każdy ds był na innym pinie - więc konfiguracja 1-wire następuje po kolei (nie trwa to długo) dla każdego pinu, po każdorazowej konfiguracji daję polecenie konwersji, później czekam na konwersję...
Opis magistrali 1Wire masz w helpie. Poniżej kod na obsługę dallasa DS18B20. Config 1wire = P1.0 'konfiguracja magistrali 1wire Config Lcd = 16 * 1a 'konfiguracja wyswietlacza Deflcdchar 1 , 4 , 10 , 4 , 32 , 32 , 32 , 32 , 32 'znak stopnia Dim T1 As Single Dim T2 As Single Dim B1 As Byte , B2 As Byte , R As Byte Dim Tmp As String * 6 Dim Znak As String...
Trudniej to opisac niz zrobic :) Generalnie powtarzasz dwa razy to samo czyli wpierw odczyt z pierwszego czujnika, nastepnie z drugiego i wszystko razem dajesz na wyswietlacz.
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:...
Witajcie, W oparciu o Atmegę8 zrobiłem sobie prosty sterownik. Odczytuję temp. z dwóch czujników ds18b20 i na jej podstawie steruje elektrozaworem. Chciałbym dodatkowo wprowadzić obsługę 3 przycisków. Problem w tym, że sam odczyt temp. z czujek powoduje pewne opóźnienia np. czas konwersji jest dosyć spory bo 750ms w związku z tym reakcja na przyciśnięcie...
Zakładając, że użyjesz innego procka, dalej ciężko się domyśleć, o co dokładnie pytasz. Ale spróbuję :p Zapewnie chcesz najpierw obsłużyć przetwornik. Zatem na początku konfiguracja: - jeśli napięcie odniesienia ma być pobierane z wyprowadzenia AVCC mikrokontrolera: Config Adc=Single, Prescaler=Auto, Reference=Avcc - jeśli chcesz skorzystać z wewnętrznego...
(...) odczytu temperatury. Jaki zaproponowałbyś kod (AVR GCC), aby nie trzeba było używać delay'a (może pooling lub maszynę stanu) ? Przy okazji przedstaw optymalną (bez zmiennoprzecinkowych liczb) konwersję danych ze scratpad'a na stopnie (może być złożeniem liczb całkowitych jako stopnie i części ułamkowe). Do obsługi termometrów DS18B20 bez blokowania...
Podłącz na 3 przewodowej konfiguracji i spleciony masa z sygnałem a plus na drugiej parze.
$regfile = "m8def.dat" $crystal = 'Częstotliwość rezonatora Config Lcd = 'Sam nie wiem co wpisać Config Lcdpin = 'Konfiguracja LCD Cls Cursor Off Cls Deflcdchar 1 , 32 , 12 , 18 , 18 , 12 , 32 , 32 , 32 Cls Dim A(2) As Byte Dim T(3) As Byte Dim Temp As Byte Config 1wire = Port 'Konfiguracja magistrali 1-wire Do 1wreset 'Inicjalizacja...
Witam. Chciałbym odczytać temperaturę z czujnika DS18B20 przez długie i krótkie migania diodą. Np gdy mamy temperaturę 25 stopni to dioda sygnalizowała by dziesiątki za pomocą dwóch długich piknięć a jedności poprzez 5 krótkich. Dopiero zaczynam zabawę z Bascomem i kompletnie nie wiem jak się za to zabrać. Poniżej wklejam fragment kodu z odczytem temperatury....
Poprawiłem w ten sposób: [syntax=c] #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "hd44780.h" #include "ds18b20.h" #include <stdlib.h> #include <avr/interrupt.h> #include <util/delay.h> /* Komunikaty w tablicy wysyłane do wyświtlacza */ volatile unsigned char flaga; char str[17]=" Termometr...
Czy na pewno nie ma przerwy na magistrali 1Wire ? Ten program jest sprawdzony i należy szukać błędu w połączeniu i konfiguracji. Czy Atmega jest nowa tzn. bezpośrednio ze sklepu ?
Siemka! Nie ma większego problemu i z paroma czujnikami. Rozwiązania tego problemu są conajmniej dwa. 1. Wrzucasz czujniki każdy na innym pinie portu mikrokontrolera i odczytujesz wynik korzystając właśnie z algorytmu dla jednego czujnika. Jedyna kwestia to tylko sekwencyjne przełączanie interface'u 1-Wire pomiędzy połączonymi z czujnikami pinami portu....
No i działa. Wygląda na to, że to linijki konfiguracji lcd i ta biblioteka jest niestabilna. Na kodzie powyżej działa cały czas już ponad dobę.
Witam Sprawdź konfigurację uK (częstotliwość pracy) być może soft jest napisany na inną częstotliwość Pozdrawiam
Witam Skompilowałem wsad na którym można uruchomić to urządzenie napisany na kodzie z int DS_TEMP = 5; // DS18B20 Temperature pin int AC_LOAD = 3; // PD3 Output to Triac pin code from https://alfadex.com/2014/02/dimming-... int PC817_DET = 2; // PD2 INT0 interrupt pin connected to cross zero detect circuit volatile byte state...
Witam Chodzi o to ze robię sterowanie ogrzewaniem poszczególnych pomieszczeń , jak mam podłączone 5-6 czujników temp to odczyt jest ok ale jak podłączę więcej to lipa nie ma odczytu Jak podłączę ten moduł pod czujniki to odczyt przez windowsa jest ok , czyta wszystkie czujniki , nie ma błędów odczytu , chodzi mi o to jak i co zainstalować żeby raspberry...
Funkcja może przyjąć argument od 0 do AMOUNT-1 i wysyła na linię DQ rom'a z tablicy. [syntax=c] /***************************************... Wysyła 64-bitowy numer identyfikacyjny ROM, z tablicy rom[AMOUNT][8] wybranego urządzenia. ****************************************...
Witam, dzięki za odpowiedź, teraz nie mam jak sprawdzić ponieważ wyjechałem na święta ale jak tylko wrócę to napiszę co u mnie odczytuje oraz sprawdzę twój projekt. Jeszcze porównam twój gpio.h z oryginalnym. P.S. mam prośbę mógłbyś u siebie odpalić ten mój projekt. Zobaczymy czy u ciebie ruszy. Konfigurację masz w katalogu driver/target_config.h. Pozdrawiam
A uruchamiałeś projekt podesłany przez zumek ? U mnie jakiś czas temu ruszył od strzała w konfiguracji, której Ty też używasz. Zmieniłem chyba tylko prędkość kwarcu i to wszystko.
if(!ow_reset()) { ow_write_byte(0xCC); ow_write_byte(0x44); } // minimum 750us na przetwarzanie temeratury; for(i=0;i<250;i++)wyswietl... // wyswietla 00 przez czas konwersji if(!ow_reset()) { ow_write_byte(0xCC); ow_write_byte(0xBE); } lsb = ow_read_byte();...
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...
Zajrzyj do przykładów z biblioteki DallasTemperature, błędów masz tu wiele, brak "begin" dla czujników, nie zlecasz pomiaru temperatury, nie określiłeś sensownego interwału odczytu czujników i wyświetlania danych na LCD. Odczyt czujnika 3 na magistrali to ...ByIndex(2). W przykładach DallasTemperature jest też jak odczytać adresy czujników i pytać konkretny...
Witam. Mam problem z programem który w inny urządzeniu działa jak należy. Program odczytuje numer ID z DS18B20 zapisuje w pamięci a później odczytuje go z pamięci i dzięki niemu odczytuje temperaturę z jednego z dwu czujników. Problem w tym że tej temperatury nie odczytuje. Procesor "widzi" czujniki bo wyświetla ich ID. Same czujniki też mogę odczytać...
W jakiej konfiguracji podpiąłeś czujnik? parasite 2 przewodowy czy z zasilaniem 3 przewodowy? zacznij od sprawdzenia hardware'u, czy odczyt zmienia się przy zmianach temperatury? dotknij czujnik
To: [syntax=c]//czyszczenie, ustawianie bitu #define sbi(port, bit) (port) |= (1 << (bit)) #define cbi(port, bit) (port) &= ~(1 << (bit)) //konfiguracja portu 1-Wire #define OW_PORT PORTC #define OW_PIN PINC #define OW_DDR DDRC #define OW_NUM 7 //makra używane w kodzie #define CLR_DQ sbi(OW_DDR, OW_NUM);cbi(OW_PORT, OW_NUM); //0 na wyjscie...
http://obrazki.elektroda.pl/8836607800_1... Witam Chcę przedstawić konstrukcję termostatu 4 Kanałowego z wyborem trybu pracy. Układ wykonany na Atmega 32 a program napisany w poczciwym Bascomie. Wyświetlacz ma 4 wiersze po 20 znaków Zastosowane czujniki temperatury firmy Dallas DS18B20 Sterowanie jest za pomocą 4 przycisków (menu, up,...
Witam Tytułem wstępu, jest to konstrukcja z projektu SUPLA i wymaga stałego dostępu do chmury a co za tym idzie internetu. Ważna uwaga: Zasilacz w tym urządzeniu nie ma separacji galwanicznej z siecią i wszelkie modyfikacje należy zrobić z głową. Oryginalnie Neo Coolcam jest zdalnie sterowanym gniazdkiem sieciowym kontrolowanym przez procesor ESP8266....
możesz stosować 2x config 1wire ale musisz wtedy tą linijkę umieścić przed odczytem danych z danego ukłądu, żeby obsłużyć 2 scalaki na 1 pinie trzeba odczytać z każdego serial number poleceniem 1wiresearch, 1wirecount 1wirenext i wywoływać je tymi numerami
Tak jak pisałem mam odczyt z rozdzielczością 9-bitową, próbowałem wielokrotnie zapisać rejestr konfiguracji, ale przy odczycie zawsze dostaję, że zawiera same jedynki. Wczoraj, kiedy już straciłem całą nadzieję zauważyłem, że w sklepie sprzedali mi ds1820 zamiast ds18b20, a ten właśnie ma 9-bitową rozdzielczość. Dziękuję wszystkim za pomoc i zamykam...
Nikt nie jest w stanie mi pomóc? nie wie wiem dla czego kontroler nie porównuje wartości Rozumiem że jesteś początkujący , ale nawet Ty powinieneś wiedzieć , że nie porównuje się zmiennej binarnej(Us) ze stringiem (Tmp) :( To tak , jak byś porównywał kilogram z czerwonym :D Poza tym , ten program jest niezwykle pamięciożerny(Fusing,Single). Jeśli ten...
Cześć Robię sobie termometr wielokanałowy oparty o Arduino Mega 2560 i termometry ds18b20. Wszystko działało dobrze - odczyt temperatury, zapis na kartę SD. Zachciało mi się podłączyć dodatkowy czujnik pod to samo łącze no i łącząc pomieszałem przewody - teraz już nie wiem jak, ale napewno podłączyłem źle termometry. Efekt - termometry non-stop zwracaja...
Czym jest spowodowany fakt iż nie dostarczając napięcia do dsa " pracując w konfiguracji dwóch linii danych z podciągnięciem i masa " na pc czujnik działa ok a po podłączeniu do up nie można odczytać danych? Komunikacja jest poprawna ponieważ jest możliwe odczytanie id dsa. Ogólnie tym, że połączenie w trybie dwuprzewodowym (pasożytniczym) wymaga bardziej...
Deflcdchar 1 , 14 , 17 , 17 , 14 , 32 , 32 , 32 , 32 ' definicja znaki stopnia Config 1wire = Portd.5 ' konfiguracja portu PD.5 jako wejcia magistrali 1-wire Dim Odczyt(2) As Byte , A As Byte , Licznik As Byte , T As Integer , T1 As Single , Napis As String * 5 'Deklaracja wszystkich zmiennych potrzebnych do pracy programu Do 1wreset 'reset...
A jaki zakres temperatur chcesz mierzyć? Jeśli temperaturę na dworze lub w domu to zamiast kombinować z ADC nie prościej zastosować DS1820 (DS18B20)? Zakres -55° ÷ +125°C. Temat odczytu danych z DS'a był wielokrotnie klepany na elce, chyba w każdej konfiguracji języka i typu procka... Pzdr. PS: np to: http://www.elektroda.pl/rtvforum/topic71...
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:...
Witam Mam mały problem z tym dość prostym programem. Generalnie działa tak jak powinien, tylko przy włączeniu układu następuje krótkie załączenie przekaźnika. Jest to spowodowane tym, że początkowy odczyt z DS18B20 jest 85 stopni ( integer 850 ) co przekracza ustaloną przeze mnie początkową wartość 45 stopni ( integer 450 ). Próbowałem dać badanie warunku...
Witam na potrzeby szkolne stworzyłem termometr na układach Attiny 2313 i Dallas 20b18 Interesuje mnie w jaki sposób odbywa się odczyt temp. z czujnika Dołączam program z bascomAVR $regfile "2313def.dat" *Nazwa pliku doobsługi programu $crystal = 1000000 *Częstotliwosc taktowania 1Mhz z dokumentacji układu Config Lcd = 16 * 1a *Deklaracja LCD...
Witam Obsługuję czujnik DS18B20 w Bascomie. Czy czas pomiędzy kolejnymi poleceniami, tj. 1wreset , potem 1wwrite &H55 , potem 1wwrite &HCC ... itd. może być dowolnie długi, przykładowo -np 6 minut; 5 godzin; 10godzin czy też 10dni .... ? Oczywiście wysyła 1 polecenie, czeka, wysyła drugie itd. do końca... Czy są ograniczenia? NIE! Te czasy (timingi)...
Witam, postanowiłem zbudować termometr w oparciu o popularny czujnik DS18B20 i procesor attiny2313. Układ zmontowałem zgodnie z poniższym schematem ścieżek: http://www.portalnaukowy.edu.pl/grafika_... Kod programu wygląda następująco : $crystal = 4000000 'deklaracja częstotliwo�ci pracy kwarcu $regfile "attiny2313.dat"...
Mam wątpliwości czy czujnik temperatury ma być podłączony jak na rysunku z KITU to znaczy nóżki 1 i 3 zwarte czyli GND zwarte z VDD ? I w datasheet też niby tak tam pisze? Nie znam dokładnie angielskiego. W Twoim projekcie czujnik DS18B20 zasilany jest pasożytniczo, więc jak najbardziej jego VCC powinno być zwarte do GND. Poniżej wytłumaczenie. https://obrazki.elektroda.pl/4396980000_...
Nie mam zdefiniowanego co ile ma być odczyt temperatury Tutaj jest fragment kodu: #include <DallasTemperature.h> //biblioteka czujnika temp #include <OneWire.h> //biblioteka interfejsu #include <LiquidCrystal_I2C.h> //biblioteka wyświetlacza 2004 #define ONE_WIRE_BUS2 //definiowanie pinu ONE-WIRE OneWire oneWire(ONE_WIRE_BUS); DallasTemperature...
Skoro tak się sprawy mają , to: a)uszkodzony(e) DS-y - mało prawdopodobne ;) b)Crystal <> faktyczna częst. taktowania uC - wielce prawdopodobne :( Spróbuj załadować taki test: $crystal = 8000000 'konfiguracja LCD i 1wire Dim x as Byte Cls Do For x=0 To 9 Locate 1,1 Lcd x Wait 1 Next 1wreset If Err=1 Then Lcd " Error"; Else Lcd "Reset...
Witam, podłączam 4 czujniki temp ds18b20 poprzez 1wire do atmega32. Chciałbym zapisać ich id do eepromu a potem odczytać z tablicy. [syntax=basic4gl]Dim Id1(8) As Byte zapis: For C = 1 To 8 Step 1 writeeeprom id1(c), c Next C odczyt: For C = 1 To 8 Step 1 readeeprom id1(c), c Next C wyswietlanie: For C = 1 To 8 Step 1 Lcd Hex(id1(c)) Next C[/syntax]...
-onwire.h zmieniłem tylko pin, do którego odpowiada za linie 1Wire, czasami zostawiałem to nie zmieniane i tak jak tam piszę podłączałem odpowiedni pin. -Naturalnie, kwarc wsadzony 11059200 -Tak -Zgadza się -W instrukcji pisało, że zworki bodajże mają być włożone, aby zadziałał zewnętrzny kwarc -Sprawdzać nie sprawdzałem. -Ominąłem całkowicie gniazdko...
(at)RitterX , źle zrozumiałem ;) Rezystory jakie chcę użyć to zwykłe, przewlekane 1% w prototypie. W docelowym urządzeniu będą SMD 1206 1% Na tą chwilę będzie to prosty sterownik, a jak wszytko pójdzie dobrze to będę chciał go bardziej rozbudować. Największym moim problemem jest pomiar pH (at)_jta_ , odczyt temperatury mam na DS18B20 ponieważ chcę...
http://obrazki.elektroda.pl/8342911300_1... ESP8266-12E tym razem będzie to NodeMCU Amica . Po umieszczeniu poprzedniej części materiału: DS18B20 komunikujący z wykorzystaniem cyfrowej magistrali 1-wire . W porównaniu do analogowego TMP36 na magistrali 1-wire może pracować kilka czujników. Warto zwrócić uwagę na długość (pojemność)...
Witam Zachęcony sukcesami z płytką EVB 4.3 zaprojektowałem i zamówiłem swoją - na początek z AtMega8 w DIP. Do tego pamięć 24C32 oraz układ do RS485. Wszystkie układy mają kondensatory 100 nF ( stabilizator 7805 również + jeden elektrolit ). Całość ze złączem pod wyświetlacz 2*24 ( właściwe 4*12 ) Reset przez rezystor 10 K do +5V AtMega8L ( na 8 MHz...
[syntax=basic4gl] $regfile = "m8def.dat" 'deklaracja procesora $crystal = 8000000 'deklaracja czestotliwosci taktowania Config Lcd = 16 * 2 'typ wyswietlacza i konfiguracja pinow Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0 Deflcdchar 0 , 7 , 5 , 7 , 32 , 32 , 32 , 32 , 32 'definicja...
Witam, Przeszukałem forum i nie znalazłem rozwiązania które by pomogło. Problem wygląda następująco. Komponenty problemu Atmega8a, bascom AVR IDE (2.0.7.5), czujnik DS18B20. Sprawdzone problemy z forum: -Nieprawidłowe podłączenie. Nóżka danych jest podciągnięta przez 4,7k Ohma do 5V -Kable zostały sprawdzone pod względem ciągłości -Sprawdziłem czy jest...
Książka to "Programowanie Mikrokontrolerów AVR w jez. BASCOM" Program termometra. Przykład z książki. 'Program obsługi jednego układu DS1820 dołączonego 'do magistrali 1-Wire $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje kompilator 'o częstotliwości oscylatora 'taktującego mikrokontroler...
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...
Czy ten program jest poprawny? Jak dodać drugi czujnik ? $regfile = "m8def.dat" 'proc = atmega8 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.1 , Rs = Portb.0 'konfiguracja LCD Config Lcd = 16 * 2a Config 1wire = Portd.5 Config Pind.6 = Input Config Pind.7 = Input Dim Odczyt(2) As Byte...
informującego o zmianie temperatury co 1 stopień w górę lub dół To są założenia więc co każdy stopień ma być krótki sygnał. Warunek If T >= 200 then spowoduje że przekroczenie 20 stopni spowoduje sygnał. Muszę chwilę pomyśleć. Trzeba badać także różnicę pomiędzy odczytem poprzednim a następnym. Sprawdź to: (zmień procesor, konfigurację LCD, portów,...
Witam. Oto KOD: 'Jednopunktowy termometr z czujnikiem DS18B20 'www.portalnaukowy.edu.pl 'Program na podstawie kursu z książki "Mikrokontrolery dla Początkujących" Pana Piotra Góreckiego $crystal = 4000000 'deklaracja częstotliwości pracy kwarcu $regfile "attiny2313.dat" 'model procesora dla którego jest ten program Deflcdchar 1 , 14 , 17 ,...
Po pierwsze, z doświadczeń kolegi wiem, że 1 - wire w BASCOMie działa źle (lub wcale) z wewnętrznym oscylatorem. Pewnie wymagalepszej stabilności częstotliwości ze względu na wymagania czasowe 1 - wire. Po drugie, sprawdź czy ustawiłeś fusebity na odpowiednią częstotliwość oscylatora. Po trzecie, nie widzę żebyś wrzucił dyrektywę $fosc (a to ważne dla...
Podłączam 3ma przewodami, DQ do VDD przez 4k7. MSB odczytu temperatury nigdy nie zmienia sie - ciągle pozostaje zero. Próbowałem z miany konfiguracji - polecenie &H4E nie działa "do końca" - mogę zmienić bajty Th i TL, za nic w świecie nie mogę zmienić wartości rejestru konfiguracyjnego. Ten sam kod działa jeśli podmienię czujnik na kupowany w TME DS18B20...
http://obrazki.elektroda.pl/9506573100_1... Ostatnio sporo osób prezentuje swoje konstrukcje zegarów, więc i ja postanowiłem pokazać zegar jaki zrobiłem na prośbę kolegi. Ogólnie założenie było takie, by zegar był widoczny w nocy z większej odległości. Kolega zaproponował aby zrobić go na około 10cm wyświetlaczach LED. Wydało mi się...
Tworzę sterownik który będzie operował na 4szt DS18b20 Program jest pisany w bascom Czy w bascomie można zadeklarować tablicę dwu wymiarową Tablica (4)(8) Dla czego przy odczycie danych muszę ponownie resetować magistralę i podawać numer seryjny układu. Podobno po wysłaniu za pierwszym razem numeru układu inne milczą a wskazany nadsłuchuję 1wreset 1wwrite...
Witam. Jakiś czas temu zrobiłem koledze sterownik w zasadzie wentylatora do pieca. Sterownik w sumie działa według założeń ale czasami dostaje szajby. Do tej pory nie znalazłem przyczyny. Skłaniam się bardziej ku temu że jest to jakiś problem z programem. Problem jest taki że czasami po jakimś czasie wartości temperatur odczytywanych z czujników DS18B20...
to ma tak wyglądać? Błędy mi wywala. Zrób na obojętnie jakim pinie i napisz mi jaki to będzie. Z mikroklockami to ja dopiero zaczynam PS. Jak można sprawdzić ten czujnik czy jest dobry? chociaż czy układ działa poprawnie 'Jednopunktowy termometr z czujnikiem DS18B20 'www.portalnaukowy.edu.pl 'Program na podstawie kursu z ksišżki "Mikrokontrolery...
Aby kod łatwo było analizować używaj znaczniki SYNTAX: [syntax=c] tu wklej Twój kod [/syntax] Plik : HD44780.c Plik : HD44780.h Dodano po 25 Ja połączyłem je w ten sposób ale pewnie źle bo wystąpiły błędy w kompilacji. Proszę o pokazanie mi sposób połączenia tych dwóch plików w prawidłowy sposób. Pierwsze uwagi: - te dwa pliki to tylko...
Dopisz w polu konfiguracji "Config pind.7 = output", a w pętli prosty warunek If..then. Gdybyś miał problemy z warunkiem If od zmiennej T, spróbuj dać warunek od zmiennej S, uwzględniając jej zapis.
Witam :) Mam problem, otóż, gdy w programie ustawiam stałą wartości temperatury np. 30*, 60*, 90* warunki dobrze działają. Natomiast z czujnikiem DS18B20 już program nie działa poprawnie, wentylator nie obraca się. A powinien zmieniać płynnie obroty zależnie od temperatury. Jaki jest błąd w programie? '****************************** PROCEK I KWARC *********************************...
Witam Mam układ, który mierzy dwie temperatury ( DS18B20 ), dwa napięcia ( PCF8591 ( pobiera czas ( PCF8563 ), a z powodu niedużego wyświetlacza ( 12 x 4 ) wskazania są zmieniane do 10 sekund po przepełnieniu Timer1. Układy PCF8563 i PCF8591 są podpięte z "zewnątrz" przewodami około 10 cm. Magistrala I2C ma obniżoną prędkość przez Config I2cdelay =...
Program ogólnie poprawny, choć: 1. Zamiast Waitms 750 postaraj się wszystko ztimingować na timerze. 2. Nie ma żadnych przeciwwskazań, żeby w normalnej aplikacji DS był blisko kwarcu. A co ma poza tym eeprom ds'a do odczytu temperatury? EEPROM jest zapisywany wtedy i tylko wtedy gdy wywołasz komendę zapisu konfiguracji temperatur alarmów i rozdzielczości...
W bascomnie ciężko zrobić LED + Ds18b20 wszytko psuje Waitms 750. Zwiększ do 8 a jak możesz do 16MHz kwarc. A od kiedy to musimy czekać 750ms nie robiąc nic innego? Od czego mamy timery? Przepraszam najmocniej Kolegę, ale jeśli Kolega tego zrobić nie potrafi to: 1. Nie oznacza że się tego zrobić nie da - ja nie potrafię zbudować komputera klasy PC...
Hejka, Układ DS18B20 jest konfigurowalny, a domyślnie odczyt temperatury jest chyba z rozdizelczością do 4 miejsc po przecinku (patrz dokumentacja nie pamiętam już). Ja swój układ konfiguruję np z dokładnością do jednego miejsca po przecinku z rozdzielczością 0.5 stopnia: 1wreset 'wybieram id układu 1wwrite &H4e 1wwrite 255 1wwrite 255 1wwrite &B00011111...
(at)arturavs Wrzucam screenshot z konfiguracji w dedykowanym programie Epever na PC. Wydaje mi się, że prąd ładowania zależy od ustawionej pojemności akumulatora - 1/10C, bo pola ustawiania wprost prądu ładowania są niedostępne do edycji (pdp. zależą od firmware kontrolera). https://obrazki.elektroda.pl/2537896600_... Podgląd prezentuje...
Witam, potrzebuje gotowego wsadu do procka tzn już skompilowanego do postaci hex. Przerobiłby mi go ktoś??? Oto kod: 'Jednopunktowy termometr z czujnikiem DS18B20 'www.portalnaukowy.edu.pl 'Program na podstawie kursu z ksišżki "Mikrokontrolery dla Poczštkujšcych" Pana Piotra Góreckiego $crystal = 4000000 'deklaracja częstotliwo�ci pracy kwarcu...
Poruszę tylko 2 sprawy: 1)Jeżeli do odmierzania 1 s użyłeś Timer2 "napędzany" kwarcem 32768Hz , to po kiego grzyba procedurę odliczania sekund podkładasz pod przerwanie INT0 :?: On Int0 1s Zamiast włączać przerwania INT0 , włącz przerwania Timer2. On Timer2 1s Config Timer2 = Timer , Async = On , Prescale = 128 Enable Time2 '... 2)Myślałem, że już widziałem...
No to mam taki problem, mam attiny 2313 podłączonego do wyśw. 2x16 i do attiny podłączonego ds18b20. Na wyśw. mam napisane Temp:-0.1C. Problem tkwi w tym że temperatura jest zawsze -0.1C kod programu : $crystal = 4000000 'deklaracja częstotliwo?ci pracy kwarcu $regfile "attiny2313.dat" 'model procesora dla którego jest ten program ' definicja...
Witam! Stworzyłem termometr na Attiny2313 i mam problem po uruchomieniu. Cały projekt pochodzi z tego Linku Program też ściągnięty z strony wygląda następująco: 'Jednopunktowy termometr z czujnikiem DS18B20 'www.portalnaukowy.edu.pl 'Program na podstawie kursu z ksišżki "Mikrokontrolery dla Poczštkujšcych" Pana Piotra Góreckiego $crystal = 4000000 'deklaracja...
Witam. Koledzy niby prosty układzik między innymi z czujnikiem temperatury DS18b20. Nijak nie mogę uruchomić tego czujnika. Sprawdziłem wszystko pod kątem połączeń zwarć i zimnych lutów. Ba nawet czujnik podmieniałem i nadal temperatura odczytana z czujnika to -0.1. Wiem że mam jakiegoś babola w programie którego nie widzę. Jak znam życie to jakiś banał...
Witam, Na tej stronie znalazłem opis jak podłączyć czujnik DS18B20 do wyświetlacza LCD http://www.portalnaukowy.edu.pl/termomet... Oto kod: 'Jednopunktowy termometr z czujnikiem DS18B20 'www.portalnaukowy.edu.pl 'Program na podstawie kursu z ksiażki "Mikrokontrolery dla Poczatkujacych" Pana Piotra Góreckiego $crystal = 4000000 'deklaracja...
Ciekawy pomysł z przeniesieniem odczytu na początek- to sprawdzę. A Timera0 nie można zatrzymywać bo obsługuje coś jeszcze. Timer1 i 2 też są zajęte. Chyba się cholera udało- z jedną flagą :D : $regfile = "m8def.dat" $crystal = 8000000 '********* Konfiguracja wyświetlacza ********* $lib "Lcd4busy.lib" Const _lcdport = Portd Const...
Za bardzo nie wiem już co może być powodem takiego zachowania mikrokontrolera, więc jestem zmuszony prosić Was o pomoc :) Zacznę może od tego, że pracuję na zestawie ZL3AVR i Atmedze16. Chciałem podpiąć do uC termometr DS18B20, ale uC go nie widzi. Napisałem sobie program, do zliczania urządzeń na 1W ale pokazuje mi ciągle 0, oto jego kod: '---------------------------------------...
Wedle życzenia wstawiam wszystko jak leci Program główny [syntax=c]//Sterownik wytrawiarki PCB, LCD2x16, ds18b20 #include <avr/io.h> #include <util/delay.h> #include <stdlib.h> #include <stdio.h> #include "HD44780.h" //plik sterowania LCD #include "ds18b20.h" //plik odczytu z DS //makro przycisku #define KEY (1<<PC7) //makra...
Od kilku dni staram się uruchomić pomiar temperatury czujnikiem ds18b20. Pomiar niskich temperatur przebiega poprawnie. Po przekroczeniu temperatury 54stC na wyświetlaczu ukazuje się wartość 127. Poniższy kod jest skopiowany z tego forum, poza tym napisałem własne funkcje obsługi 1wire lecz skutek był taki sam. Programując uC bascomowymi procedurami...
Usunąłem Wait 1 przy konwersji z DS18B20, działa, bez problemu ( na trzech przewodach ), tylko wyniki są opóźnione - tzn. wyświetlany wynik nie jest z aktualnego pomiaru, tylko z poprzedniego. Dodałem jeszcze dwa czujniki DS18B20. Ich zapis razem z godziną i datą na karcie jest jak najbardziej w porządku, tylko wyświetlanie trochę szwankuje - tzn. czasem...
Witam Mam problem ze skompilowaniem w Bascom 8051 procedur do DS18B20 'program obslugi termometru DS18B20 ' $regfile = "89c4051.dat" 'P3.7 - magistrala 1wire ( do termometru ) 'P3.5 - przycisk zwiekszajacy temperature 'P3.4 - przycisk zmniejszajacy temperature 'P3.2 wyjscie termostatu ( np. do sterowania grzejnikiem ) 'uwaga:...
Witam Mam problem z odczytaniem temperatury z 2-uch ds18b20 program napisałem w C w oparciu o znalezione pliki owire.c i owire.h program się kompiluje jednak na wyświetlacz nie trafiają informacje o MSB i LSB (na początku chcę przetestować na jednym ds18b20 bez konwersji na temperaturę) jedyną modyfikacją jaką wprowadziłem było zdefiniowanie typu u08...
Dziękuję Ci zumek za pomoc wcześniej napisałem do twórcy tego kodu i on też powiedział mi o przesunięciu bitowym przy odbieraniu bajtu. Możliwe że podczas przepisywania pomyliłem się w trakcie pisania ale i również możliwe że została zmieniona zawartość pliku pdf na ten który jest teraz ale tak czy inaczej kod już działa. Gdyby ktoś chciał to w załączniku...
Witam serdecznie. Walcze już z tym drugi dzień. Na początku problemem było permanentne wskazanie 0 -1. Jednak gdzieś na forum znalazłem informację aby wymienić czujnik co okazało się strzałem w dziesiątkę. Teraz jednak mam inny problem. Maksymalna temperatura jaką chciałbym zmierzyć to około 100 stopni. Jednak po przekroczeniu wartości 35 stopni układ...
Witam. Potrzebuję pomocy. Zrobiłem sterowanie do elektrozaworu do CO, lecz Ds18b20 od czasu do czasu pokazuje jakaś śmieszna temperaturę np. 340st lub -84 i inne. odczyt temperatury realizuję w ten sposób: http://obrazki.elektroda.pl/6964056700_1... rezystor 4,7k oczywiście wpięty. Ggdzie mam szukać problemu? Pozdrawiam. Proszę w przyszłosci...
Siemka! Tak jak napisał kolega wyżej, wpisz $Crystal=1000000 Każdy nowy AVR prosto ze sklepu ma fabrycznie ustawione taktowanie na wewnętrzny zegar 1MHz, zatem Twój kwarc nie gra żadnej roli w tym układzie dopóki go nie uaktywnisz poprzez konfigurację FUSE BITS. W momencie gdy nie przestawiłeś zegara a zadeklarowałeś wartość wlutowanego kwarcu, bascom...
https://obrazki.elektroda.pl/9206749600_... Do stworzenia termostatu opartego o ESP8266 nakłonił mnie znajomy. Potrzebował urządzenia sterującego grzałką i łatwo zdalnie konfigurowalnego. Zaraz pomyślałem o płytce NodeMCU którą miałem pod ręką... Oprogramowanie nie powstało w języku LUA (co mogłaby sugerować płytka) a w języku C++...
http://obrazki.elektroda.pl/8359932900_1... W Wi-Fi i Bluetooth oparty o ESP32 . W porównaniu do wcześniej dostępnych modułów Charakterystyka ESP32 w porównaniu do ESP8266: -liczba rdzeni: 2 (ESP8266: 1) -WiFi + Bluetooth/BLE (ESP8266: WiFi) -RAM: 512kB (ESP8266: 160kB – 96+64) -ilość pinów GPIO zależnie od wersji: ~32 (ESP8266:...
Ale Ty jesteś niecierpliwy. Masz odczyt DS bez wait- które to wait wszystko psuje. Flaga_dodatkowa wykorzystaj do multipleksowania wyświetlaczy. I podziękuj malon-owi za dobry pomysł. $regfile = "m8def.dat" $crystal = 8000000 '********* Konfiguracja wyświetlacza ********* 'oczywiście może być bez RW $lib "Lcd4busy.lib" Const _lcdport...
Witam Atmega328 i Attiny2313 przez RS485 Atmega328 Master - zapis na razie wyzwalany przez Timer If Flaga_001 = 1 Then Set Re_de Waitms 1 Print "MOD001 " ; Chr(13); Waitms 1 Reset Re_de Flaga_001 = 0 Licznik_mod001 = 0 End If ATtiny2313 Slave $regfile = "attiny2313.dat" $crystal = 8000000 $baud = 4800 '*********************...
W helpie jest napisane, że domyślnie Timer0, opcjonalnie Timer2. Czyli zostaje odbiór RC5 z dodatkowej płytki. A już myślałem, że Atmega644 jest jakaś trudniejsza w opanowaniu - są z nią większe problemy. Przyznam, że jeśli przy tej samej konfiguracji sprzętowej można uzyskać ten sam efekt a nawet "wyciągnąć" więcej to C staje się co raz bardziej kuszące....
http://obrazki.elektroda.pl/1890330400_1... Witam, Sterownik pompy ciepła. Żeby tanio grzać trzeba nie tylko posiadać dobra pompę, ale bardzo sprytnie nią sterować. Ponieważ na rynku w ogóle nie ma sterowników, które choć trochę spełniałyby moje wymagania, wykonałem swój własny. W zaszłym sezonie dwa takie urządzenia pracowały przez...
ds18b20 odczyt ds18b20 konfiguracja ds18b20 błąd odczyt
czujnika temperatury zewnetrznej ochronnik przepięć brother pasek wydruk
speakon łączenie drzwi rozsuwane
Latarka akumulatorowa LED – wybór, akumulatory 18650/21700, ładowanie USB-C, marki Cree, Olight Bluetooth w RCD300 Grundig – adaptery, integracja, montaż, kompatybilność