Bascom - nie działa regulacja prędkości efektu

Jesli jesteś początkującym elektronikiem, to tu z pewnością znajdziesz pomoc. Miejsce dobre do dyskusji nad podstawami elektroniki w zakresie teorii i praktyki.
Spanner
Użytkownik
Posty: 364
Rejestracja: 18 lip 2010, 18:29
Lokalizacja: Bielsko biała

Bascom - nie działa regulacja prędkości efektu

Post autor: Spanner » 05 cze 2011, 10:55

Witam. Tworzę układ do efektu świetlnego. Działa poprawnie, jednak nie działa regulacja prędkości. Układ mam zmontowany na płytce MOŁ, oraz część wykonawcza ( diody ) na stykowej. Port b steruje anodami, a port d anodami diod trzykolorowych. Proszę o napisanie dlaczego regulacja prędkości nie działa? Brak debouncera dlatego że w gotowym układzie będzie obwód rc przy przyciskach. Wrzucam fragment kodu dotyczący regulacji prędkości porty i reszta poprawnie skonfigurowane. Nie mogę wrzucić całego programu(nie mój wymóg)

Kod: Zaznacz cały


Dim Kol As Byte



D Alias Portb
Al Alias Portd



Czas = 100


Do
D = &B00000001
Waitms Czas
D = &B00000010
Waitms Czas
D = &B00000100
Waitms Czas
D = &B00001000
Waitms Czas
D = &B00010000
Waitms Czas
D = &B01000000
Waitms Czas




If Pind.0 = 0 Then
Czas = Czas + 10
End If
    If Pind.1 = 0 Then
    Czas = Czas - 10
    End If
       If Czas = 250 Then
       Czas = 100
       End If
          If Czas = 10 Then
          Czas = 100
          End If

keruseykaryu

Post autor: keruseykaryu » 05 cze 2011, 11:36

Spanner pisze:Proszę o napisanie dlaczego regulacja prędkości nie działa? Brak debouncera dlatego że w gotowym układzie będzie obwód rc przy przyciskach. Wrzucam fragment kodu dotyczący regulacji prędkości porty i reszta poprawnie skonfigurowane. Nie mogę wrzucić całego programu(nie mój wymóg)
Nie ma całego programu. Nie ma możliwości odpowiedzi. :evil:

Spanner
Użytkownik
Posty: 364
Rejestracja: 18 lip 2010, 18:29
Lokalizacja: Bielsko biała

Post autor: Spanner » 05 cze 2011, 13:05

wrzuciłem całą częsc w ktorej jest zmienna czas czy to nie wystarczy

Awatar użytkownika
Pikczu
Użytkownik
Posty: 754
Rejestracja: 18 lip 2005, 18:33
Lokalizacja: Dublin
Kontakt:

Post autor: Pikczu » 05 cze 2011, 18:38

Przecież Ci napisał że nie.
Albo dajesz cały albo walcz sam.
O prawa autorskie się boisz ??
Za przeproszeniem w dupach wam się poprzewracało ludzie tu nie takie kody udostępniają za free.

Awatar użytkownika
matrix
Użytkownik
Posty: 1796
Rejestracja: 15 mar 2006, 5:21
Lokalizacja: Sochaczew
Kontakt:

Post autor: matrix » 05 cze 2011, 18:39

W jakim zakresie ma byc regulowany czas? Od ilu do ilu?
Pokaż wpisywanie zmiennej do timera.

Ooo, cześć Pawełku.

Awatar użytkownika
Pikczu
Użytkownik
Posty: 754
Rejestracja: 18 lip 2005, 18:33
Lokalizacja: Dublin
Kontakt:

Post autor: Pikczu » 05 cze 2011, 18:45

Cześć Piotrek
Co ty tam są "bardzo zaawansowane wait-y" a nie timer chyba dlatego nie chce zapodać całości. Jak by to na timerach zrobił to by nie było problemu.
Pozdrawiam

Awatar użytkownika
matrix
Użytkownik
Posty: 1796
Rejestracja: 15 mar 2006, 5:21
Lokalizacja: Sochaczew
Kontakt:

Post autor: matrix » 05 cze 2011, 18:59

No ja też tak myślę. Nie ma to jak wait, co? ha ha.

keruseykaryu

Post autor: keruseykaryu » 05 cze 2011, 19:11

Oprócz nieszczęsnych waitów i im podobnych kwiatków, problemów w tym programie jest jeszcze parę. Ale ta konstrukcja jest zwalona:

Kod: Zaznacz cały

If Pind.0 = 0 Then 
 Czas = Czas + 10 
 End If 
     If Pind.1 = 0 Then 
     Czas = Czas - 10 
     End If 
        If Czas = 250 Then 
        Czas = 100 
        End If 
           If Czas = 10 Then 
           Czas = 100 
           End If
