Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

pierwszy program w c nie działa jak potrzeba

zbych1000 14 Sie 2011 15:03 1180 4
  • #1 14 Sie 2011 15:03
    zbych1000
    Poziom 11  

    Witam
    Chciałbym aby PIC po wykryciu impulsu zera odczekiwał 10ms i ponownie sprawdzał stan linii. Jeśli dalej trwa impuls zera to PIC ma zmienić stan zapalenia diod led.

    Stan faktyczny:
    Generator podaje jednosekundowy impuls zera na linię GP2 procesora PIC12f683, po czym ma 4s przerwy i tak w kółko.
    PIC po wykryciu impulsu odpowiednio zapala diody (przy zmianie stanu linii) lecz nie reaguje na opóźnienie, czy to będzie 1 ms czy nawet 2 sekundy. Podłaczone diody migają 0.5sek/4 sek.
    Ponizej kod proszę o pomoc

    Kod: c
    Zaloguj się, aby zobaczyć kod
    [/code]

    0 4
  • #2 14 Sie 2011 15:55
    94075
    Użytkownik usunął konto  
  • #3 14 Sie 2011 17:07
    zbych1000
    Poziom 11  

    jeśli zmienię == na = to dioda GP4 pali się cały czas, GP5 wcale a przecież to GP5 powinna być zapalona ok. 4.5 sekundy a GP4 tylko 0.5sek.

    0
  • Pomocny post
    #4 14 Sie 2011 17:09
    dondu
    Moderator Mikrokontrolery Projektowanie

    zbych1000 napisał:
    jeśli zmienię == na = to dioda GP4 pali się cały czas, GP5 wcale a przecież to GP5 powinna być zapalona ok. 4.5 sekundy a GP4 tylko 0.5sek.


    Koledze albertb chodziło o tę błędną część kodu :) :

    Kod: c
    Zaloguj się, aby zobaczyć kod



    a tutaj dla odmiany masz dobrze:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Proponuję abyś kupił jakąś dobrą książkę np.: http://mikrokontrolery.blogspot.com/p/ksiazki-dla-ciebie.html
    bo znacznie szybciej od całkowitych podstaw do sporych projektów dojdziesz.
    Wprawdzie to nie PIC, ale na AVR-ach łatwo wiedzę przyswoisz.


    A za to, że C stosujesz masz ode mnie 20pkt, bo mogą się Ci przydać (masz zaledwie 5) :)

    0
  • #5 14 Sie 2011 21:08
    zbych1000
    Poziom 11  

    Dziękuje bardzo za naprowadzenie i punkty, programik już działa. Do tej pory bawiłem się assemblerem i '51 a widzę, że C to inna bajka ale z przyjemnością przy niej zostanę.

    0