Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Atmega644P/Bascom - RFM12 + karta SD - SPI sprzętowe - razem nie działa

maximus22_kr 07 May 2013 18:01 2619 3
  • #1
    maximus22_kr
    Level 18  
    Witam
    Mimo, że większość proponowanych tutaj rozwiązań podłączenia RFM12 do Atmegi wykorzystuje SPI programowe, ja podłączyłem tradycyjnie, przez SPI sprzętowe - mimo, że nie miałem problemów z wgrywaniem kodu do Atmegi spiętej z RFM12, to uruchomienie ich razem jest problematyczne ( każde osobno działa bez problemu )

    Code: basic4gl
    Log in, to see the code


    Kombinuję z Polarity i Phase, próbowałem nawet inicjować RFM12 po wyjściu z zapisu na kartę SD. Ale to nie kwestia inicjalizacji, ale ustawienia SPI. Niestety za każdym razem jest tak, że jeśli RFM 12 coś odbierze, to jest to później wyświetlane na LCD, ale jeśli potem dojdzie do zapisu na kartę SD, to następne odebranie danych z RFM12 powoduje wyzerowanie wyświetlanych danych lub wyświetlanie wartości 65535. Przy czym zapis na SD działa dalej prawidłowo, tylko dane odebrane z RFM12 to krzaki.

    Powyższy kod ma problem z kompilacją "CONST already specified [SPI_SS]
  • #2
    zbv
    Level 20  
    Wydaje mi się że musisz zadbać by obsługa karty i RFM nie nakładała się. Jak zmieniasz stan CS od SD na niski to zrób to tak: cs rfm na wysoki, cs sd niski. I to samo w procedurach rfm jak cs od rfm na niski to cs od sd na wysoki.
  • #3
    maximus22_kr
    Level 18  
    Tzn. jeśli chodzi kartę SD to steruję ręcznie włączeniem zasilania karty i ustawienia pinu CS. Spróbuję dopisać blokadę pinu CS dla RFM12, a w programie odbioru danych z RFM12 dopiszę blokadę pinu CS karty SD.

    Tylko nie wiem ,czy to wystarczy i nie trzeba za każdym razem wpisywać konfiguracji, czyli dla karty SD jest:
    Code: basic4gl
    Log in, to see the code


    nie wiem, jaka konfiguracja byłaby dla RFM12.

    Właśnie użycie Config Spi powoduje, że RFM12 przestaje odbierać. Żeby uruchomić zapis na SD dwie powyższe linie są konieczne.
  • #4
    maximus22_kr
    Level 18  
    Po różnych próbach uruchomienia - odpuściłem, przepiąłem RFM12 na inne piny działa bez problemu już drugi dzień, karta SD zapisuje kilka zmiennych typu string ( temperaturę, wilgotność, ciśnienie, stan czujników ), skorzystałem z najnowszej biblioteki obsługującej karty SDHC ( ma np. funkcje sprawdzające rodzaj włożonej karty i pojemność ).