Forum: Mikrocontroller und Digitale Elektronik Initialisierung VS1002 als Slave an ATMEGA8


von Norman M. (norman78)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe mir den MP3-Player hier aus dem Shop gekauft.
http://shop.embedded-projects.net/product_info.php?info=p33_MP3-Player-Projekt--MOD-MP3-.html

Der Plan ist, diesen Player als Slave von einem ATMEGA8 zu steuern.

Grundlagen von Elektrotechnik, Mikrocontroller und C programmierung sind 
vorhanden. Jedoch habe ich keinerlei Erfahrung mit der SPI 
Schnittstelle.

Es scheitert daran, dass sich das Gerät nichtmal einschaltet.
Mit Batterie und Jumper auf BAT funktioniert zumindest das Gerät, also 
kein defekt.

Im Anhang ist die Pinbelegung meiner SPI Schnittstelle.
Hier ist der C Code der nur das Gerät Initialisieren soll.
1
#include <avr/io.h>
2
#include <avr/wdt.h>
3
#include <util/delay.h>
4
5
#define led_on PORTD |= ((1 << 1))
6
#define led_off PORTD &= ~((1 << 1))
7
#define MP3RES_high PORTD |= ((1 << 7))
8
#define MP3RES_low PORTD &= ~((1 << 7))
9
10
11
int main (void)
12
{
13
  //INIT
14
    DDRB = 0b11101110;    //MISO & DREQ Eingang
15
    SPCR = 0b01010001;    //BIT7=0:IntAus
16
        //BIT6=1:SPI an
17
        //BIT5=0:IntAus
18
        //BIT4=1:Master
19
        //BIT3=0:SCK
20
        //BIT2=0:L/HFlanke
21
              //BIT1&2=01:AVRClock16
22
  DDRC = 0x00;      // Port C Eingang
23
  PORTC = 0xFF;      // Port C PullUp
24
  DDRD = 0xFF;      // Port D = Ausgang
25
  PORTD = 0x00;  
26
 //////////////////////////////////////////////// 
27
 //LED Test
28
  led_on;
29
  _delay_ms(100);
30
  led_off;
31
  
32
 //INIT VS1002 gem Kap 8.1 Seite 22 Datasheet
33
  _delay_ms(10);
34
  MP3RES_high;  
35
  while (!(PINB & (1 << 0))){
36
  }
37
  led_on;
38
  
39
  do
40
  {
41
    
42
  
43
  
44
45
  }
46
  while (1);
47
  return 0;
48
}

Es wäre schön, wenn sich jemand meldet der Erfahrung mit der SPI
Schnitstelle hat.

Gruß
Norman

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.