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

Attiny2313: Jak zmniejszyć rozmiar programu przy użyciu _delay_us()?

marek_ka 28 Cze 2012 13:33 862 3
  • #1 11050938
    marek_ka
    Poziom 26  
    Witam

    Napisałem program i mam z nim problem.
    Po skompilowaniu zajmuje mi prawie całą pamięć 1724bytes (84,2%). Przyczyną jest zmienna opuzgrzew w _delay_us( ). Gdy zamiast tej zmiennej wstawię wartość stałą, program zajmuje mi tylko 400bytes (19,5 %).
    Czy ktoś ma pomysł jak zmniejszyć objętość programu? Zależy mi na tym ponieważ chciałbym dołożyć jeszcze pomiar czasu pracy, zliczający łączny czas pracy.
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Proszę o wyrozumiałość, bo n/t programowania jestem laikiem.
    Za wszelkie uwagi będę wdzięczny.
  • Pomocny post
    #2 11050982
    drzasiek
    Specjalista CNC
    Do _delay_ms(), _delay_us jako argument nie podaje się zmiennych.
    Jeśli chcesz mieć zmienne opóźnienie, stwórz sobie osobne funkcje, np:
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod

    i używaj tych funkcji tam gdzie parametrem opóźnienia ma być zmienna.
  • Pomocny post
    #3 11051253
    Konto nie istnieje
    Poziom 1  
  • #4 11051318
    marek_ka
    Poziom 26  
    Dziękuję bardzo za rozwiązanie.
    W sumie banalne, a nie wpadłem na nie. Mi wystarczy dokładność rzędu 0,1ms.
REKLAMA