mikrocontroller.net

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


Autor: Norman Möller (norman78)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe mir den MP3-Player hier aus dem Shop gekauft.
http://shop.embedded-projects.net/product_info.php...

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.
#include <avr/io.h>
#include <avr/wdt.h>
#include <util/delay.h>

#define led_on PORTD |= ((1 << 1))
#define led_off PORTD &= ~((1 << 1))
#define MP3RES_high PORTD |= ((1 << 7))
#define MP3RES_low PORTD &= ~((1 << 7))


int main (void)
{
  //INIT
    DDRB = 0b11101110;    //MISO & DREQ Eingang
    SPCR = 0b01010001;    //BIT7=0:IntAus
        //BIT6=1:SPI an
        //BIT5=0:IntAus
        //BIT4=1:Master
        //BIT3=0:SCK
        //BIT2=0:L/HFlanke
              //BIT1&2=01:AVRClock16
  DDRC = 0x00;      // Port C Eingang
  PORTC = 0xFF;      // Port C PullUp
  DDRD = 0xFF;      // Port D = Ausgang
  PORTD = 0x00;  
 //////////////////////////////////////////////// 
 //LED Test
  led_on;
  _delay_ms(100);
  led_off;
  
 //INIT VS1002 gem Kap 8.1 Seite 22 Datasheet
  _delay_ms(10);
  MP3RES_high;  
  while (!(PINB & (1 << 0))){
  }
  led_on;
  
  do
  {
    
  
  

  }
  while (1);
  return 0;
}

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

Gruß
Norman

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.