Termometr Uniwersalny


9.28571
Ocena: None Średnia: 9.3 (14 głosujących)

Termometr ten pracuje w zakresie temperatur od -50.0 do +99.9 stopni lub w drugiej wersji oprogramowania aż do +125 stopni. Układ został zaprojektowany do mierzenia temperatury w akwarium ale z powodzeniem można dla niego znaleźć wiele innych zastosowań. Na płytce znajduje się miejsce na dwa przyciski oraz dodatkowe złącze ogólnego przeznaczenia. Po zmianie oprogramowania urządzenie może pełnić funkcję prostego termostatu, lub bardziej złożonego regulatora temperatury. Układ został zbudowany w oparciu o popularny, często stosowany czujnik DS18B20 i mikrokontroler AT89C2051 co znacznie uprościło jego konstrukcję i zmniejszyło wymiary. W układzie można też bez większego trudu zastosować mikrokontroler ATTiny2313, wymaga to tylko wprowadzenia kilku prostych modyfikacji.

Działanie:


Schemat termometru przedstawia poniższy rysunek:

Sercem urządzenia jest mikrokontroler U2 (AT89C2051) wraz z rezonatorem kwarcowym X1 (12MHz) i dwoma kondensatorami C4 (33pF) i C5 (33pF). Kondensator C3 (1uF) resetuje procesor po włączeniu napięcia zasilającego, a C1 (220uF) filtruje to napięcie. Do złącza zas podłączamy napięcie zasilające o wartości 5V. Rezystory R9 - R16 (330R) ograniczają prąd wyświetlaczy. Tranzystory T1 - T3 (BC557B) wraz z rezystorami R1 - R6 (3,3k) sterują anodami wyświetlaczy.

Budowa:


Termometr można zbudować z wykorzystaniem dostępnej tutaj płytki drukowanej. Wersja płytki w odbiciu lustrzanym dostępna jest tutaj. Montaż elementów można dokonać w dowolnej kolejności, najlepiej od najmniejszych do największych. Pod wyświetlacz dobrze jest wlutować kawałek podstawki DIP40, natomiast pod mikrokontroler podsatwka jest bezwzględnie konieczna. Od strony druku należy wlutować rezystor 4,7k podciągający magistralę 1-Wire (nóźka 9 układu U2) do plusa zasilania. Złącze GP1 w wersji podstawowej służy do podłączenia diody sygnalizującej ujemną temperaturę (katodą do portu procesora, anodą do VCC) gdyby miało być wykorzystywane w inny sposób należy usunąć z kodu programu linijkę: P3.7 = Not Minus. Przód obudowy można z powodzeniem wykonać z kawałka laminatu. Płytkę termometru mocujemy do panelu przedniego za pomocą dwóch przylutowanych do niego śrub. Pomocą przy konstrukcji może okazać się schemat montażowy dostępny tutaj.

Jeżeli w układzie będzie zastosowany mikrokontroler ATTiny2313 zamiast AT89C2051, nie należy montować kondensatora C3, a kondensatory C4 i C5 powinny mieć wartość 22pF.

Wykaz Elementów:

8x 330R
6x 3,3k

2x 33pF
1x 1uF
1x 220uF

1x Rezonator Kwarcowy 12MHz
1x AT89C2051 (lub ATTiny2313)
3x BC557B
1x DS18B20
1x AT5636BG-B Pb-free (TOT-5362BG-B) Wyświetlacz potrójny

Programowanie:


