| Author |
Message
|
wojlej Poziom 11

Joined: 09 May 2006 Posts: 71 Location: Lębork
|
#271
24 Oct 2009 19:08 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witam, napisałem program do nadajnika, mógłby ktoś zerknąć, lub ewentualnie wnieść poprawki. Proszę o pomoc.
| Code: |
$regfile = "m8def.dat"
$crystal = 8000000
$baud = 9600
Config 1wire = Portd.5 'deklaracja magistrali 1-wire
Dim W As Byte
Dim I As Byte
Dim Temperatura As Integer ' deklaracja zmiennej I wykorzystywanej do petli for next 'deklaracja zmiennej W przechowującej ilość czujników
W = 1wirecount() 'polecenie odczytania ilości czujników podpiętych do
'magistrali 1-wire
Dim Id(8) As Byte 'tablica do przechowywania ID czujnika
If W > 0 Then 'jesli liczba ukladow > 0 to...
Id(1) = 1wsearchfirst() 'odczytanie numeru seryjnego ukladu dolaczonego do
'magistrali 1-wire
For I = 1 To 8 'petla wykonywana 8 razy do zapisania id czujnika w 8 slowach
Writeeprom Id(i) , I
Next I ' zwiekszanie I od 1 do 8
End If
Do
1wreset
1wwrite &H55
1wverify Id(8) 'wysyłamy adres pierwszego czujnika
1wwrite &HBE
Temperatura = 1wread(2)
1wreset
1wwrite &HCC
1wwrite &H44
Temperatura = Temperatura * 10 'konwersja temperatury
Temperatura = Temperatura / 16
Print W
Print Id(8)
Print Temperatura
Wait 5
Loop
|
|
|
| Back to top |
|
 |
michalkx Poziom 3

Joined: 15 Jun 2008 Posts: 5
|
#272
25 Oct 2009 14:31 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witam
Zrobiłem termometr wg schematu: http://obrazki.elektroda.net/49_1186689278.jpg i wgrałem poprawny program. Jednak mam problem z wyświetlaczem.
Po podłączeniu samego zasilania widzę jedną czarną linie, co wg tego co czytałem jest poprawne.
Natomiast po podłączeniu wszystkich pinów mam dwie czarne linie.
Kontrast wyregulowany poprawnie (potencjometr 10k skręcony na 0)
Masa do pinu 5 R/W.
Wyświetlacz to 20*2 (http://www.lispol.com/pdf/BTHQ_22005VSS.pdf). Wg sprzedającego zgodny z HD44780.
Procek startuje poprawnie, bo po wgraniu programu pojawiają się dwie czarne linie a bez programu jedna.
Czytałem ten temat: http://www.elektroda.pl/rtvforum/topic1421250.html gdzie opisywany jest podobny problem, ale nie znalazłem rozwiązania.
Proszę o pomoc :)
|
|
| Back to top |
|
 |
Gonza Poziom 18

Joined: 01 Mar 2006 Posts: 509 Location: Tychy
|
#273
25 Oct 2009 16:34 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
To wygląda na źle ustawiony kontrast, wątpię żebyś miał mieć dobry kontrast przy potencjometrze 10k ustawionym na 0.
|
|
| Back to top |
|
 |
michalkx Poziom 3

Joined: 15 Jun 2008 Posts: 5
|
#274
25 Oct 2009 18:39 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Kręciłem potencjometrem ;) Czarne pasy wtedy znikają całkowicie.
edit2:
Problem leżał po stronie opóźnień wyświetlacza. Biblioteki C ze strony: http://radzio.dxp.pl/hd44780 maja inne opoznienia niz standardowa biblioteka bascoma i dzieki temu dzialaja bez problemu. Polecam także lcd4busy do bascoma, która ma odczyt linii r/w i działa znacznie szybciej.
|
|
| Back to top |
|
 |
Google

|
#
25 Oct 2009 18:39 |
|
|
|
|
|
| Back to top |
|
 |
lok56 Poziom 11

