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

Kod w Bascom dla zegarka binarnego z 13 diodami i RTC 32768Hz - jak poprawić?

wader_669 11 Paź 2007 15:26 1128 0
REKLAMA
  • #1 4368712
    wader_669
    Poziom 28  
    Posty: 1512
    Pomógł: 93
    Ocena: 15
    moj zegarek binarny sklada sie z 13 diod, sa one osobno podlonczone do portow mikrokontrolera. Dziala on na zegarku rtc (kwarcu 32768Hz).
    Mam problem z napisaniem kodu.
    1 problem: pierw napisalem program testowy, ze jak jest minuta 01 to zapala sie led 1, jak minuta 02 to led 2. Problem jest taki ze jak jest minuta 02 to zapala sie dioda 1 i 2 nie wiem jak to rozwiazac
    2 problem: nie wiem jak uspic mikrokontroler.

    oczywiscie wszystko w kodzie bascom
    tutaj kod (jeszcze jest podlonczony lcd, zeby latwiej zauwazyc co dziala, a co nie)

    
    $regfile = "m8def.dat"
    $crystal = 8000000
    
    Config Pinc.0 = Output
    Config Pinc.1 = Output
    Config Pind.2 = Input
    Config Pind.3 = Input
    
    Config Lcd = 20 * 2
    
    Config Lcdpin = Pin , Db4 = Portd.7 , Db5 = Portd.6 , Db6 = Portd.5 , Db7 = Portd.4 , E = Portb.0 , Rs = Portb.1
    
    Config Clock = Soft
    
    Enable Interrupts
    
    
    
    Set Portd.2
    Set Portd.3
    Set Portc.0
    Set Portc.1
    
    
    Time$ = "00:00:00"
    
    Do
    
    If _min = 01 Then
    Portc.0 = 0
    End If
    
    If _min = 02 Then
    Portc.1 = 0
    End If
    
    
    If Pind.2 = 0 Then
     Waitms 5
    If Pind.2 = 0 Then
    Incr _min
    If _min = 60 Then
    _min = 0
    End If
    
    End If
    End If
    
    If Pind.3 = 0 Then
    Waitms 5
    If Pind.3 = 0 Then
    Incr _hour
    If _hour = 24 Then
    _hour = 0
    End If
    End If
    End If
    
    
    Cls
    Lcd Time$
    Waitms 100
    
    
    Loop
    
    End
    
  • REKLAMA
REKLAMA