Novinky: Pridal som novú sekciu na webe - Turistika
Sitepoint logo

OLED teplomer s DS18B20 ovládaný ATTINY85

S kolegami sa chodievame od neskorého leta do jari otužovať a chcel som vedieť aká je tá voda vlastne teplá, teda skôr aká je studená. Doma som použil už viac krát presné Maximácke 1-wire teplomery DS18B20, takže voľba snímača bola jasná. Medzi hračkami sa povaľoval aj lacný OLED displej z ebay-u (ešte lacnejší…),ktorý má I2C rozhranie a radič SSD1306. Celé je to tak jednoduché, že by bol hriech nevyužiť maličký 8-pinový ATTINY85 (8kB FLASH, 2kB SRAM), ktorý kúpite aj u nás za 2 eurá, žiaľ v SMD prevedení jedine cez net.

8kB na program nie je veľa, preto som použil len dve knižnice – TinyWireM a OneWire. Zapojenie je úplne jednoduché, dá sa použiť aj univerzálny plošný spoj, fantázii sa medze nekladú.tinyOLEDthermo tinyOLEDthermo-pcb

Tu je celý kód (na stiahnutie ZIP), vysvetlenie a návod pod ním + návod ako program nahrať do mikroprocesoru.

Fonty a grafické funkcie som trochu upravil (zdroj) pre moje potreby a samotný kód v hlavnej slučke loop je taký jednoduchý, že hádam stačia len komentáre v kóde. Skompilovaný kód má necelých 7kB, ale dal by sa ešte trochu osekať, hlavne ak by sa použil len jeden font, prípadne fonty uložiť do externej I2C EEPROM – ale nebolo treba. Na krabičku by sa zišla 3D tlačiareň – ale bude musieť stačiť krabička od Tic-Tac 🙂 No a napájane zabezpečí aj CR2032 3V batéria, odber cca 6mA.

oledtiny1 oledtiny2

Komentáre (8)

  1. jarkko

    program nedokážem skompilovať prečo…_?

    This report would have more information with
    „Show verbose output during compilation“
    enabled in File > Preferences.
    Arduino: 1.0.6 (Windows 7), Board: „ATtiny85 (internal 8 MHz clock)“
    c:/program files/arduino/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/../../../../avr/lib/avr25/crttn85.o: In function __vector_default':

    (.vectors+0xa): relocation truncated to fit: R_AVR_13_PCREL against symbol __vector_5′ defined in .text.__vector_5 section in core.a(wiring.c.o)

    c:/program files/arduino/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/../../../../avr/lib/avr25/crttn85.o:(.init9+0x2): relocation truncated to fit: R_AVR_13_PCREL against symbol exit' defined in .fini9 section in c:/program files/arduino/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/avr25\libgcc.a(_exit.o)

    core.a(main.cpp.o): In function main’:

    C:\Program Files\Arduino\hardware\arduino\cores\arduino/main.cpp:44: relocation truncated to fit: R_AVR_13_PCREL against undefined symbol `serialEventRun()’

    1. tomXX (Autor článku)

      Akú verizu Arduino IDE používaš? Ja relatívne starú 1.0.1 . Skús si stiahnuť takú a vyskúšaj v nej.

      1. jarkko

        vyskúšal som aj vo verzií 1.0.1.
        s rovnakým výsledkom dá sa povedať aj s rovnakým poruchovým hlásením
        prosím Ťa kde mám uložiť fonty…(#include „font6x8.h“
        #include „font8X16.h“)
        – napr. -sketch“ Tiny85 Temp“ skompilujem bez problemov aj v ATTIN-e mi to funguje! Tento tvoj projekt
        sa mi veľmi páči chcel by som to rozbehať no neviem…

        1. tomXX (Autor článku)

          Fonty sú v adresári kde je INO súbor s programom. Všetko si urobil ako bolo v návode? http://blog.sitepoint.sk/2014/11/22/programujeme-attiny-pomocou-arduina/

          1. jarkko

            všetko možné aj nemožné som vyskúšal a rovnaký výsledok
            pravdepodobne je chyba v samotnom Arduino IDE…
            ako som už spomínal iné programy pre attiny bez problémou skompilujem aj v samotnej ATTIN-e85 fungujú!
            akurát tento pekný projekt mi robí problémy…
            nemôžeš priložiť hex- programu ?

  2. tomXX (Autor článku)

    Neuveríš, ale zrazu to začalo aj mne hádzať tú istú chybu 😀 Ale našiel som opravu a funguje – https://github.com/TCWORLD/ATTinyCore/tree/master/PCREL%20Patch%20for%20GCC

    1. jarkko

      yes..yes..yes Všetko funguje!!!Mám to odskúšané na IDE 1.0.6. verzií arduina.
      Tak teraz to treba už len upraviť na vlastné potreby atď…Veľké ĎAKUJEM
      patrí autorovi článku, ktorý to dotiahol až do konca
      Teším sa na tvoje nové projekty

      1. tomXX (Autor článku)

        No super, to som rád.

        Roboty veľa, na tieto veci nemám moc času, myslel som že to bude lepšie.

Napísať komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *