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

Weryfikacja ustawień SPI dla AS3935 na Atmega644PA - brak odczytu danych

jaca_76 18 Lip 2015 17:02 1053 1
  • #1 14857692
    jaca_76
    Poziom 12  
    Witam piszę program do układu AS3935 na płytce od MikroElektroniki na podstawie tego co znalazłem w sieci.
    I chciałbym żeby ktoś zweryfikował ustawienia SPI .
    Jak narazie dostaję same zera przy odczycie.
    W jaki sposób zweryfikować poprawność transmisji ?

    Atmega644PA - 18432000Hz
    Połączenia:
    Mikroe AVR
    CS - PB4
    SCK - PB7
    SDO - PB6
    SDI - PB5

    main.c

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


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


    AS3935.h

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



    ---------------
    Edit
    Mała zmiana jak wynika z datasheet bit 6 adresu przy odczycie powinien być ustawiony

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


    --------------------------------------------------------
    Edit 2
    Kolejna zmiana zgodnie z DS :
    To activate this SPI, the CS has to be set to low. A SPI command consists of two bytes serial command and the data are sampled on the falling
    edge of SCLK (CPHA=1). The next table shows command structure, from the MSB (B15) to LSB (B0). The command stream has to be sent to
    the SPI from the MSB (B15) to the LSB (B0).

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod
  • #2 14862880
    jaca_76
    Poziom 12  
    Znalazłem chyba rozwiązanie, zmodyfikowałem funkcję odczytu:

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