Z tego co mi wiadomo to najlepiej żeby podczas programowania nic nie było podłączone do nóżek 17, 18, 19 oprócz programatora. Może więc w programie i na płytce zmienić wykorzystywane nóżki uC? Moja wiedza o uC jest w najlepszym razie skromna i nie wiem pod które ewentualnie nóżki miałbym się podpiąć. Wiem że 23-28 są analogowe, więc może 3-6 na D4-D7 wyświetlacza, 12 na E i 13 na RS? To by chyba rozwiązało problem. Może jest lepsze rozwiązanie?
Nie wiem, nie znam się, zarobiony jestem.
Opisuję tylko to co faktycznie sprawdziłem.
Zrobiłem kilka układów i jeszcze nie spotkałem się z tym problemem. Na pewno się spotkam ale jeszcze się nie spotkałem.
Wcześniej programowałem za pomocą 4 rezystorków i LPT, ale 2 tygodnie temu dodałem
74HC244 i też gada.
Witam
Wczoraj zmontowałem taki układzik z 4 czujnikami ale na atmega16 bo taki akurat miałem w domu i niestety nie wykrywa mi czujników a LCD działa. Zmieniłem deklaracje procesora na m16 i dalej to samo co może być przyczyną ??
powiem tak mam kwarc 16 i w programie dalem 16 i nic to nie dalo -
ustawilem na 1 MHz osc i w programie na 1 i dalej to samo
dalem 8 i dalej to samo 85 i koniec
przeczytalem caly post i nikt tego nie rozwiazał
85 oznacza że układ nie przesyła ci temperatury, sprawdź czujniki czy aby DS18B20 są dobrze podłączone o ile to program ducha.
Wystaw program w załączniku.
Oczywiście czujniki sprawne - jest to błąd inicjalizacji temperatury
wystarczy w programie wstawić Wait 1 i po problemie - odczekanie tej sekundy daje czas na odebranie danych przez 1wire i przekazanie dalej na lcd
Podaje w 100% sprawny kod na 4 czujniki - ale potrzebuje przerobić część identyfikacji żeby wykluczyć programowanie na pozostale kanaly tego samego czujnika - ma pozostac tam poprostu 0.0 oC
Ostatnio zacząłem interesować się tym tematem i chciałbym zbudować taki termometr, ale chciałem go oprzeć na układzie atmega16- ze względu na większą ilość pamięci. Mam już schemat wykonany, ale nie jestem pewien czy wszystko jest dobrze podłączone.
podaj konkrety i do zegara mega 16 - co ty tam zaprogramujesz - atmega 8 zalmuje z bajerami na 4 czujniki 30% a jeszcze ile da sie tam wrzucić - mega 16 to bajer i duza kosc - a moze 32 to gigant pamieci
Chcę po prostu zastosować ten cały układ do pomiaru temperatury podzespołów PC i jednocześnie dodać układ kontroli obrotów 4 wentylatorów niezależnie od siebie (tryb auto i manual). Dlatego nie byłem pewien czy wystarczy mi pamięci. Mój schemat oparłem na schematach we wcześniejszych postach. Pominąłem tylko stabilizator napięcia- 5V będę miał z zasilacza w kompie. Ale nie byłem pewien czy wszystko dobrze podłączyłem.
Ale z tego co mi napisałeś wynika, że spokojnie powinna mi starczyć AtMega8.
Witam.
na początku informacja żem zielony w tym temacie, ale mam pytanie
czy na tym układzie da się zrobić obsługę zapisu pomiaru gdzieś?,
np na kartę SD, albo do jakiegoś epromu, ale do epromu trzeba się podłączać kompem
żeby zczytać pomiary.
Ja bym to widział tak, że pomiary na wyświetlacz tak jak są,
a zapis np. co 0,5 godziny.
da się?
Na podstawie tego DIY postanowiłem zrobić coś własnego- inni o to pytali ludzi
Więc tak
Konstrukcja posiada 4 x DS plus LCD 2x16 i Alarm beeper
Sterowanie jest za pomocą 3 przycisków "+" "-" "menu"
Programowanie DS-ów z poziomu menu
Sygnalizacja jest za pomocą diod led i bepera realizującego funkcję Alarmu
Led 1 sygbalizująca alarm kanału P - oraz dioda sygnalizująca pracę Przekaźnika (triaka)
kolejne 2 wyjścia dla P to Beeper i Przekaźnik
Led 2 sygbalizująca alarm kanału B - oraz dioda sygnalizująca pracę Przekaźnika (triaka)
kolejne 2 wyjścia dla B to Beeper i Przekaźnik
A tak wygląda widok LCD
Ekran powitalny
Menu kolejne bez zapisanych do pamięci DS-ów
Menu podczas programowania 4 kolejnych DS-ów
A tak wygląda menu z zaprogramowanymi DS-ami
jest jedna i ta sama temp a to dlatego że zaprogramowałem tylko jednego DS-a na wszystkie 4 kanały
literowka jest dowolna ale oznaczenia z życia wzięte i oznaczone tak
P-piec B-bojler Z-temp zewnętrzna W-temp wewnętrzna
Kolejne menu to programowanie kanału P
u góry to zakres temperatur załączenia Przekaźnika a w dolnej części załączenia alarmu - wstępnie zaprogramowane na 25oC - zakres ustawień to 1-99oC
kolejne 2 menu to włączenie lub wyłączenie Przekaźników - Beepery nadal będą działały jak dotychczas
Poruszanie sie po menu jest za pomocą sw MENU - wielokrotne nacisnięcie przechodzimy dalej, Natomiast jak chcemy zmienić wartość ustawień wciskamy w danym menu przycisk + lub - i miga nam kursor i zmieniamy ustawienia stopni C w dol lub gore
Programowanie DS-ów jest na zasadzie takiej
np - programujemy P - wciskamy przycisk menu i trzymamy go, wciskamy reset lub włanczany zasilanie - trzymamy przycisk menu aż ukaże sie komunikat o zapisanym czujniku
i tak kolejno 3 pozostałe - "-" i reset lub zasilanie "+" i rset lub zasilanie i ostatni wciskamy jednoczesnie "+ i -" i reset lub zasilanie
Beeper daje sygnał sekundowy - musi być z generatorem własnym
hmm co więcej
Prosze o opinie sugestie i krytyke
Niestety nic wiecej nie weszlo bo jest zajęte 99% pamięci atmega 8
kolejne funkcję dopisze ale przy użyciu Atmega 16 lub 32
wiecej pamieci i wiecej pinów
Chciałem po prostu podpiąć wszystkie elementy analogicznie do schematu z wcześniejszych postów:
=>
Wydaje mi się, że powinno być dobrze. Nie jestem tylko pewien czy dobrze jest wyprowadzone wejście na czujniki DS18b20 (PD5) i wyjście służące do kontroli wentylatorów (PA0).
Gdzie w programie przesunąć znak stopni, znak minusa i temperatury?
Ponieważ gdy w nocy jest poniżej zera, to cała temperatura przesuwa się o jedno miejsce (tak jak na 1 obrazku). A gdy w dzień jest temperatura dodatnia powraca do poprzedniego miejsca, i są wtedy pojawiają się dwa znaki stopni(jak na 2 obrazku).
Jak to zmienić? Bo chcę przesunąć temperaturę do samego końca, aby zyskać jeden wolne miejsce na znak i żeby wyeliminować problem z podwójnym znakiem stopni.
Witam.
Zrobiłem właśnie ten termometr działa super.Tylko jest mały problem na wsadzie od kolegi Duch wszystko jest ok, zaś na wsadzie kolegi Imex pulsuje wyświetlacz co 1sek.Zrobiłem go na wyś. 2x16 i działa tylko na zegarze Atmegi.
Co trzeba przekombinować?
Termometr Kolegi Ducha działa na wewn. oscylatorze 1MHz (w związku z czym nie trzeba nic kombinować z fusebitami w przypadku nowego uC prosto ze sklepu) natomiast w kodzie Kolegi IMEX widzę deklarację częstotliwości oscylatora 16MHz, czyli domyślam się, że jego Atmega działa z kwarcem 16MHz, który musiałbyś dołączyć do swojej Atmegi oraz odpowiednio ustawić fusy.
To zależy ile zadeklarujesz czujników w programie, a dokładnie ile się ma wyświetlać.
jak w program jest na 4xDS to ten z najniższym adresie będzie wyświetlany 2 razy (z tego co pamiętam),
a jak program na 2xDS to ten ostatni zostanie pominięty.
--
Pozdrawiam
PePe
Tam jest użyte słowo "może" co znaczy że błąd może wystąpić ale nie musi. Ja u siebie nie dostrzegam błędów, porównywane z kilkoma termometrami rtęciowymi.
Dodaje fotki i wsad nowej wersji termometru oraz schemat i wzór PCB. Dodałem obsługę 2 przycisków (wyświetlanie temp. maksymalnej i minimalnej, oraz resetowanie tych wartości). Płytka PCB powstała w Eaglu. Panel przedni w Corelu.
4x DS18b20 +LCD = Termometr
4x DS18b20 +LCD = Termometr
4x DS18b20 +LCD = Termometr
Wartość MAX i MIN dla każdej z temperatur przechowywana jest w zmiennej SRAM-owej. Soft może zawierać jeszcze błędy które postaram się w najbliższym czasie wyeliminować!!! Jak będzie mi się chciało to może zrobię wykres temperatury przy pomocy bargrafa.
Wyeliminowano błąd pokazywania prawidłowej temperatury po kasowaniu pamięci SRAM-owej. Wsad poniżej jest poprawiony
Ta wypowiedz jest w 7 zakładce (stronie) napisana przez Ducha.. Czy ktos wykonywalem ten projekt? Czukam jaki ma być tam wlutowany kwarc, R3, C1 i C2, co jeżeli kondensatiora C3 10mikro wlutuje 100mikro lub 47mikro?
pozdrawiam prosze o odpowiedz bo od autora nie dostalem...
ok. A lepszy kwarc 4mhz czy 12mhz? W programie wiem jak zmienic... A czy ktos moglby mi pokazac jak maja byc ustawione fusebity zeby pasowalo do tego wybranego lepszego kwarcu (4mhz lub 12mhz...)
Bede bardzo wdzieczny! I pytanie do ducha Te przyciski dwa są podłączane do gniazda na płytce poprzez 3 tzn goldpiny tak?
Witam
Jak wyświetlać pełne stopnie ( nie chce dokładności do 0,1°C) na wyświetlaczu z Ds18B20? w prezentowanych programach, probowałem z formowaniem wyniku ale nie idzie...