void newSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs <double> e) { var slider = (Slider)sender; var panel = (DockPanel)slider.Parent; foreach (var cntrl in panel.Children) { if ((cntrl.GetType() == typeof(Label))) { var label = (Label)cntrl; if ((string)label.Tag == "value") { label.Content = Math.Round(e.NewValue).ToString(); } } } BiasesInterface.ModifyBias((BiasesInterface.BiasName)(Enum.Parse(typeof(BiasesInterface.BiasName), slider.Name)), (int)Math.Floor(e.NewValue)); BiasesInterface.programDACs(); }
public static void initATIS(string filename) { // detect Opal Kelly and Program dev = new okCFrontPanel(); int num_boards = 0; bool device_opened = false; lock (dev) { while (device_opened == false) { num_boards = dev.GetDeviceCount(); for (int i = 0; i < num_boards; i++) { if (dev.GetDeviceListModel(i) == okCFrontPanel.BoardModel.brdXEM6010LX150) { dev.OpenBySerial(dev.GetDeviceListSerial(i)); device_opened = true; } } } /* * while (dev.OpenBySerial("") != okCFrontPanel.ErrorCode.NoError) * { * * }//wait for Opal Kelly to be plugged in */ dev.LoadDefaultPLLConfiguration(); dev.ConfigureFPGA(filename); } // Initialize the Biases BiasesInterface.initBiases(); }
private void Window_Loaded(object sender, RoutedEventArgs e) { #region "color definitions" //The 12 S1 colours List <System.Windows.Media.Color> colors = new List <System.Windows.Media.Color>(); colors.Add(Color.FromRgb(0, 0, 0)); colors.Add(Color.FromRgb(255, 0, 0)); colors.Add(Color.FromRgb(255, 128, 0)); colors.Add(Color.FromRgb(255, 255, 0)); colors.Add(Color.FromRgb(128, 255, 0)); colors.Add(Color.FromRgb(0, 255, 0)); colors.Add(Color.FromRgb(0, 255, 128)); colors.Add(Color.FromRgb(0, 255, 255)); colors.Add(Color.FromRgb(0, 128, 255)); colors.Add(Color.FromRgb(0, 0, 255)); colors.Add(Color.FromRgb(128, 0, 255)); colors.Add(Color.FromRgb(255, 0, 255)); colors.Add(Color.FromRgb(128, 0, 128)); BitmapPalette myPalette = new BitmapPalette(colors); //The 36 S2 colours List <System.Windows.Media.Color> fullcolors = new List <System.Windows.Media.Color>(); fullcolors.Add(Color.FromRgb(0, 0, 0)); fullcolors.Add(Color.FromRgb(255, 42, 0)); fullcolors.Add(Color.FromRgb(255, 85, 0)); fullcolors.Add(Color.FromRgb(255, 128, 0)); fullcolors.Add(Color.FromRgb(255, 170, 0)); fullcolors.Add(Color.FromRgb(255, 213, 0)); fullcolors.Add(Color.FromRgb(255, 255, 0)); fullcolors.Add(Color.FromRgb(212, 255, 0)); fullcolors.Add(Color.FromRgb(170, 255, 0)); fullcolors.Add(Color.FromRgb(128, 255, 0)); fullcolors.Add(Color.FromRgb(85, 255, 0)); fullcolors.Add(Color.FromRgb(42, 255, 0)); fullcolors.Add(Color.FromRgb(0, 255, 0)); fullcolors.Add(Color.FromRgb(0, 255, 42)); fullcolors.Add(Color.FromRgb(0, 255, 85)); fullcolors.Add(Color.FromRgb(0, 255, 128)); fullcolors.Add(Color.FromRgb(0, 255, 170)); fullcolors.Add(Color.FromRgb(0, 255, 212)); fullcolors.Add(Color.FromRgb(0, 255, 255)); fullcolors.Add(Color.FromRgb(0, 212, 255)); fullcolors.Add(Color.FromRgb(0, 170, 255)); fullcolors.Add(Color.FromRgb(0, 128, 255)); fullcolors.Add(Color.FromRgb(0, 85, 255)); fullcolors.Add(Color.FromRgb(0, 43, 255)); fullcolors.Add(Color.FromRgb(0, 0, 255)); fullcolors.Add(Color.FromRgb(42, 0, 255)); fullcolors.Add(Color.FromRgb(85, 0, 255)); fullcolors.Add(Color.FromRgb(128, 0, 255)); fullcolors.Add(Color.FromRgb(170, 0, 255)); fullcolors.Add(Color.FromRgb(212, 0, 255)); fullcolors.Add(Color.FromRgb(255, 0, 255)); fullcolors.Add(Color.FromRgb(255, 0, 212)); fullcolors.Add(Color.FromRgb(255, 0, 170)); fullcolors.Add(Color.FromRgb(128, 0, 128)); fullcolors.Add(Color.FromRgb(128, 0, 85)); fullcolors.Add(Color.FromRgb(128, 0, 43)); BitmapPalette myfullPalette = new BitmapPalette(fullcolors); //The 3 TD "colours" List <System.Windows.Media.Color> colorsBW = new List <System.Windows.Media.Color>(); colorsBW.Add(Color.FromRgb(128, 128, 128)); colorsBW.Add(Color.FromRgb(0, 0, 0)); colorsBW.Add(Color.FromRgb(255, 255, 255)); BitmapPalette myBWPalette = new BitmapPalette(colorsBW); #endregion _TDbackBuffer = new WriteableBitmap(304, 240, 96, 96, PixelFormats.Indexed8, myBWPalette); _APSbackBuffer = new WriteableBitmap(304, 240, 96, 96, PixelFormats.Gray8, null); ATISinterface.initATIS("ramtest.bit"); BiasesInterface.initBiases(); ATISinterface.setWire(ATISinterface.ControlSignals.Enable_AER_TD); ATISinterface.setWire(ATISinterface.ControlSignals.Enable_AER_APS); ATISinterface.resetFifos(); /* * //init HMAX * ATIS.setHMAXThreshold(ATISinterface.HMAXlayer.S1, 150); * ATIS.setHMAXDecay(ATISinterface.HMAXlayer.S1, 1); * ATIS.setHMAXThreshold(ATISinterface.HMAXlayer.C1, 5); //actually a refractory period... * ATIS.setHMAXThreshold(ATISinterface.HMAXlayer.S2, 150); * ATIS.setHMAXDecay(ATISinterface.HMAXlayer.S2, 1); * * ATIS.programHMAXkernels(ATISinterface.HMAXlayer.S2, "S2Kernels.val"); * //ATIS.programHMAXkernels(ATISinterface.HMAXlayer.S1, "S1Kernels.val"); */ ATISinterface.setWire(ATISinterface.ControlSignals.couple); AcquisitionThread(); }