static void TestRegOperation() { UInt32 myInt = 0; var a = FpgaOp.RegWrite(0, 94); var b = FpgaOp.RegRead(ref myInt, 0); uint[] dataIn = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; uint[] dataOut = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; var c = FpgaOp.RegArrayWrite(dataIn, 0x100, 10); var d = FpgaOp.RegArrayRead(ref dataOut, 0x100, 10); }
public static int RegArrayRead(ref UInt32[] data, UInt64 address, UInt32 length) { data = new UInt32[length]; IntPtr pd = Marshal.AllocHGlobal((int)(sizeof(int) * length)); IntPtr pv = pd; var ret = FpgaOp.RegArrayRead(pd, address, length); int[] temp = (int[])(object)data; Marshal.Copy(pd, temp, 0, (int)length); Marshal.FreeHGlobal(pv); return(ret); }