Joined: 17 Jan 2007 Posts: 65 Location: rudnik n.s
|
#275
30 Oct 2009 11:24 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witam!
wykonałem niedawno termometr Ducha 4xDS18B20 isprawuje sie dobrze.
Chciałbym go troche zmienic. dodałem linijke oraz procent ze
sredniej temperatury z 4 DS. mam problem z wyswietlaniem poniewaz zostaja smieci gdy nastepuje przełaczanie z jednego ekranu na drugi
Pb 0.1 . Błedem jest równiez brak wysyłania wszystkich zmiennych na rs232.
prosze o sprawdzenie kodu i ew. uwagi
pozdrawiam
| Description: |
|
 Download |
| Filename: |
kod.txt |
| Contents: |
|
| Filesize: |
6.27 KB |
| Punkty: |
0.00 |
|
|
| Back to top |
|
 |
pawel8704 Poziom 10

Joined: 22 Jul 2007 Posts: 53 Location: Kalisz, Wrocław
|
#276
30 Oct 2009 22:53 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Mam problem z uruchomieniem tego układu, a mianowicie. Programuje go wszystko dobrze sie programuje zakonczone sucesem. Gdy włączam termometr pokazuje sie w pierwszym wierszu "2004" po chwili znika 2004 pojawia sie ":.04.2004" po chwili znika nie ma niczego na wyświetlaczu pojawia sie "5" po czym znika ona calkowicie i juz nic sie nie pojawia. Mam podłączony narazie tylko 1 czujnik. Kwarc 8MHz Bardzo prosze o pomoc.
Już naprawiłem ten problem pojawił sie inny. Przy podłączonym jednym czujnku temperatura zawsze pokazywana jest 0,0 dla kazdego czujnika. Czujnik podłączony dobrze.
|
|
| Back to top |
|
 |
k750i Poziom 14

Joined: 20 Jul 2008 Posts: 169 Location: Milwaukee
|
#277
03 Nov 2009 17:14 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witam!
Panowie mam problem z tym termometrem. Wgrałem wsad w załączniku przerobiony na 2 czyjniki oraz LCD2*16. Dopóki były temperatury dodatnie to wszystko było oki. W momencie gdy temperatura spadnie do lub poniżej zera czujnik zewnętrzny pokazuje taką samą temperaturę jak czujnik wewnętrzny i po uruchomieniu w odczycie ID czujnika pokazuje takie same id jak czujnik wewnętrzny. W załączniku przesyłam kod który mam wgrany do termometru.
Pozdrawiam
k750i
| Description: |
|
 Download |
| Filename: |
LCD 16x2 2sztds18b20.txt |
| Contents: |
|
| Filesize: |
3.26 KB |
| Punkty: |
0 |
|
|
| Back to top |
|
 |
Gonza Poziom 18

Joined: 01 Mar 2006 Posts: 509 Location: Tychy
|
#278
03 Nov 2009 17:59 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Podmień końcowy fragment kodu (ten po komentarzu: "Jeśli pracujesz z wyświetlaczem...") na poniższy i napisz czy działa.
| Code: |
I1 = I1 * 10
I1 = I1 / 16
If I1 > 0 Then
Ss = Str(i1)
Ss = Format(ss , " 0.0")
Locate 1 , 1
Lcd "Zew" ; Ss ; Chr(0) ;
Else
Ss = Str(i1)
Ss = Format(ss , " 0.0")
Locate 1 , 1
Lcd "Zew" ; Ss ; Chr(0) ;
End If
I2 = I2 * 10
I2 = I2 / 16
If I2 > 0 Then
Ss = Str(i2)
Ss = Format(ss , " 0.0")
Locate 2 , 1
Lcd "Wew" ; Ss ; Chr(0) ;
Else
Ss = Str(i2)
Ss = Format(ss , " 0.0")
Locate 2 , 1
Lcd "Wew" ; Ss ; Chr(0)
End If
|
|
|
| Back to top |
|
 |
baksik00 Poziom 10

Joined: 19 Sep 2007 Posts: 53 Location: Rymanów
|
#279
27 Nov 2009 14:45 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Czy mozna znaleźc gdzies opis, podlączenie termometru do komputera. Wyswietlacz i czujniki -----> komputer, bezprzewodowo.
|
|
| Back to top |
|
 |
k750i Poziom 14

