Skocz do zawartości

[Bascom] Licznik szpilek


Amistar

Pomocna odpowiedź

Witam. Programuje Atmege8 do zadania liczenia szpilek. Szpilki są z pomocniczego Attiny13, przepuszczone przez długi filtr i SN74LS123 który daje 3ms szpileczki o pięknym kształcie 😉

//edycja

...bla bla bla

tu opisywałem błędy. Teraz kiedy problem jest rozwiązany wrzucam prawidłowy kod. Impulsy kieruje się na wejscie T0

$regfile = "m8def.dat"
$crystal = 8000000                                '8Mhz wewnętrzny oscylator


Config Portd.2 = Output                           'konfigi pojedynczych ledow
Diodapom Alias Portd.2
Portd.2 = 0
Config Portb.5 = Output
Diodanie Alias Portb.5
Portb.5 = 0
Config Portb.3 = Output
Diodacze Alias Portb.3
Portb.3 = 0


Config Portb.1 = Output                           'konfig diody rgb
Rgbzie Alias Portb.1
Portb.1 = 0
Config Portb.2 = Output
Rgbcze Alias Portb.2
Portb.2 = 0
Config Portb.0 = Output
Rgbnie Alias Portb.0
Portb.0 = 0

Dim Impulsy As Byte

Config Timer1 = Timer , Prescale = 256
Config Timer0 = Counter , Edge = Rising

Compare1a = 31250                                 '8 000 000 / 256 = 31250 (zliczeń na sekunde)
On Compare1a Licz
Enable Oc1a
Enable Interrupts

Do
If Impulsy > 15 Then
Diodacze = 1
Else
Diodacze = 0
End If
Loop

Licz:
Stop Timer0
Impulsy = Timer0
Timer0 = 0
Start Timer0
Return


End

A poniżej układ filtracji zaczerpnięty z kitu AVT

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.