Forum: Digitale Signalverarbeitung / DSP / Machine Learning ezDSP mit 5505 und SPI


von SiO2 (Gast)


Lesenswert?

Hi, ich versuche SPI zum laufen zu bekommen. Aber es kommt weder CLK 
noch sointein Signal raus. Messen tu ich mit Logicanalyzer. Der Codee 
wird auch ausgeführt, bin schrittweise durchgegangen. Hab ich noch ne 
Einstellung uebersehen?
Mein Code:
//einstellen des Modes
PERIPHSEL0 = 0x6902;        // parallel port: mode 6, serial port1: mode 
2
// und init des SPI
void spi_init(void){
   int i;
    SYS_PRCR = SYS_PRCR & ~0x0080;        //take out of reset
    IDLE_PCGCR = IDLE_PCGCR & ~0x0002;            //enable clock

    SPI_REG_CCR = SPI_REG_CCR & ~0x8000;    //disable clock
    SPI_REG_CDR = 0x0363;                    //clk=115200 hz
    SPI_REG_CCR = SPI_REG_CCR | 0x8000;    //enable clock
    SPI_REG_DCR1 = 0x0000;
    SPI_REG_DCR2 = 0x0000;
    for(i=0; i<0xFFF; i++) { }
}
 // und senden der Daten
void spi_tx(Int16 value){

  unsigned short i;

    //8 bit write
    SPI_REG_CMD1 = 0x0000;         //1 character
    SPI_REG_DAT2 = value << 8;
    SPI_REG_DAT1 = 0x0000;
    SPI_REG_CMD2 = 0x003A;         //CS0, 8 bits per character, write
    i=0;
    while(SPI_REG_STAT1 & 0x0002 == 0) { if(i++ == 0xFFFF) {break;} } 
//wait for CC=1
    i=0;
    while(SPI_REG_STAT1 & 0x0001 != 0) { if(i++ == 0xFFFF) {break;} } 
//wait for BUSY=0
}

von SiO2 (Gast)


Lesenswert?

Hmm, Ich habe gerade festgestellt,  daß DATA ein Signal ausgibt, aber 
CLK und CS nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.