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

[BASCOM][Attiny 2313]Błąd w programie?

barin 14 Gru 2009 10:19 1977 4
REKLAMA
  • #1 7386876
    barin
    Poziom 10  
    Witam
    Napisałem prosty programik w Bascom i nie działa mi ale nie wiem dlaczego:(

    A więc na:
    PB 0 daje - a na PB 1 +
    PB 2 +
    PB 3 +
    ...
    Cytat:
    $regfile = "attiny2313.dat"
    $crystal = 1000000

    Config Portb = Input
    Portb = &B01111111
    Config Portd = Output
    Portd = &B0000000




    Do


    If Pinb.0 = 1 And Pinb.1 = 0 Then

    Waitms 10
    Portd.0 = 1
    Waitms 10
    Portd.0 = 0

    End If

    If Pinb.0 = 1 And Pinb.2 = 0 Then

    Waitms 10
    Portd.1 = 1
    Waitms 10
    Portd.1 = 0
    Waitms 10
    Portd.1 = 1
    Waitms 10
    Portd.1 = 0

    End If

    If Pinb.0 = 1 And Pinb.3 = 0 Then

    Waitms 10
    Portd.2 = 1
    Waitms 10
    Portd.2 = 0
    Waitms 10
    Portd.2 = 1
    Waitms 10
    Portd.2 = 0
    Waitms 10
    Portd.2 = 1
    Waitms 10
    Portd.2 = 0

    End If

    If Pinb.0 = 1 And Pinb.4 = 0 Then

    Waitms 10
    Portd.3 = 1
    Waitms 10
    Portd.3 = 0
    Waitms 10

    End If

    If Pinb.0 = 1 And Pinb.5 = 0 Then

    Waitms 10
    Portd.4 = 1
    Waitms 10
    Portd.4 = 0
    Waitms 10
    Portd.4 = 1
    Waitms 10
    Portd.4 = 0
    Waitms 10
    Portd.4 = 1
    Waitms 10
    Portd.4 = 0
    Waitms 10
    Portd.4 = 1
    Waitms 10
    Portd.4 = 0
    Waitms 10
    Portd.4 = 1
    Waitms 10
    Portd.4 = 0

    End If


    Loop
    End

    Podłączam i lipa LED-y na wyjściowych kanałach attina nie migają:(
    Pozdrawiam!
  • REKLAMA
  • #2 7386910
    nsvinc
    Poziom 35  
    Kod niech przeanalizują spece od bascoma :) Ale na mój pierwszy rzut oka niby jest w porzadku (aczkolwiek rzut oka programisty C na kod w bascomie niewiele daje...)

    Jestes pewny ze wogóle cos sie dzieje, tj. procek wstaje i wykonuje kod?

    - Sprawdz podlaczenia.

    - Napisz prosty kod wystawiający na jeden z pinow procka chamskie 1 i sprawdz ledem/miernikiem czy ta "1" tam jest. Jak procek nie wstał, led moze sie leciutko jarzyc albo wogole nie bedzie swiecil. Miernik wtedy wskaze stan Hi-Z (czyli "pływające" miliwolty, stan nieokreslony). Stan wysoki objawi się stabilnym swieceniem leda lub wskazaniem miernika 0.7Vcc..Vcc.
  • REKLAMA
  • #3 7387016
    barin
    Poziom 10  
    Nic a nic wgrałem program do nowego attina dalej nie działa:(
  • REKLAMA
  • #4 7387045
    manekinen
    Poziom 29  
    Jesteś pewien co do tych 10ms? Tak szybkiego migania nie zauważysz. Daj co najmniej 200ms.
  • #5 7387091
    barin
    Poziom 10  
    Nie jawie nic:
    Mam program który miga led
    Cytat:
    $regfile = "attiny2313.dat"
    $crystal = 4000000
    Config Portb = Input
    Portb.0 = 1
    Config Portd = Output
    Portd = &B11111111
    Dim Temp As Byte
    Temp = 1
    Do
    Temp = Temp * 2
    If Temp > 80 Then Temp = 1
    Portd = Temp
    Toggle Portd
    If Pinb.0 = 0 Then
    Bitwait Pinb.0 , Set
    End If
    Waitms 500
    Loop
    End


    I tak:
    Impuls zmieniający im stan jest tez impulsem do mojego programiku czyli PB 2
    zatrzymuje led przyciskiem(podana masa) i tą sama masę podaje na PB 0
    teoretyczni podaje + i - ale nie działa:(
    Aha i zmieniłem czas na 100ms

    Dodano po 25 [minuty]:

    O keja działa hehe brakowało opornika :)
    Chyba można uznać temat za zamknięty :)
    Pozdrawiam!
REKLAMA