Termometr zewnętrzny na Attiny2313

20120715236_wmTermometr powstał z myślą o mierzeniu temperatury na zewnątrz w czasie zimy. Procesor jest taktowany zegarem 10MHz. Odczyt temperatury odbywa się za pomocą cyfrowego czujnika Dallas DS18B20 1-wire. Zakres mierzonej temperatury wynosi od -55 oC do +125 oC (od -67°F do +257°F).
Płyta główna termometra jest wyposażona w potencjometr do zmiany kontrastu wyświetlacza oraz w gniazdo ISP do programowania.
20120715236_wm
20120715245_wm
TERMOMETR
      Schemat powyżej przedstawia nasz termometr. Układ IC1 to nasz procesor Attiny2313 do którego jest dołączony zewnętrzny kwarc 10MHz (Q2) z układem kondensatorów C6 i C5. Można również zauważyć gniazdo do programowania ISP (JP4). Kondensatory C7 i C8 filtrują napięcie dostarczane do układu. Do złącza JP2 przykładamy napięcie 5V i prąd 500mA +/-. Czujnik na schemacie jest oznaczony IC3A Pin 11 procesora PD6 odbiera dane z czujnika za pomocą transmisji 1-wire. Dane do wyświetlacza są wysyłane pinami RS, E, D4. D5, D6, D7 (więcej w LCD). Potencjometr R6 jest podłączony do zasilania i do pinu 3 (CONTR)w wyświetlaczu, który reguluje konstrast po przez zmianę napięcia UWAGA!! w wyświetlaczu pin1(GND) i pin 5 (R/W), muszą być zmostkowane (połączone) bo w przeciwnym wypadku nic z niego nie odczytamy !!
 
Wykaz elemetnów:
IC1 mikroprocesor Attiny 2313
IC3A czujnik Dallas DS18B20
Q2 zewnętrzny kwarc 10MHz
C6,C7 kondensator 27pF
JP4 Goldpin 5×2
JP2, JP3 Goldpin 2×1
C3, C7 kondensator 100uF
C8 kondensator 100nF
R6 potencjometr 10k?
R1 rezystor 220?
Dis1 wyświetlacz 20×4

Koszt całości: 55zł (sam wyświetlacz kosztuje 30zł)



wsad do procesora i schemat 

 

  • Anonimowy

    Witam !
    W spisie elementów jest błąd:
    C6,C7 kondensator 27nF ?
    powinno być pF.
    Pozdrawiam. SM

  • Anonimowy

    Witam, wzorowałem się na tym projekcie i zrobiłem termomet na atmega8 na czest. 8mhz, bez kwarcu i na jednym czujniku. Temperatura z np 20'c do 5'c spada bardzo długo ok. 3-5min. Czy da się w programie jakoś przyspieszyć by wynik był szybszy?

    • Spróbuj zmienić czas odczytu z czujnika na mniejszy

    • Anonimowy

      waits ustawilem na 250, na 750 bardzo dlugo wlącza się, zastanawiam się nad dorzuceniem kwarcu i może problem zginie :)

    • Spróbuj zmienić we fusebitach na Internal RC 8MHz jak to nie poskutkuje to wstaw zewnętrzny i już ;)