www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR atmega8 voice chip ISD


Autor: Walizer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

möchte einen ISD IC mit einem Atmega8 ansteuern,
habe den SPI Port schon verbunden, nun das einzige was mir noch nicht 
ganz klar ist und zwar kann ich als Befehl z.B. wie es im Datenblatt 
steht POWERUP schicken oder wie geht das kapier das im Datenblatt nicht 
ganz.
http://www.csd-electronics.de/data/pdf/ISD4003.pdf

Autor: Walizer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
so hab ich jetzt die Rec Funktion in C geschrieben:

    // Record
    SPI_MasterTransmit("POWERUP");
    _delay_ms(31.25); // Power Up Delay
    SPI_MasterTransmit("POWERUP");
    _delay_ms(62.5); // Power Up Delay
    SPI_MasterTransmit("REC");
    _delay_ms(62.5);

    waitsek(10);
    SPI_MasterTransmit("STOP");

Autor: Frank L. (hermastersvoice)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie kommst du darauf dass das Ding Klartext versteht? Ich würd mal auf 
Steuer- und Adressbits tippen die die Steuerung machen. Man schickt ja 
auch einem Display nicht den Text "Init" um es zu initialisieren sondern 
setzt die richtigen Bits.

bye

Frank

Autor: Walizer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hab ich mir auch schon gedacht, also müsste das dann so aussehen: 
SPI_MasterTransmit("00100"); für Powerup oder?

Autor: Dummy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>SPI_MasterTransmit("00100"); für Powerup oder?

Neeee, eher SPI_MasterTransmit(0b00100);

Autor: Walizer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hab es jetzt so gemacht leider spielt er immer noch nix,

    // Record
    SPI_MasterTransmit(0b00100); // PowerUP
    _delay_ms(31.25); // Power Up Delay
    SPI_MasterTransmit(0b00100); // PowerUP
    _delay_ms(62.5); // Power Up Delay
    SPI_MasterTransmit(0b01101); // Rec
    _delay_ms(62.5);

    waitsek(10);
    SPI_MasterTransmit(0b01100); // Stop

    // Play
    SPI_MasterTransmit(0b00100); // PowerUp
    _delay_ms(31.25);
    SPI_MasterTransmit(0b01111); // Play
    _delay_ms(62.5);

jemand ne idee was falsch is?

Autor: Christian U. (z0m3ie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie wärs, wenn du mal das Datenblatt liest ?
Da steht eindeutig drin das ein Opcode aus 11 bit besteht.
Es reicht also nicht wenn du die 5 Controll bits sendest.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie sieht "SPI_MasterTransmit" aus, und wie wird die SPI Schnittstelle 
initialisiert ?

Autor: Christian U. (z0m3ie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Spielt doch überhaupt keine rolle Das interface arbeitet mit 11 bit 
words das ist mit hardware spi vom avr nicht drin. entweder er nimmt die 
uart oder macht software spi.

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.