Joined: 20 Jul 2008 Posts: 169 Location: Milwaukee
|
#280
29 Nov 2009 22:52 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witam!
Dzięki kol. Gonza za pomoc. Po poprawieniu programu z programem przez Ciebie problem niestety nie został rozwiązany. Okazało się, że uszkodzony był czujnik po wymianie juz jest wszystko ok.
Proszę jeszcze o małą pomoc. Potrzebuję dodać do tego programu funkcję- jeżeli temperatura na czujniku piec przekroczy 85stC to żeby na PD0 załączało buzzer ( podpięty przez tranzystor do plusa zasilania) oraz żeby na wyświetlaczu wyświetlało napis
" Uwaga PRZEGRZANIE"
| Description: |
|
 Download |
| Filename: |
3ds18b20.txt |
| Contents: |
|
| Filesize: |
5.13 KB |
| Punkty: |
0 |
|
|
| Back to top |
|
 |
zgrzezly Poziom 2

Joined: 14 Sep 2007 Posts: 4 Location: wawa
|
#281
05 Dec 2009 20:37 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witam,
proszę o pomoc z następującym problem, nie mogę go rozwiązać samodzielnie. Potrzebuje obok wyświetlonej temperatury w formacie 00.0 wyświetlić zmienną z wynikiem obliczeń wg formuły zmienna=0,00000060526*T^4-0,00016316*T^3+0,016396*T^2-0,83438*T+100
T-temperatura wyświetlona w stopniach. zmienna ma być wyświetlona w formacie 00.00
Pozdrawiam idziękuje za pomoc
zgrzezly
|
|
| Back to top |
|
 |
seba_x Poziom 22

Joined: 07 Jul 2003 Posts: 1528 Location: czarna dziura
|
#282
11 Dec 2009 13:42 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
| Code: |
Dsid1(1) = 1wsearchfirst() 'Znajdź kolejny czujnik podpięty do portu
Dsid2(1) = 1wsearchnext() 'Znajdź kolejny czujnik podpięty do portu
Dsid3(1) = 1wsearchnext() 'Znajdź kolejny czujnik podpięty do portu
Dsid4(1) = 1wsearchnext() |
Jeśli padnie jeden z czujników i go zastąpimy to program go przydzieli losowo do "zew" , "wew" itp. Jak to zrobić żeby na stałe wpisać id czujników ?
|
|
| Back to top |
|
 |
Jarosław J Poziom 12

Joined: 28 Dec 2007 Posts: 92 Location: Dąbrowa Górnicza
|
#283
13 Dec 2009 10:10 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Jako że przy wymianie czujnika nie mamy za bardzo wpływu na numer seryjny jakim będzie się przedstawiał czujnik, tym samym nie mamy wpływu na kolejność w której program go ustawi. Jedynym rozsądnym rozwiązaniem byłoby zrobienie Menu, w którym numery czujników byłyby zapisywane w eeprom i "Ręcznie" ustawianie czujników do nazw "Zewn , Wewn". Boję się tylko,że przy takich kombinacjach Atmedze 8 może zabraknąć miejsca.
|
|
| Back to top |
|
 |
jouu Poziom 7

Joined: 17 Jun 2005 Posts: 20 Location: Świekatowo
|
#284
27 Dec 2009 12:38 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Mam takie pytanie, co się stanie jak do zaprogramowanego na 4 podepnę 1 czujnik ? będzie wyświetlał 1 temperaturę czy zgłupieje ?
|
|
| Back to top |
|
 |
Google

|
#
27 Dec 2009 12:38 |
|
|
|
|
|
| Back to top |
|
 |
Gonza Poziom 18

Joined: 01 Mar 2006 Posts: 509 Location: Tychy
|
#285
27 Dec 2009 13:15 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Będzie wyświetlał temperaturę z tego czujnika 4 razy.
|
|
| Back to top |
|
 |
jouu Poziom 7

Joined: 17 Jun 2005 Posts: 20 Location: Świekatowo
|
#286
30 Dec 2009 12:31 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
A jeśli na wyświetlaczu pojawia się tylko górny wierz cały na czarno ?
Mógł by ktoś wrzucić screen z debitów w ISP ?
Taktowanie zewnętrznym kwarcem nie pomogło.
|
|
| Back to top |
|
 |
Gonza Poziom 18

Joined: 01 Mar 2006 Posts: 509 Location: Tychy
|
#287
30 Dec 2009 14:01 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Wyświetlacz nie został poprawnie zainicjalizowany - czyli albo Atmega źle zaprogramowana i nie startuje albo wyświetlacz źle podłączony.
Pin 5 wyświetlacza LCD (R/W) należy podpiąć do masy.
Fusebitów nie ruszać - Atmega ma działać na wewn. rezonatorze 1 MHz.
|
|
| Back to top |
|
 |