Oprogramowanie do termometru zostało napisane w wersji demo programu BASCOM 8051 firmy MCS Electronics (http://www.mcselec.com/). Program w całości przedstawiony jest poniżej:

'****************************
           'Konfiguracja
'****************************
$crystal = 12000000                                           '12MHz
$regfile = "89C2051.DAT"
 
Config 1wire = P3.5
 
Config Timer0 = Timer , Gate = Internal , Mode = 2
On Timer0 Przerwanie0
Load Timer0 , 250
Enable Timer0
Start Timer0
 
Enable Interrupts
'****************************
      'Zmienne
'****************************
Dim Lsb As Byte
Dim Msb As Byte
Dim Co4ms As Byte , Co100ms As Byte , Co1s As Byte
Dim Wysw As Word , Wysw1 As Byte , Wysw10 As Byte , Wysw100 As Byte
Dim Tempa As Word
Dim Mux As Byte
 
Dim Zezw_wysw As Bit
Dim Pomiar_odczyt As Bit
Dim Minus As Bit
Dim Ur As Bit
'****************************
      'Wartosci Poczatkowe
'****************************
Reset Pomiar_odczyt
Reset Ur
Wysw1 = 191
Wysw10 = 191
Wysw100 = 191
'****************************
      'Petla glowna
'****************************
Do
 
If Zezw_wysw = 1 Then
  Reset Zezw_wysw                                             'co 4ms
  Wysw = Tempa
 
  If Ur = 1 Then Gosub Przelicz
  Gosub Wyswietl
End If
 
Loop
End
'****************************
      'Przerwanie timer0
'****************************
Przerwanie0:
Incr Co4ms
 If Co4ms = 16 Then
   Co4ms = 0
   '***************************************  co 4ms
   Set Zezw_wysw
   Incr Co100ms
   If Co100ms = 25 Then
     Co100ms = 0
     '*************************************** co 100 ms
     'ew flaga obslugi przyciskow
     Incr Co1s
     If Co1s = 7 Then
       Co1s = 0
       '*************************************** co 1s
       Pomiar_odczyt = Not Pomiar_odczyt
 
       Disable Interrupts
       1wreset
 
       If Pomiar_odczyt = 1 Then
        1wwrite &HCC
        1wwrite &H44
       Else
        If Err = 0 Then
 
          1wwrite &HCC
          1wwrite &HBE
          Lsb = 1wread():
          Msb = 1wread():
 
          Minus = Msb.7
 
          Tempa = Msb * 256
          Tempa = Tempa + Lsb
 
 
          If Minus = 1 Then
            Tempa = Not Tempa
            Tempa = Tempa + 1
          End If
 
          Tempa = Tempa * 10                                  'temperatura *10
          Tempa = Tempa / 16
 
          If Ur = 0 Then Ur = 1
 
        Else
          Tempa = 10000                                       'Er wyswietli wyswietlacz potem
        End If
       End If
 
       Enable Interrupts
       '***************************************
     End If
     '***************************************
   End If
   '***************************************
 End If
 
Return
'****************************
      'Inne Etykiety
'****************************
Przelicz:
 If Wysw < 1000 Then
   Wysw1 = Wysw Mod 10
   Wysw = Wysw / 10
   Wysw10 = Wysw Mod 10
   Wysw = Wysw / 10
   Wysw100 = Wysw Mod 10
 
   If Wysw100 = 0 Then Wysw100 = 10                           'wygaszenie zera wiodcego
 
   Wysw1 = Lookup(wysw1 , Tabela)
   Wysw10 = Lookup(wysw10 , Tabela2)
   Wysw100 = Lookup(wysw100 , Tabela)
 
 Else
   Wysw1 = 175                                                'r
   Wysw10 = 175                                               'r
   Wysw100 = 134                                              'E
 End If
 
Return
 
Wyswietl:
  Incr Mux
  If Mux = 3 Then Mux = 0
  P3.7 = Not Minus
 
  Select Case Mux
    Case 0:
     Set P3.0
      P1 = Wysw100
     Reset P3.2
 
    Case 1:
     Set P3.2
      P1 = Wysw10
     Reset P3.1
 
    Case 2:
     Set P3.1
     P1 = Wysw1
     Reset P3.0
  End Select
Return
 
                         'Tabele do wyswietlania na wyswietlaczu
Tabela:
    Data 192 , 249 , 164 , 176 , 153 , 146 , 130 , 248 , 128 , 144 , 255
'znak:    0     1     2     3     4     5     6     7     8     9     pusty
 
Tabela2:
    Data 64 , 121 , 36 , 48 , 25 , 18 , 2 , 120 , 0 , 16 , 255
'znak:    0.    1.  2.    3.   4.   5.  6.   7.   8.  9.    pusty

Ustawienia Fusebitów dla mikrokontrolera ATTiny2313:

Zdjęcia Projektu:

ZałącznikWielkość
Schemat87.5 KB
Płytka11.03 KB
Płytka (odbicie lustrzane)11.01 KB
Płytka (6 na stronie)61.72 KB
Montowanie15.44 KB
Kod źródłowy (wersja podstawowa)4.46 KB
Program po kompilacji (BIN) (wersja podstawowa)1.03 KB
Program po kompilacji (HEX) (wersja podstawowa)2.96 KB
Kod źródłowy (obsługuje temperatury powyżej 100 stopni)4.91 KB
Kod Źrodłowy (wersja z termostatem) (jeszcze nie testowana)7.57 KB
Program po kompilacji (wersja z termostatem) (BIN)1.72 KB
Program po kompilacji (wersja z termostatem) (HEX)4.85 KB
Kod Źródłowy (dla ATTiny2313, Bascom AVR)4.43 KB
Kod Źrodłowy (wersja z termostatem, dla ATTiny2313, Bascom AVR) (jeszcze nie testowana)7.28 KB
Program po kompilacji (BIN) (dla ATTiny2313, Bascom AVR)1.59 KB
Program po kompilacji (HEX) (dla ATTiny2313, Bascom AVR)4.49 KB
Kod źródłowy (dla ATMega8, Bascom AVR)4.6 KB
Nadruk na obudowę64.22 KB



Portret użytkownika white88

Ttermostat

Ok o to mi chodziło.Ewentualnie zrobie na tym 2051 a jeszcze takie pytanko podczas nastawy histerezy oczywiście wyświetla sie temp nastawy tak?

Portret użytkownika gosc

Sprawa AT89C2051

Mam jeszcze pytanie do ciebie.Czy jak mam programator ISP STK 200/300 kupiony na alledrogo to można nim zaprogramować tego 2051 czy nie za bardzo?Jeżeli tak to czy jest to kwestia podłączenia odpowiednich pinów czy coś jeszcze.?Szczerze nie robiłem jeszcze z tym a w zasadzie to z niczym innym niz attiny.Potrzebuje zrobić ten termostat do mojej trawiarki potem podstawka i potem zabieram za konkretne projekty.pzdr.

Portret użytkownika mirley

Re: Termostat

Podczas nastawy temperatury i histerezy migają wskazania (aby się odróźniały odpomiaru temperatury) i są wyświetlane.

Do mikrokontrolerów 2051 wymagany jest programator równoległy, za pomocą takiego prostego ISP nie zaprogramujesz tego uC. Chyba że są jakieś nowe wersje 2051 programowane szeregowo, ale nie używałem takich nigdy.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika white88

termometr

Dzieki za odpowiedz.Szkoda że sie nie da bo to mi trochę komplikuje sprawuszkę.No nic trudno będę robił sam termometr na Attiny.pzdr

Portret użytkownika mirley

Re: Termostat

Za niedługo już będzie ten termostat na ATTiny, tylko muszę kod przerobić :)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika white88

