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

ATTINY 2313 pomoc w wykonaniu ukladu czasowego.

corepride 15 Paź 2008 23:16 1161 4
  • #1 5636039
    corepride
    Poziom 12  
    Witam serdecznie Kolegów. Potrzebuję wykonać urządzenie, które co 30 minut będzie wystawiało na wyjściu 5 impulsów w przerwach 2-3 sekundy, załączających przekaźnik. Pomyślałem sobie, że mógłbym to zrobić na mikrokontrolerze jak w tytule. Proszę o pomoc jak to wykonać (dysponuje kompilatorem BASCOM).

    Proszę poprawić tytuł wiadomości - regulamin p.11.1
    [zumek]
  • #2 5636056
    komanche
    Poziom 13  
    masz programator?

    Równo 30 minut czy może być z lekkim "zezem"?

    Pozdro ;]
  • #3 5636081
    corepride
    Poziom 12  
    komanche napisał:
    masz programator?

    Równo 30 minut czy może być z lekkim "zezem"?

    Pozdro ;]


    Może być z zezem:D Generalnie układ ma co trzydzieści minut pięć razy na chwilę załączyć i wyłączyć przekaźnik, który z kolei będzie załączał pompkę. Nie jest wymagana duża dokładność, nawet odchyłki +/- kilka minut są do zaakceptowania.
  • Pomocny post
    #4 5636098
    klops_mops
    Poziom 17  
    Najprościej jak się da:

    
    Do
    Set portb.0
    Waitms 750
    Reset portb.0
    Wait 2
    Set portb.0
    Waitms 750
    Reset portb.0
    Wait 2
    Set portb.0
    Waitms 750
    Reset portb.0
    Wait 2
    Set portb.0
    Waitms 750
    Reset portb.0
    Wait 2
    Set portb.0
    Waitms 750
    Reset portb.0
    Wait 1800
    
    Loop
    


    Tylko, że to dokładne co do sekundy nie jest... Poślizg mniej więcej ~1 minuta +/-
  • Pomocny post
    #5 5636195
    komanche
    Poziom 13  
    Ja generalnie przejawiam brak elastyczności umysłu i ludzi też tak traktuję, więc proszę się nie obrażać ;]

    Więc tak.
    Możesz zrobić ten układ na ATMedze8?

    Z resztą, co to za różnica przestawić literkę i jeden wyraz by pasiło do ATTINY ;]

    ATTINY 2313 pomoc w wykonaniu ukladu czasowego.

    Tutaj masz rozpiskę pinów w ATMedze (widok od góry, od strony napisów)


    Teraz wybierz sobie jedną nóżkę która będzie Ci najwygodniejsza. Moim zdaniem najlepsza jest noga numer 28 ;] czyli PortC.5. Pod tą nogę podłącz przekaźnik ;]
    
    $regfile = "m8def.dat"
    $crystal = 1000000
    
    Config Portc = Output
    reset portc
    
    Pompka Alias Portc.5
    
    Do
    
    Pompka = 1 'start
    waitms 1000
    Pompka = 0
    waitms 1000
    Pompka = 1 'start
    waitms 1000
    pompka = 0
    waitms 1000
    Pompka = 1 'start
    waitms 1000
    Pompka = 0
    waitms 1000
    Pompka = 1 'start
    waitms 1000
    pompka = 0
    waitms 1000
    pompka = 1 'start
    waitms 1000
    pompka = 0
    
    wait 1800
    
    Loop
    
    End


    Czas pracy pompki edytujesz tu:

    Cytat:
    Pompka = 1 'start
    waitms 1000
    pompka = 0


    a odstęp między włączeniami tu:

    Cytat:
    pompka = 0
    waitms 1000
    pompka = 1 'start


    Dla jasności.

    W stanie 1 na nóżce masz + zasilania a w 0 masz... zero ;]

    Czemu atmega8? Może kiedyś będziesz chciał wyświetlacz, termometr (jeśli to pompka do akwarium albo coś w podobie) i inne takie badziewia ;]
REKLAMA