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. Dzielenie i zmienne.

texma 17 Lis 2011 12:23 2004 3
REKLAMA
  • #1 10148627
    texma
    Poziom 13  
    Witam
    Mam problem z właściwym liczeniem i wyświetlaniem wyniku (LED 7-segm.).
    Liczy procent czasu włączenia urządzenia (licz_minuty_triaka) w stosunku do czasu działania (licz_minuta_stat). Standardowo, jeśli nie dochodzi inny warunek to urządzenie chodzi 3 min. co 2 godziny, zatem wynik powinien oscylować wokół 2,5%. Wynik ostateczny z bascoma - liczba całkowita <100, kropkę dostawiam.
    Liczy i wyświetla genialnie...ale po 20-kilku godzinach krzaczy się wynik na pozycji _x,_. Czytałem, że bascom nie lubi operacji na różnych zmiennych, ale krzaczyłoby od początku. Zakresy zmiennych są chyba właściwe. Z drugiej strony podejrzewam z uwagi na moment krzaczenia Integer, ale w zasadzie wynik nie powinien przekraczać jego zakresu.
    Z góry dziękuję za uwagi.

    Kod: text
    Zaloguj się, aby zobaczyć kod
  • REKLAMA
  • #2 10151560
    xury
    Specjalista automatyka domowa
    Takie zachowanie wskazuje na problem ze stosem. Niestety po tym fragmencie kodu nic się nie da powiedzieć. Sprawdź czy wszystkie podprogramy są prawidłowo napisane, czyli czy nie następuje stopniowy rozrost stosu.
  • REKLAMA
  • #3 10151635
    SylwekK
    Poziom 32  
    Dokładnie tak jak pisze kolega xury. Być może wywołujesz jakiś podprogram, który wywołuje inny, który znowu wywołuje ten pierwszy albo gdzieś jest wyskok z podprogramu przez jakieś Goto. Jeśli używasz funkcji lub procedury z przekazaniem parametrów i nie zmieniłeś wielkości stosu to na 99% będzie to wina jego zbyt małej wielkości.
REKLAMA