termostat

Ok fajnie to sie wstrzymam z tym poczekam na attiny.Daj znać jak skończysz.

Portret użytkownika mirley

Re: Termostat

Niestety program termostatu nie da się przystosować w prosty sposób do pracy na ATTiny2313. Poprostu przekompilowany kod jest za duży i nie zmieści się w ATTiny2313. Nie będę pisał programu od początku próbując upchnąć wszystkie wymagane ustawienia na ATTiny, bo w kolejce na realizację czeka termoregulator, który sam w sobie będzie termostatem, tylko pewnie bardziej zaawansowanym :)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika white88

termostat

No ok, mówi się trudno fajnie że chciałeś pomóc.Ale dobrze że sam termometr da rade zrobić na At.

Portret użytkownika gosc

TU

Witam, chciałem zająć troszkę miejsca na temat zasilanie tego układu (chodzi mi o wersję podstawową) otóż nie posiadam żadnego zasilacza 5V a szkoda mi wywalać kasy na kupno takowego :) więc tutaj moja propozycja i jednocześnie pytanie: Czy można by użyć jakiegoś stabilizatora (jeśli tak to jakiego?) który przerobiłby z przykładowo baterii 9V na 5V ? Jeśli ma ktoś jakiś inny sposób to jestem otwarty na inne propozycje :)z góry dziękuję za odpowiedź pozdrawiam wszystkich czytelników.

Portret użytkownika mirley

Re: zasilanie TU

To tak możesz użyć stabilizatora 7805 z dwoma kondensatorami ale na baterii 9V nie wiem jak długo to pójdzie :) Jeśli masz konto na allegro to kup sobie ładowarkę od nokii np 6610. Tak aby dawała coś ponad 5V. Koszt takiej to jakieś 4zł. Ja stosuje taki patent w takich prostych układach i jest bardzo dobry.

