public void GetEigenFrequenz() { // int count = 1000000; // DateTime start = DateTime.Now; // for(int i = 0; i < count; i++) // da.SetVoltage(0); // // DateTime end = DateTime.Now; // TimeSpan dauer = new TimeSpan (end.Ticks - start.Ticks); // Console.WriteLine (count + " mal set voltage dauert " + dauer.TotalMilliseconds + "ms."); int counter = 0; //.net warmup for (counter = 0; counter < 10000; counter++) { da.SetVoltage(0); } DateTime end = DateTime.Now; //Die Zeit zum Allokieren des end DateTimes in der Schleife verfälscht bis 4 sec erheblich!!! DateTime start = DateTime.Now; for (counter = 0; counter < BitTiefe * 10; counter++) { da.SetVoltage(WaveTable[counter % (WaveTableLength)]); } end = DateTime.Now; TimeSpan dauer = new TimeSpan(end.Ticks - start.Ticks); eigenfrequenz = 5000 / (float)dauer.TotalMilliseconds; //10 Durchläufe sind 5 Schwingungen, 1000ms = 1 sec Console.WriteLine(eigenfrequenz); }
private static void AD_8562_Parallel() { WirinPiWrapper wiringPiLib = new WirinPiWrapper(); wiringPiLib.WiringPiSetupGpio(); DA_8562FPZ_Parallel da = new DA_8562FPZ_Parallel(wiringPiLib); while (true) { da.SetVoltage(0); Thread.Sleep(50); da.SetVoltage(2047); Thread.Sleep(50); da.SetVoltage(4095); Thread.Sleep(50); } }