LabVIEWForum.de - SPI Signal mittels LabVIEW

LabVIEWForum.de

Normale Version: SPI Signal mittels LabVIEW
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Hast Du ein 16Bit-Port?? O
Stell mal die Zahl in U8 um.

Gruß Markus
' schrieb:Hast Du ein 16Bit-Port?? O
Stell mal die Zahl in U8 um.

Gruß Markus

Ich will eine 16bit lange Zahl einlesen, die ich in HEX eintippe. Sprich 0x0 - 0xFFFF. Wenn ich da jetzt U8 nehme, hab ich dann nicht zuwenig "Platz"? Hab es jetzt testweise auf U8 umgestellt, es gibt aber trotzdem nichts aus.O(Und ich kann nur mehr bis FF eingeben. Scheinbar brauche ich doch 16bit Input?

LG Chris
Sorry, ich sehe gerade, dass Du das nicht am Port ausgeben willst, sondern in einer einzelnen Line. Da kannst Du es auch auf U16 lassen. Dann musst Du aber Dein Array indizieren und nicht als Schieberegister anschließen. Dann wird nämlich ein Wert nach dem anderen ausgegeben. Allerdings musst Du dazu auch Dein DAQmx Write auf "Digital Bool - One Line one point" umschreiben (und eine Zeitverzögerung in der Whileschleife angeben).

Gruß Markus
Es gibt was aus!!! :dance:Haha, man freut sich schon über die kleinsten Dinge!:DWerd mal ein wenig damit spielen.
Ich habe es nun umgebaut, und es gibt mir den Stream aus wie es soll. Heureka. Ein kleiner Schritt für die Menschheit, aber ein großer für mich. ;-)

Was mache ich, wenn ich möchte dass das Signal wiederholt wird? Sprich Ausgabe, Pause, Ausgabe, Pause? Ich dachte mit der Whileschleife gibt er es immer wieder aus, er tut es aber im Endeffekt nur ein einziges Mal. Mir wäre auch recht wenn er es mal dauerhaft ausgibt, damit ich mir es mal am Oszi genauer anschauen kann. Das wird noch ein weiter Weg glaub ich bis das Ding mal tut was ich will.
Es tut mir leid dass ich immer neu posten muss, aber das Editieren von älteren Beiträgen ist leider nicht möglich.

Ich habe mein VI nun mit einer Write und Read Funktion ausgestattet, siehe Bild!

Das funktioniert auch alles, aber jetzt wird es knifflig, da ich Takt und Chip-Select brauche bzw. das VI erweitern möchte. Sprich ich muss wissen wenn z.B. 0000000000000001 übertragen wird, dass dies einzelne Nullen am Anfang sind, und ich muss jede Stelle dieses Datenstreams dedektieren können. Ich habe es derzeit mit einer LED ausgegeben, will mir aber den Wert angeben lassen. Sprich ich will was rausgeht auch wieder einlesen können. Ich habe mir gedacht dies sequentiell in ein Array zu schreiben, aber ich denke er kann die einzelnen Nullen (FALSE) ohne Taktrate nicht erkennen oder?

Danke für jeden Kommentar!Smile

LG Chris
So, alles über den Haufen geworfen.

Ich muss vom CLK ausgehen welchen ich selbst generiere, sprich dieses Timing via PC wäre mein Ende. Hab daher jetzt vom Example her angefangen umzubauen, aber kriege dauernd die selbe Fehlermeldung:

Irgendwer eine Idee woran das liegen könnte? Die Fehlermeldung ist labviewtypisch kryptisch bzw. unbrauchbar. Schön dass der Buffer 0 ist, und besser zwischen 2 und xxxxx.... liegen sollte. Fast so nützlich wie ein Bluescreen! Big Grin

Lv09_img2
Stell' das U16 mal auf U8 um. Du willst in Deinem Bsp. 16 Werte an 1 Port (= 1 Byte) rausschicken.
Oder Du schickst einen Teil (die ersten 8 Bit) auf den einen Port und die letzten 8 Bit auf einen weiteren Port.

Gruß Markus
So, habs in der Zwischenzeit geändert und mein Problem "umschifft", trotzdem danke für den Hinweis. Ich muss jetzt "nur" mehr die ChipSelect-Leitung (CS) genererieren und mit der Taktfrequenz (SCLK) abstimmen und irgendwie das Ganze zum laufen bringen.

Aufwendig ist ein Hilfsausdruck für das ganze, vielleicht bin ich aber einfach nur unfähig. Mellow

LABVIEW 2009!
Achja, ich würde mir gerne die Sampleclock ausgeben lassen: Geht das? Weil dann würde ich mir die CLK sparen.

Danke falls das wer weiss, in der Hilfe und im Netz findet man leider wenig.

Gruß Chris

Lv09_img2
Seiten: 1 2 3
Referenz-URLs