Jak podłączyć stabilizator 7805 znajdziesz w innych projektach na tej stronie lub na google :) Zawsze możesz jeszcze użyć zasilacza na 12V lub 15V jeśli taki masz np od zepsutego urządzenia. Stare zepsute radio dostarczy ci transformator na którym też zrobisz zasilacz 5V. Jeśli masz niedaleko komputer to kabel do USB wystarczy :)

Możliwości jest wiele, napisz co masz pod ręką :))

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc

chcę wykorzystać baterię 9V

chcę wykorzystać baterię 9V ponieważ nie będzie to długo chodziło :) jednakże pomysł z ładowarką mi się spodobał :) jednak jak ją już kupię to nie mam pojęcia jak jest spolaryzowana końcówka (gdzie minus gdzie plus??) czytałem gdzieś że w niektórych ładowarkach minus dają na zewnątrz a plus wewnątrz... proszę mnie oświecić xD

Portret użytkownika mirley

Re: Ładowarka

Jeśli masz miernik to poprostu mierzysz napięcie i jak wskazuje np +5V to na czarnej końcówce miernika masz minus a na czerwonej +. Druga metoda to bierzesz diodę LED i rezystor, powiedzmy 680R podłaczasz diode do baterii 9V poprzez rezystor. Będzie swieciła w jednym położeniu po dotknięciu do baterii. Na baterii masz napisane gdzie jest + a gdzie minus więc zapamietujesz gdzie jest +. Tak samo podłączasz do ładowarki tą diodę i rezystor. Jeśli dioda świeci to w tym samym miejscu jest + co był na baterii :)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Krzysztof

Problem z termometrem na 2313

Witam, próbuje uruchomić termometr na 2313 ale wyświetla przypadkowe cyfry na jednym z wyświetlaczy i wiesza się, próbowałem na paru scalakach, programuje pod Bascom-AVR proszę o sugestię gdzie popełniam błąd pozdrawiam Krzysztof.

Portret użytkownika mirley

Re: Termometr

Po pierwsze jeśli masz rezonator kwarcowy z odzysku(wylutu) to od razu go wyrzuć bo to może być przyczyna problemów. Sprawdź przy okazji czy częstotliwość rezonatora jest poprawna.

Czy zastosowałeś się do zmian na schemacie, zalecanych dla ATTiny2313?

Wyjmij procesor z podstawki i zwierając odpowiednie piny w podstawce do masy zobacz czy świecą wszystkie segmenty wyświetlacza w takiej kolejności jak powinny. (Zewrzyj po kolei nóżki 2,3 i 6 uC do masy i jednocześnie dotykając przewodem podłączonym do masy do wyprowadzeń katod wyświetlacza, czyli portu P1)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc

Zasilanie

Witam ponownie. Może wyda się to banalne ale jestem początkujący w tych sprawach :( otóż: jak podłączyć zasilanie do układu? (gdzie plus? gdzie minus?) chce to zasilić ładowarką która ma na wyjściu U = 5V, I = 0,43A napięcie stałe. czy to ruszy?? i o co chodzi z tym VCC na schemacie? ;] trzeba to jakoś osobno gdzieś podłączać ?:) Pozdrawiam i z góry dziękuję za odpowiedź :)

Portret użytkownika gosc

aha;] i na ile V powinna być

aha;] i na ile V powinna być zasilana ta dioda która ma minus pokazywać ?;] może być zwykła dioda na 1,5V ?

Portret użytkownika gosc

Zasilanie

Witam
zasilanie powinno być podłączone tak jak na zdjęciu 2 czyli czerwony kabel "+" a niebieski "-". Jeżeli chodzi o diodę to zwykła za około 40 groszy

Portret użytkownika mirley

Re: Termometr

Do zasilania układu służy złącze zas tak jak już to wcześniej napisałem w opisie. Plus(innaczej VCC) jest wyprowadzony na jednym z pinów tego złącza. Drugi pin złącza podłączony jest do minusa (masy czli GND, nóżka 10 procesora). Jeśli ładowarka ma takie parametry jak piszesz to układ powinien działać bardzo dobrze.

VCC, GND i tym podobne punkty stosowane na schematach to skrótowy zapis ułatwiający rysowanie. Punkty o tych samych nazwach mają być ze sobą połączone. Jest to już wykonane na płytce.

