-
        

Ergebnis 1 bis 6 von 6

Thema: 8 BIT Struktur, aber SPI Befehle 16 BIT lang

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.06.2006
    Beiträge
    473

    8 BIT Struktur, aber SPI Befehle 16 BIT lang

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo zusammen.

    Wie sollen für ein Projekt einen D/A Wandler nehmen. In dessen Datenblatt steht, dass seine Befehle 16 Bit lang sind. Der PIC 16F818 ist ja ein 8 BIT gerät. Für den SSC Compiler gibt es den Befehl read_spi und write_spi. Nur wie funktioniert das jetzt mit den nötigen 16 BIT?

    Danke

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    19.11.2007
    Alter
    33
    Beiträge
    140
    Servus,

    also da Lobe ich mir immer wieder Assembler. Ab besten schaust du mal ins Datenblatt von dem PIC und dem D/A Wandler. Oder gibst an, welchen DAW du benutzt, dann schaue ich selber.

    An sich spricht nichts dagegen zweimal nacheinander 8 Bit zu senden. Also: write, read, write, read....
    Gruß

  3. #3
    Zitat Zitat von Enrock
    An sich spricht nichts dagegen zweimal nacheinander 8 Bit zu senden. Also: write, read, write, read....
    Gruß
    Wenn dabei d. CS-Leitung getoggelt wird, könnte es problematisch werden.

    Am besten selbst eine Routine fürs SPI schreiben, ist ja nicht schwer.

    Ablaufplan etwa so:

    1.) CS auf low
    2.) MOSI setzen
    3.) CLK low
    4.) MISO einlesen
    5.) CLK high
    6.) bei Bedarf zurück auf 2
    7.) CS auf high

    Wartezeiten habe ich mal draussen gelassen. In C ist sowas in 15 Minuten geschrieben. Im Datenblatt des ICs sollten zur Timing etc. die erforderlichen Angaben stehen.

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.06.2006
    Beiträge
    473
    Also der Witz ist, dass bei write_spi die cs Leitung eben nicht getoggelt wird. Das muss man selber per Hand machen. Und so kann man dann auch die Befehlslänge bestimmen.

  5. #5
    Ja genau. Am besten selbst eine SPI Routine schreiben, das man dann auch beliebig auf d. Hardware optimieren kann.

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    09.07.2005
    Ort
    Hangover
    Alter
    51
    Beiträge
    45
    SPI ist doch eher was für "Einfache".
    Auf einem Port wird das Datenbit rausgeschoben und der andere Port liefert einen Takt. Wenn man unbedingt C-Befehle verwenden will, so läßt man 2 Bytes herausschieben. Das merkt Niemand.
    Sieh Dir aber die CS-Ansteuerung an !

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •