' schrieb:dann fangen wir mal an mit ein paar kleinen verbesserungsvorschlaegen (abgesehen vom programmierstil :-))
DMA Transfer: wird immer in U32 uebertragen, deshalb verwende JoinNumbers und vereine zwei I16 zu einem U32 Wert, dadurch minimierst du den overhead (siehe beispiel). Im Host.vi musst du dann natuerlich wieder das splitnumbers verwenden.
Warum du an der Stelle mit einem RT FIFO (zudem noch mit DBL anstatt mit UInteger) arbeitest wenn du keine on the fly uebertragung machst, versteh ich noch net ganz - deinem datenfluss zur folge machst du alles sequentiell, deshalb leg lieber ein array mit der groeße der zu erwartenden samples an und leg innerhalb der schleife ein "replace array subset".
Mit der von dir beschriebenen Fehlermeldung kann ich net unmittelbar viel anfangen, weil an dieser Stelle normalerweise nix sein darf/kann. Welche Version des RIO Treibers hast installiert? Kann es sein, dass du nicht zu 100% die gleiche Version am RIO und am Host installiert hast?!
so, ich hab das nun alles mal durch gesehen:
Ich weiss nicht, wie man die Daten im FPGA auf I16 umstellt, überhaupt kommen sie doch beim IO-Node schon als U32 raus .... den Punkt krieg ich also nicht hin..
Das mit dem FIFO hab ich so gemacht, weil Du es mir vor über einer Woche geraten hast. Dass das nicht unbedingt so programmiert werden muss, das hat mir ein Kollege schon gesagt, aber wie dann? Deine Beschreibung mit den Arrays versteh ich schon wieder nicht, ich weiss nicht, wie und wo ich die Arrays anlegen muss.
Bis bald!
Klaus
Klaus