Dioda zasilająca nie ma żadnych Volt :). Masz zastosować zwykłą diodę led, która nie ma wewnątrz rezystora ograniczającego prąd. Ewentualnie ta na 1,5V może być szeregowo z rezystorem 330R. Diody led sterowane są zazwyczaj stałym prądem. Np. Przez diodę podłączoną do 5V przez szeregowy rezystor 500R płynie prąd ok. 10mA. Jeśli chcesz tą samą diodę podłączyć do 24V to łatwo policzyć że potrzebujesz rezystora 2,4k aby uzyskać ok 10mA. Prąd ten oczywiście może być inny ale nie powinien przekroczyć 20mA na diodę to napewno nic niej nie będzie:)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc

no.... ;] teraz wszystko dla

no.... ;] teraz wszystko dla mnie jasne się stało dziękuję :D

Portret użytkownika gosc

czy istnieje jakiś sposób aby

czy istnieje jakiś sposób aby sprawdzić czy układ działa po zmontowaniu jesli nie mam jeszcze zaprogramowanego mikrokontrolera? diody też póki co nie mam ale jest przewidziana:)

Portret użytkownika mirley

Re: Testowanie Termometr

Możesz sprawdzić czy wyświetlacz, a co za tym idzie trazystory i rezystory są sprawne. Wyjmij procesor z podstawki i za pomocą dwóch przewodów podłączonych do masy zwieraj odpowiednie piny w podstawce. Jednym drutem pin do którego podłączona jest baza tranzystora zewrzyj do masy (np T1 powoduje aktywację pierwszego wyświetlacza). Drugim przewodem zwieraj wszystkie piny po kolei do których podpiete są segmenty wyświetlacza (a,b,...g,dp). Potem tak samo z drugim i trzecim tranzystorem. Skorzystaj ze schematu :)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc

w ogóle kiedy włączam ukłąd

w ogóle kiedy włączam ukłąd do zasilania to bardzo się grzeje ten element który mierzy temperature ( U3 na schemacie)chyba coś jest nie tak :(

Portret użytkownika gosc

Wyświtlacz również się nie

Wyświtlacz również się nie "odzywa" chyba będę musiał robić wszystko od nowa :( nie mam już siły :( ale projekt ciekawy ;)

Portret użytkownika gosc

udało mi się zlikwidować

udało mi się zlikwidować problem grzejącego się czujnika temp. (chociaż nie wiem czy już nie jest po nim skoro tak się grzał:( ), a gdy podłączę ukłąd z Włożonym procesorem to zapalają się tylko po 3 górne segmenty z każdego wyświetlacza. Proszę o pouczenie jak dalej postępować... :)

Portret użytkownika mirley

Re: Termometr

Jak się grzeje sto sprawdź czy napięcie masz napewno 5V a nie np 6V lub 12V. napięcie zasilania musi być 4.5V do 5.5V max. Wykonałeś test podłączeń wyświetlacza tak jak Ci mówiłem (post #21)?

Aha... Załóż sobie konto na stronie (link na stronie głównej), abyś mógł sobie edytować wpis i nie pisał odpowiedzi jedna pod drugą :)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Lukas

a czy jak się tak grzał ten

a czy jak się tak grzał ten element to się nie uszkodził ?:( próbowałem sprawdzić ten wyświetlacz ale nic się nie działo, a tak w ogóle to jak się numeruje te nóżki procesora? bo na schemacie jest jakaś dziwna numeracja :/ mi trzeba łopatologicznie bo jestem świeżutki w tych sprawach ;] Pozdrawiam

Portret użytkownika mirley

Re: termometr

Może się czujnik nie uszkodził :) Jesli wyswietlacz nie swieci po zabiegach które wczesniej opisałem. To coś źle zlutowałeś albo jest włożony na odwrót :)

Numeracje procesora masz tutaj .(Standardowo jak każdy inny układ scalony). Na schemacie jest normalna numeracja (Wszystkie numerki są obecne). To że nie są po kolei w stosunku do fizycznych ustawień to normalne. Element schematowy jest tak namalowany aby sie łatwo schemat rysowało.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Lupak

Termometr