Bo Primo: Do chrzanu są te wcięcia. Tak się tego nie pisze bo to myli.
Sekundo: Nie ma zabezpieczenia jak Czas nie będzie podzielny bez reszty przez 10.

Ta zaś gupota prosi się o pętlę i jakiś read, data, restore czy co to tam jest dostępne:

Kod: Zaznacz cały

Do 
 D = &B00000001 
 Waitms Czas 
 D = &B00000010 
 Waitms Czas 
 D = &B00000100 
 Waitms Czas 
 D = &B00001000 
 Waitms Czas 
 D = &B00010000 
 Waitms Czas 
 D = &B01000000 
 Waitms Czas
No i jak koledzy wspomnieli to tajmer i jeszcze raz tajmer z ctc.

Spanner
Użytkownik
Posty: 364
Rejestracja: 18 lip 2010, 18:29
Lokalizacja: Bielsko biała

Post autor: Spanner » 06 cze 2011, 15:58

Pikczu pisze:Cześć Piotrek
Co ty tam są "bardzo zaawansowane wait-y" a nie timer chyba dlatego nie chce zapodać całości. Jak by to na timerach zrobił to by nie było problemu.
Pozdrawiam
matrix pisze: No ja też tak myślę. Nie ma to jak wait, co? ha ha.

Tacy jesteście mądrzy? Tylko dogadywać potraficie? Pokażcie swoje pierwsze super zaawansowane układy!!! Zamiast dogadywać mi może pokazalibyście jak w tym układzie wykorzystać Timer? Czy to że opowiedziałem w EdW o moich uwagach tak bardzo was zdenerwowało? Ja się zmienić próbuję, nauczyć czegoś nowego, szukam pomocy w rozwiązaniu problemu, a otrzymuję śmiechy i chichy .
Tak naprawdę pomógł tylko użytkownik keruseykaryu i jemu i TYLKO jemu dziękuję.
Pozdrawiam

Awatar użytkownika
Tranzystor
Użytkownik
Posty: 889
Rejestracja: 28 sie 2005, 19:19
Lokalizacja: Świętochłowice
Kontakt:

Post autor: Tranzystor » 06 cze 2011, 16:37

Witam, opisz może w jaki sposób ma działać ten efekt i nie denerwuj się. Nie reaguj na tych co się śmieją to załatwią moderatorzy.

Jeżeli nie chcesz, bądź nie możesz udostępnić całego programu to przynajmniej wyślij go na PW. Na pewno pomogę, ale muszę dokładnie wiedzieć o co 'come on' ;)

Pozdrawiam ;)

keruseykaryu

Post autor: keruseykaryu » 06 cze 2011, 16:58

Tranzystor pisze:ale muszę dokładnie wiedzieć o co 'come on'
Kolega Spanner, już wie w czym był główny problem. Reszta to kosmetyka. :wink:

Awatar użytkownika
Tranzystor
Użytkownik
Posty: 889
Rejestracja: 28 sie 2005, 19:19
Lokalizacja: Świętochłowice
Kontakt:

Post autor: Tranzystor » 06 cze 2011, 17:02

No, to gdyby był jeszcze jakiś problem to proszę pisać ;)

Awatar użytkownika
Pikczu
Użytkownik
Posty: 754
Rejestracja: 18 lip 2005, 18:33
Lokalizacja: Dublin
Kontakt:

Post autor: Pikczu » 06 cze 2011, 17:04

W chodzisz na forum i pytasz o pomoc nie dając źródła jak mamy Ci pomóc ???
Gdy byś czytał zapewne byś wiedział że wait jest najgorszą opcja do wykorzystania.

matrix przecież pytał w jakim zakresie to coś chcesz regulować ?
Odpowiedziałeś?? -NIE
Czy to że opowiedziałem w EdW o moich uwagach tak bardzo was zdenerwowało?
Że co ? o czym ty piszesz??

Jeśli nie możesz w kleić kodu to przynajmniej opisz dokładnie co chcesz zrobić.
lub napisz podobny kod z tym problemem i wklej na forum nikt tu nie jest duchem Świętym.
I calm down

Spanner
Użytkownik
Posty: 364
Rejestracja: 18 lip 2010, 18:29
Lokalizacja: Bielsko biała

Post autor: Spanner » 06 cze 2011, 17:26

Jestem spokojny. Spróbuję na timerze zrobić a jeśli nie wyjdzie to napiszę
pozdro

Awatar użytkownika
matrix
Użytkownik
Posty: 1796
Rejestracja: 15 mar 2006, 5:21
Lokalizacja: Sochaczew
Kontakt:

Post autor: matrix » 06 cze 2011, 20:41

Kolego, nikt nie jest tu po to by Cię wyśmiewać, tylko chcemy Ci pomóc. Każdy z nas kiedyś zaczynał i na pewno nie były to super programy, ale prosiliśmy Cię o to byś udostępnił szerzej kod, ale nie, chciałeś być mądrzejszy.

ODPOWIEDZ