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

Bardzo wolny timer1? Inteligentny wyłącznik, ATTiny2313.

krzysiekj18 16 Mar 2008 13:22 1064 5
REKLAMA
  • #1 4914951
    krzysiekj18
    Poziom 19  
    Posty: 526
    Pomógł: 41
    Ocena: 38
    Witam
    Ostatnio chciałem zbudować inteligentny wyłącznik na ATTiny2313 zrobiłem układ podłączyłem procesor do niego sprawdziłem wszystkie obwody wejść i wyjść i gdy upewniłem się że wszystko dział sprawnie zabrałem się za pisanie właściwego programu, jednak już przy pierwszych testach okazało się ze procesor działa ale jakby bardzo wolno, postanowiłem się upewnić czy jest tak rzeczywiście i napisałem prosty programik testujący timer1 przedstawiony poniżej

    
    $regfile = "attiny2313.dat"
    Ddrb = &B11111110                                           'port pd.0 jako wejscie pływające reszta jako wyjścia z stanem wysokim
    Portb = &B11111110
    Ddrd = &B0000000                                            'wszystkie bity jako wejścia pływające
    Portd = &B1111111
    
    Config Timer1 = Timer , Prescale = 64
    Enable Interrupts
    Enable Timer1
                       ' konfiguracja liczników z przeskałowaniem na nalicznaie impulsów co 0,000016s
    On Timer1 Licznikczasuzadzialania                           'wysłanie przerwania co pół sekundy
    
    Do
    Loop
    End
    
    Licznikczasuzadzialania:
    Load Timer1 , 30000
    Toggle Portb.2
    Return
    
    
    


    i okazało się że stan badanego wyjścia zmienia się co ok 2-3 sek.
    Częstotliwość z jaką jest taktowany procesor to 4MHZ , próbowałem już go taktować zarówno oscylatorem wewnętrznym RC jak i zewnętrznym kwarcem i ciągle jest ten sam problem.
  • REKLAMA
  • #2 4914967
    don diego
    Poziom 32  
    Posty: 1557
    Pomógł: 165
    Ocena: 63
    Nie znam BASCOMa, ale chyba powinieneś powiedzieć kompilatorowi z jakim taktowaniem pracujesz. Zdefiniować prędkość kwarcu.
  • REKLAMA
  • REKLAMA
  • #4 4915096
    krzysiekj18
    Poziom 19  
    Posty: 526
    Pomógł: 41
    Ocena: 38
    co do ustawień w BASCOMie to aktualnie mam takie :

    Bardzo wolny timer1? Inteligentny wyłącznik, ATTiny2313.

    aha i jeszcze jedno pytanie za pomocą jakiej komendy definiuje się na początku prędkość kwarcu ???
  • REKLAMA
  • #5 4915187
    KiciuR8
    Poziom 11  
    Posty: 49
    Pomógł: 2
    Ocena: 1
    W Bascomie częstotliwość taktowania określa sie komendą: $crystal

    np

    $crystal = 8000000

    taktowanie wynosi 8MHz
  • #6 4915220
    krzysiekj18
    Poziom 19  
    Posty: 526
    Pomógł: 41
    Ocena: 38
    Dzięki za info ale chyba już jest po procesorze bo wymieniłem go na inny i teraz działa elegancko zarówno z kwarcem jak i z oscylatorem RC.
REKLAMA