W ogóle to zrobiłem taki numer że płytkę źle wydrukowałem :) znaczy że te tranzystorki jak u Ciebie na płytce są po lewej to u mnie były po prawej:D myślałem że jakoś się zrobi bo znowu wytrawiać to żmudna robota ale widzę, że inaczej się nie da, jak tylko zrobić jeszcze raz płytkę i wziąć się od nowa, teraz poprawnie :)

Portret użytkownika mirley

Re: Termometr

Poczytaj sobie tutaj, tylko dokładnie. Zawsze najpierw warto dokładnie przeczytać opis aby uniknąć problemów a co za tym idzie straty funduszy na kolejne elementy :)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc

Witam dopiero zaczynam-mam

Witam dopiero zaczynam-mam prośbe czy mógłbyś podać fuse bity n12Mhz dla programu bascom lub ponyprog.
I czy jak chce do projektu zastosować attiny 2313 to w programie zmieniam tylko $regfile ?

Portret użytkownika mirley

Re: Termometr

Fusebity dla bascoma są bardzo proste. Wystarczy wyłączyć dzielenie przez 8 (Devide by 8 -> Disabled) oraz ustawić na rezonator kwarcowy dużej częstotliwości (External Crystal Resonator.. 8MHz- ) taki gdzie wartości CKSEL=1111 SUT=10

Odnośnie programu to jak zmienić tylko regfile? Przecierz w załączniku masz specjalną wersję programu dla ATTINY2313. Przeczytaj opis w dziale budowa aby dowiedzieć się co musisz jeszcze na płytce zmienić.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Lupak

Termometr

Witam :) po wielu próbach udało mi się uruchomić układ :) mam tylko nadzieję że mi się czujnik temperatury nie uszkodził jak się wtedy tak bardzo grzał :( Pozdrawiam

Portret użytkownika mirley

Re: Termometr

Porównaj wskazania z innym termometrem a zobaczysz czy działa :)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Lupak

tak żeby wskazywał

tak żeby wskazywał temperaturę jeszcze nie działa, bo nie jest zaprogramowany mikrokontrolelr :) ale wyświetlacz działa wraz ze wszystkimi segmentami, więc skoro wyświetlacz działa to cały układ musi być dobrze zmontowany :) Pozdrawiam

Portret użytkownika Krzysztof

Wspólna katoda

Dziękuje za wsparcie, wsad do termometru z wspólną katodą działa przyczyną wstępnych problemów były kondensatory 22 p oraz za duży prąd na wyświetlacze , który powodował wieszanie się termometru. Pozdrawiam życząc dalszych projektów.

Portret użytkownika gosc

Oscylator

Witam,

Czy tak duża częstotliwość oscylatora tzn. 12MHz wynika z konieczności uzyskania stabilnego wyświetlania wartosci temperatury na wyświetlaczach LED, czy też mozna zastosować mniejszą częstotliwość (oczywiście z odpowiednimi zmianami w kodzie)?

Pozdrawiam

Portret użytkownika mirley

Re: 12MHz

Po pierwsze dla mikrokontrolera 2051 12MHz dzieli się sprzętowo przez 12 dając w efekcie 1MHz dla użycia w programie... Dodatkowo nie lubie stosować takiego rezonatora przez którego program musi działać na styk. Zdecydowanie wolę pracować przy częstotliwościach dla których przez większość czasu procesor nie robi nic a gdy zajdzie potrzeba wykonuje rozkazy bardzo szybko.

generalnie nie zalecam mniejszego kwarcu dla 2051 właśnie ze względu podziału częstotliwośći na wstępie

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika vivid_photos

12MHz

Dziękuję za odpowiedź. Uruchomiłem termometr na zestawie uruchomieniowym AVT 3500 z ATtiny2313 (oczywiście z drobnymi zmianami w programie, dotyczącymi pinów sterujących wyświetlaczami i zmienonym rezonatorem). Przy 12MHz działa świetnie, na 8MHz trochę się już dławi...

Pozdrawiam

PS Świetna strona zarówno dla początkujących jak i zaawansowanych "poskramiaczy mikrokontrolerów"! Gratuluję pomysłu!

Portret użytkownika gosc

Kwarc

Czy może być użyty inny kwarc np. 10 czy 16MHz?

Portret użytkownika mirley

Re: Termometr- Kwarce

Kwarce do termometru mogą być różne, 12MHz dałem dla 2051 aby się równo dzieliło. Dal ATTiny 2313 może być dowolny kwarc i na 8Mhz też będzie działać, wystarczy zmienić dzielnik i ustawienia timera.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Badowsky

