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

LPC2148 - konfiguracja SPI1 w trybie master i obsługa kart MMC/SD

rusala 28 Sty 2008 20:07 857 0
REKLAMA
  • #1 4745975
    rusala
    Poziom 22  
    Posty: 475
    Pomógł: 44
    Ocena: 6
    Witam!

    Od niedawna jestem w posiadaniu makiety (o tym @#$%^^&* to za duzo w sumie powiedziane) BTC ZL9ARM i kanapki ZL10 z prockiem LPC2148. Juz nie bede sie rozpisywal na temat moich odczuc co do wspomnianej makiety ale nie polecam.

    W kazdym razie w bulach przeszedlem przez rozne sprawy i stanalem na problemie SPI1. W owej makiecie gniazdo MMC jest polaczone pod ten wlasnie interfejs. SPI1 jest bardziej rozbudowane niz SPI0 w tym procku. SPI0 odpailo niemal odrazu natomiast SPI1 dlugo dlugo milczalo po czym odpalilo i nawet udalo mi sie po wielu kombinacjach zainicjowac karte do pracy w trybie SPI. Ale teraz SPI1 znowu milczy a nie pamietam zebym cos konkretnego zmienil w konfiguracji. Sklaniam sie juz ku opinii ze cos jest uszkodzone w samym procku w kazdym razie jezeli ktos moze mi udzielic porady to potrzebuje jej w dwoch konkretnych sprawach:

    1. Poprawna konfiguracja SPI1 w LPC2148 do pracy w trybie master
    2. Obsluga kart MMC/SD (bez systemu plikow) na dowolnym LPCu w trybie SPI (moze byc SPI0)

    tak wyglada u mnie inicjacja SPI1:
    // 8bit, active high, leading edge, predkosc = PCLK / [CPSDVSR * (podzial_predkosci + 1)]
    		podzial_predkosci = podzial_predkosci >> 1;	// podzial / 2
    		if(podzial_predkosci < 1)
    			podzial_predkosci = 1;
    		//SSPCR0 = ((podzial_predkosci - 1) << 8);	
    		//SSPCR0 |=  0x0007;
    		SSPCR0 = 0x3F07;
    		SSPCPSR = 0x02;								// dodatkowy preskaler = 2
    		
    		SSPCR1 = (ms << 2);
    		SSPCR1 |= 0x02;								// wlacz SPI

    jak widac chwilowo predkosc wpisywana jest do rejestru SSPCR0 "recznie". Zmienna "ms" wynosi 0 dla trybu master i 1 dla slave

    Z gory dzieki za wszelka pomoc. Musze to w miare szybko pchnac do przodu bo zostalo jeszcze duzo innych spraw a mam pewien deadline .
  • REKLAMA
REKLAMA