jouu Poziom 7

Joined: 17 Jun 2005 Posts: 20 Location: Świekatowo
|
#288
30 Dec 2009 19:30 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Połączenia wszystkie są ok, program wrzucam przez ISP Programmer i on twierdzi ze wgrano poprawnie.
|
|
| Back to top |
|
 |
ziyo98 Poziom 4

Joined: 26 May 2003 Posts: 9
|
#289
30 Dec 2009 20:03 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witajcie,
Czy ktoś z szanownych forumowiczów mógłby wystawić działający kod termometru dla 2xDS18B20 ? Zbudowałem sobie ten układ (wg. schematu ducha ) ale ciągle mam temperatury 85 i 80 st C. Przeszukując forum widzę że nie tylko ja mam taki problem i prawie na pewno jest on spowodowany przez "wadliwy" program.
Z góry dziękuję i Pozdrawiam
RoBERT
|
|
| Back to top |
|
 |
Gonza Poziom 18

Joined: 01 Mar 2006 Posts: 509 Location: Tychy
|
#290
30 Dec 2009 20:51 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
W załączniku zrobiona na szybko wersja na 2 czujniki - 1 zewn. i 1 wewn. Daj znać czy działa.
| Description: |
|
 Download |
| Filename: |
wersja na LCD 2x16 i 2 czujniki.rar |
| Contents: |
|
| Filesize: |
13.78 KB |
| Punkty: |
0 |
|
|
| Back to top |
|
 |
ziyo98 Poziom 4

Joined: 26 May 2003 Posts: 9
|
#291
31 Dec 2009 06:11 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Dzieki GONZA, Soft działa.
Pozdrawiam i Życzę Wszystkim Szczęśliwego Nowego Roku.
RoBERT
|
|
| Back to top |
|
 |
polprzewodnikowy Poziom 21

Joined: 12 Feb 2008 Posts: 1206 Location: Ostrołęka (Zawady)
|
#292
31 Dec 2009 11:53 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witam, zrobiłem swoją wersję na LCD 2x16 z 4 czujnikami, wyświetlanie wyników na przemian. Mógłby ktoś sprawdzić kod?
| Description: |
|
 Download |
| Filename: |
4x DS18b20, LCD 2x16 wyświetlanie naprzemian.txt |
| Contents: |
|
| Filesize: |
5.19 KB |
| Punkty: |
0 |
|
|
| Back to top |
|
 |
Dariusz Goliński Poziom 18

Joined: 21 May 2003 Posts: 551 Location: Brzeziny
|
#293
04 Jan 2010 12:04 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witam w nowym roku
Ktoś chciał żeby alarmy były więc zrobiłem
Lojalnie informuje, że popełniłem taki program ale nie jestem programistą, kod uklepałem za pomocą helpa do bascoma, więc dla znających się na rzeczy to co zrobiłem to badziew. Ale ważne że działa.
Opis końcówek w pliku bas a jak ktoś nie rozumie kodu to mu rozpiszę co i jak.
Jedna uwaga. Temperatura zadana wyświetlana jest w postaci trzycyfrowej bez kropki. Nie wiedziałem jak to zrobić więc zostawiłem tak. Tak więc jak się wyświetli 256 to będzie oznaczać że alarm będzie od temperatury 25.6 stopnia.
Wciśnięcie przycisku zapamiętywania alarmów nie jest niczym sygnalizowane. Po prostu zapis zostaje umieszczony w pamięci eeprom i tyle.
| Description: |
|
 Download |
| Filename: |
Termometr.rar |
| Contents: |
|
| Filesize: |
5.08 KB |
| Punkty: |
0 |
|
|
| Back to top |
|
 |
krystoferek Poziom 14

Joined: 09 Aug 2008 Posts: 157
|
#294
04 Jan 2010 20:56 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Kłaniam!
Układ Kolegi Duch składa się z czterech czujników
Pytanie:
Czy można zastosowac osiem czujników???
|
|
| Back to top |
|
 |
Dariusz Goliński Poziom 18