Kondensatory

Dlaczego właściwie do attiny trzeba zmienić kondensatory na 22pf? I czy może tutaj być jakaś rozbieżność? Tzn czy można np 25 albo 20 dac?

-

mBadowsky

Portret użytkownika mirley

Re: Kondensatory

Kondensatory mogą być takie jak na schemacie, również dla attiny, nie zauważyłem błędnego działania, ale zawsze jednak wolę dać te które są zalecane w karcie katalogowej

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Badowsky

Fuse bits attiny2313

Czy mi się wydaje czy ty używasz jakiegoś starszego bascoma (chodzi mi o obrazek fuse bitow) ponieważ gdy ja chce je ustawić to zupełnie inaczej to wygląda i totalnie nie łapie związku mniedzy nimi. Tutaj shoot -> http://www.fotosik.pl/pokaz_obrazek/b9da9376e130f6f1.html

------

Sry.. chyba już wiem.. TO Burn-O-Mat program. Szkoda że nie napisałeś.

-----

Mógłby ktoś powiedzieć jak ustawić to w bascomie?

-

mBadowsky

Portret użytkownika mirley

Re: Fusebity

Znowu bez przesady... przecież na zdjęciu pokazane są wartości wraz z nazwami (zaznaczony to wartość 0), a w bascomie obok opcji oscylatora masz napisane CKSEL3..0=0100 i SUT1..0=10. Wybierz taką opcję aby te wartości w bascomie zgadzały sie z tymi w zrzucie z burn-o-mata i po sprawie(to będzie coś external crystal oscylator, high frequency itp.), Divide Clock by 8 utaw na disabled

Ps. Nie pisz posta pod postem, jak nie ma odpowiedzi lub kolejnego pytania pod spodem to edytuj. Patrz wyżej

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Badowsky

Zmontowałem układ lecz wątpie


Zmontowałem układ lecz wątpie abym dobrze zaprogramował fuse bity. Efekt jest taki, że po włączeniu zasilania zamiast wyświetlać temperatury na wyświetlaczu mrugają tylko środkowe poziome diody. Mógłbyś opisać to jak należy zaprogramować te fuse bity?

---

Ok spróbuje poustawiać to tak jak piszesz później.

-

mBadowsky

Portret użytkownika mirley

Re: Fusebity

najważniejsze jest ustawienie: Divide Clock by 8 na disabled, a w ustawieniu zegara musi być External crystal, dla częstotliwości ponad 8MHz, tam jest opis w opcjach na liście więc raczej nie powinno byc problemu. opcja SUT nie jest taka ważna i może zostać domyślna

-----------

Quote:

Ustawiłem jak mówiłeś.. teraz już nie mrugają te środkowe poziome diody tylko świecą ciągle i delikatnie widać jak mrugną co jakiś czas ale to pewnie jest reset. Mruganie chyba było spowodowane tym że nie zmieniłem zegara w programie gdyż ja zamontowałem 16MHz. Ustawiłem to Devide clock by 8Mhz na disabled a CKSEL3..0=0100 i SUT1..0=10. wygląda prawie taksamo juz ustawione domyślnie tylko niema CKSEL3..0=0100 i SUT1..0=10

Ustaw teraz CKSEL = 1111 jeśli chcesz działać z kwarcem, bo przy domyślnej wartości pracujesz na zegarze wewnętrznym procesora (8MHz, bo dzielenie już wyłączyłeś)

Ps. Co nie zrozumiałeś w zdaniu: "Nie pisz posta pod postem, jak nie ma odpowiedzi lub kolejnego pytania pod spodem to edytuj"

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Badowsky

Zrozumiałem tylko nie

Zrozumiałem tylko nie odświeżyłem strony i myślałem że nikt jeszcze nie odpisał jeśli o to ci chodzi.

-

mBadowsky

Portret użytkownika gosc

Bardzo fajny projekt:) Mam

Bardzo fajny projekt:)

Mam pytanie czy można zastosować tranzystory BC857. Są to też tranzystory PNP lecz SMD?

Portret użytkownika mirley

Re: Tranzystory

Możesz bez problemu dać BC857, ma takie same parametry.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc

Dziękuje:) A czy rezystory

Dziękuje:)

A czy rezystory SMD w obudowie 0603 (moc 0,1W) Wytrzymają?