Archiv verlassen und diese Seite im Standarddesign anzeigen : 8 BIT Struktur, aber SPI Befehle 16 BIT lang
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
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ß
cool-robotix
14.04.2008, 15:48
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.
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.
cool-robotix
23.04.2008, 20:42
Ja genau. Am besten selbst eine SPI Routine schreiben, das man dann auch beliebig auf d. Hardware optimieren kann.
BigWumpus
23.04.2008, 23:38
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 !
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.