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

AT90CAN128 - Zawieszenie programu przy obsłudze ADC i CAN-USB

robert_771 06 Gru 2013 21:08 2235 8
  • #1 13032555
    robert_771
    Poziom 10  
    Witam,

    prosiłbym o sprawdzenie kodu - części odpowiedzialnej za obsługę przetwornika ADC, ponieważ póki co powoduje on zawieszenie się programu do monitoringu ramek krążących w sieci CAN (za pomocą konwertera CAN-USB), a nie wiem co robię źle :/

    Część odpowiedzialna za CANa działa poprawnie.


    config.h
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Kod
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    pozdro:)
  • Pomocny post
    #2 13043966
    kicajbas
    Poziom 32  
    Witam
    Może "winowajcą" jest częstotliwość:
    Cytat:
    By default, the successive approximation circuitry requires an input clock frequency
    between 50 kHz and 200 kHz to get maximum resolution.
    .
    U Ciebie wychodzi 250kHz ( 8M / 32 )
    Pozdr.
  • #3 13044074
    robert_771
    Poziom 10  
    Zmienione, jednak problemu to nie rozwiązało :/
  • Pomocny post
    #4 13044387
    kicajbas
    Poziom 32  
    Witam
    A może to:
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    na

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Pozdr.
  • Pomocny post
    #5 13044435
    Konto nie istnieje
    Poziom 1  
  • #6 13046603
    robert_771
    Poziom 10  
    Sam układ pracuje prawidłowo, jednak wiesza się oprogramowanie monitorujące CANa.
    Co do podłączenia to powinno być wszystko ok, ponieważ korzystam z gotowego modułu z Olimexa (są kondensatory itd.)
    https://www.olimex.com/Products/AVR/Development/AVR-CAN/resources/AVR-CAN-sch.gif

    Próbowałem na przerwaniach, jednak nadal to samo. Nie wiem czy czegoś nie robię źle, dlatego prosiłbym również o sprawdzenie wersji na przerwaniach :)
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod
  • Pomocny post
    #7 13046652
    Konto nie istnieje
    Poziom 1  
  • #8 13046901
    robert_771
    Poziom 10  
    Coś takiego?

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Tak magluje ten temat, bo już chce wykluczyć możliwość błędu w kodzie związanym z ADC ;)
  • #9 13047111
    Konto nie istnieje
    Poziom 1  
REKLAMA