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] Atmega8 Różnic między programowym a sprzętowym SPI

gts1991 05 Gru 2010 14:13 1350 2
REKLAMA
  • #1 8829098
    gts1991
    Użytkownik obserwowany
    Cześć
    Jaki powinna wyglądać procedura odczytu w SPI [ na przykładzie ADC0831 ], tak samo czy inaczej niż programowo? I czy są jakieś zalety korzystania z sprzętowego SPI a programowego?
      
    Config Spi = Soft , Din = Pinb.4 , Dout = Portb.3 , Ss = None , Clock = Portb.5
    Config Spi = Hard , Data Order = Lsb , Polarity = High , Master = Yes , Phase = 0 , Clockrate = 128 , Noss = 1  
    

    Różnica jaka jest u mnie to taka że Bin ma 1.71k na 1.68 i przetwornik nie mierzy od 0V tylko pokazuje wartość odczytano 3 bit a przy 5.04V mam 251 bitów i 4.96V. Podczas pracy programowej mam od 0V do 5.04V zakres.
  • REKLAMA
  • #2 8829378
    rpal
    Poziom 27  
    ja ci kolego nie podam gotowca z 2 powodów, bascom mnie zupełnie nie interesuje a druga sprawa ze net jest pełen przykładów. A różnica jest zasadnicza bo sprzetowa transmisja aby wysłać znak potrzebuje takich czynności jak ustawienie interface (predkość, polaryzacja sygnału) a potem tylko trzeba ustawić pin odpowiedziałny za sygna CS urzadzenia oraz wpisać do odpowiedniego rejestru daną do wysłania, reszta robi się sama czyli przesuwanie bitów generowanie sygnału zegarowego. Programowo musisz to wszystko zrobić sam wiec pytanie jest banalne. Lepiej sprzetowo, prościej i o wiele szybciej. Dla odczytu jest jeszcze fajniej bo masz przerwanie które jest odpowiedzialne za odbior znaku więc twoj procek nie musi ciągle monitorować linii CS odpowiedzialnej za rozpoczęcie transmisji.
  • #3 9344801
    gts1991
    Użytkownik obserwowany
    Temat zamykam.
REKLAMA