logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

ATmega128 - czujnik temperatury - TMP04

jimmy87 02 Mar 2009 11:11 1458 3
REKLAMA
  • #1 6225172
    jimmy87
    Poziom 11  
    Witam!
    Mam następujący problem.
    Probuję zrobić sterownik podgrzewacza wody do zastosowania domowego :) Chodzi mi dokładnie o układ, któremu zadaję żądaną temperaturę, a on po włączeniu przepływu wody, grzałkami podgrzewacza steruję tą temperatuą. Większość programu już mam, pozostała mi jeszcze kwestia czujnika temperatury. Posiadam czujnik TMP04 który na wyjsciu podaje sygnał prostokątny 35Hz o wypełnieniu zależnym od temperatury. W pdfie wygląda to następująco:

    `````````t1`````````t2
    _____|----------|____________|---------|

    temperatura = 235 - ((400*t1)/t2)

    Mam jednak mały problem, jak napisać program który będzie zliczał czas wysokiego stanu i niskiego stanu?

    Doszedłem już do takiego rozwiązania, aby zrobić to na timerze/timerach które po podaniu na wejscie 0 lub 1 zliczają impulsy. Nie musi być to przecież czas. Wystarczy że będzie to jakiś realny stosunek. Mi wpadło do głowy żeby był to stosunek zliczonych impulsów w stanie wysokim do ilości impulsów w stanie niskim. Nie wiem jednak jak to napisać. nie wiem jak wykorzystać timer'y właśnie w taki sposób.

    Będę wdzięczny za jakiekolwiek podpowiedzi czy informację.

    Dodam iż piszę w Pascal'u w programie "mikroPascal PRO for AVR".
    Jeśli są potrzebne jakieś dodatkowe informację to proszę pytać.

    Dziękuję z góry!
    Pozdrawiam, Jakub!
  • REKLAMA
  • #2 6225377
    _Robak_
    Poziom 33  
    Wyjscie podepnij pod nozke dla przerwan zewnetrzych. Przerwanie musi byc ustawione aby wykrywalo dowolne zbocze, w przerwaniu wlaczaj timer i po dwoch cyklach bedziesz mial stosunek, ze tak to ladnie ujme ;)
  • REKLAMA
  • #3 6229347
    jimmy87
    Poziom 11  
    a umiałbyś zamieścić jakis przykładowy programik? nie musi to być akurat taki jak potrzebuję, ale coś co mógłbym wykorzystać... Napisałem coś podobnego ale dalej niestety nie chce mi to cholerstwo działać :)
    pozdrawiam!
  • #4 6230078
    _Robak_
    Poziom 33  
    Musialbym pisac od nowa :P Wklej twoj to zobaczymy :)
REKLAMA