Joined: 21 May 2003 Posts: 551 Location: Brzeziny
|
#295
05 Jan 2010 08:18 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Można tylko trzeba wyświetlacz zmienić bo będzie trudno zmieścić dane.
PS
Dorobiłem informację o zapisie. Jak ktoś będzie chciał to podeślę.
|
|
| Back to top |
|
 |
amator2000 Poziom 15

Joined: 13 Mar 2004 Posts: 209
|
#296
08 Jan 2010 18:29 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
ktora z kostek Dallasa jest lepsza ? 18S20 czy18B20 bo czytalem ze nowsza jest B ale widze po sklepach wysylkowych ze drozsza jest S
|
|
| Back to top |
|
 |
Dariusz Goliński Poziom 18

Joined: 21 May 2003 Posts: 551 Location: Brzeziny
|
#297
08 Jan 2010 21:22 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Ja stosuje B ale S jeśli się nie mylę to są te same co bez S czyli dokładność trochę mniejsza.
|
|
| Back to top |
|
 |
Google

|
#
08 Jan 2010 21:22 |
|
|
|
|
|
| Back to top |
|
 |
zeeuss86 Poziom 4

Joined: 05 Mar 2006 Posts: 8 Location: Gorzów Wlkp.
|
#298
19 Jan 2010 21:58 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Witam, zbudowałem na pająku taki termometr i działa wyśmienicie. Wykorzystałem wersję programu przerobioną przez użytkownika AccessDenied, która znajduje się na drugiej stronie wątku. Atmega8 zaprogramowałem przy użyciu podstawowej wersji programatora ISP (bez buforu, kabelki bezpośrednio do LPT) ze strony ISP Programmer. Wiem że takie rozwiązanie nie jest bezpieczne ani dla LPT ani dla uC, ale nie posiadam innego programatora. Może z czasem zbuduje sobie STK200.
Teraz pytanie, przy projektowaniu PCB chciałbym w termometrze zintegrować podstawę do ISP, ale piny przez niego wykorzystywane (nr 17, 18, 19) są podłączone do LCD. Czy można się pod nie normalnie podpiąć, jak na rysunku niżej? Jeśli nie, to prosiłbym o jakieś wskazówki jak mogę to zrobić. Może wystarczy dać zworkę na zasilaniu LCD? A co z czujnikami? Elektronikiem je jestem, to mój pierwszy mikrokontroler. Na podstawie tego termometru chciałbym pobawić się programowaniem w Bascomie, więc ISP by się przydało.
Pozdrawiam Dariusz.
|
|
| Back to top |
|
 |
Dariusz Goliński Poziom 18

Joined: 21 May 2003 Posts: 551 Location: Brzeziny
|
#299
20 Jan 2010 07:25 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
Pewnie że możesz używać tego interfejsu z podłączonym wyświetlaczem, zresztą o to właśnie chodzi w tym całym bajerze.
Nie musisz rozpinać zasilania. Po prostu pod czas programowania na wyświetlaczu pojawią ci się dziwne znaczki ale po restarcie powinno być wszystko OK. Jak będziesz chciał to ci podeślę zdjęcie mojego pająka. Programatora i tego termometru, z tym że ja wyprowadziłem sobie zasilanie z USB.
|
|
| Back to top |
|
 |
Kobra Poziom 15

Joined: 05 Mar 2003 Posts: 231 Location: Otwock
|
#300
20 Jan 2010 15:11 Re: 4x DS18b20 +LCD = Termometr |
|
|
|
| Dariusz Goliński wrote: |
Pewnie że możesz używać tego interfejsu z podłączonym wyświetlaczem, zresztą o to właśnie chodzi w tym całym bajerze.
|
Ok. Wszystko jasne
A jak mi to wytłumaczysz ??
| Quote: |
Sygnałem STROBE dołączonym do pinu nr 1 portu drukarki można sterować włączeniem 3-stanowych buforów magistrali szeregowej (SCK,MISO,MOSI). Jego użycie jest opcjonalne. W przypadku dołączenia linii portu drukarki bezpośrednio do wyprowadzeń mikrokontrolera należy zadbać o to, aby realizowana na nich podczas programowania transmisja szeregowa nie zakłócała działania pozostałej części urządzenia, w którym znajduje się mikrokontroler. Czyli np. linie te nie powinny być dołączone do sygnałów wyboru urządzeń peryferyjnych takich jak wyświetlacz LCD.
|
|
|
| Back to top |
|
 |