Exemple #1
0
        private void fmMain_Load(object sender, EventArgs e)
        {
            img1 = Image.FromFile(Application.StartupPath + "\\img\\1.bmp");
            img2 = Image.FromFile(Application.StartupPath + "\\img\\2.bmp");

            //TestSCL();

            //Ping p = new Ping();

            //PingReply r = p.Send("101.0.0.1");
            //if (r.Status == IPStatus.TimedOut)
            //{
            //    return;
            //}
            //p.Dispose();


            InitCanvas();

            //LedHelper.Init(2);
            //LedHelper.AddLed("192.168.16.98", 1);

            LedHelper.Init(1);

            //LedHelper.ReConnectTime = 5;
            //LedHelper.PingTime = 10;
            //LedHelper.LocPort = 8500;

            LedHelper.AddLed("192.168.16.99", 0, 128, 96);

            LedHelper.Open();

            thread = new TLoopThread(OnThread);
            thread.Start();
        }
Exemple #2
0
        private void fmMain_FormClosed(object sender, FormClosedEventArgs e)
        {
            thread.WaitForStop();
            LedHelper.Close();

            img1.Dispose();
            img2.Dispose();
        }
Exemple #3
0
        void OnThread()
        {
            DateTime n = DateTime.Now;

            TimeSpan t = new TimeSpan(n.Ticks - last.Ticks);

            delta = t.TotalMilliseconds;
            last  = n;

            txTime.Text = n.ToString("yyyy-MM-dd HH:mm:ss");

            cav.Refresh();

            LedHelper.AssignCanvas(0, cav);

            LedHelper.SendToScreen();
            Thread.Sleep(500);
        }
Exemple #4
0
        private void tmDisp_Tick(object sender, EventArgs e)
        {
            if (tbMain.SelectedTab != tbDisp)
            {
                return;
            }
            Canvas cav = dsp.GetPage();

            cav.Refresh();

            Graphics g = Graphics.FromImage(pic.Image);

            g.DrawImage(cav.Img, 0, 0, pic.Image.Width, pic.Image.Height);

            g.Dispose();

            pic.Refresh();

            LedHelper.AssignCanvas(0, cav);

            //LedHelper.SendToScreen();
        }
Exemple #5
0
        private void tbDisp_Enter(object sender, EventArgs e)
        {
            dsp = new XMLDisplay(edXml.Text);
            //dsp = XMLDisplay.FromFile(....);
            dsp.BeforeRender = BeforeRender;
            dsp.AfterRender  = AfterRender;

            if (pic.Image != null)
            {
                pic.Image.Dispose();
            }

            int s = 2;

            pic.Image = new Bitmap(dsp.Size.Width * s, dsp.Size.Height * s);

            LedHelper.Init(3);
            LedHelper.AddLed("192.168.16.97", 1, dsp.Size.Width, dsp.Size.Height);
            LedHelper.Open();

            tmDisp.Enabled = true;
        }
Exemple #6
0
 private void tbDisp_Leave(object sender, EventArgs e)
 {
     tmDisp.Enabled = false;
     LedHelper.Close();
 }
Exemple #7
0
        public void Execute(string[] args)
        {
            var ledCount = args.GetInt("--led");

            if (ledCount == null)
            {
                ledCount = ConsoleHelper.ReadInt("LED count > ");
            }

            var stripType = args.GetStripType();

            if (stripType == null)
            {
                stripType = ConsoleHelper.ReadWhileNull("Strip type > ", LedHelper.GetStripTypeFromName);
            }

            var pin = args.GetPin();

            if (pin == null)
            {
                pin = ConsoleHelper.ReadWhileNull("Pin > ", (read) =>
                {
                    if (int.TryParse(read, out var pin))
                    {
                        return(LedHelper.GetPinFromNumber(pin));
                    }

                    return(null);
                });
            }

            var controllerType = args.GetControllerType();

            if (controllerType == null)
            {
                controllerType = ConsoleHelper.ReadWhileNull("Controller type > ", LedHelper.GetControllerTypeFromName);
            }

            var settings   = Settings.CreateDefaultSettings();
            var controller = settings.AddController(ledCount.Value, pin.Value, stripType.Value, controllerType.Value);

            Console.WriteLine($"LED {ledCount}, Pin {pin}, Strip {stripType}, Controller {controllerType}");

            var device = new WS281x(settings);

            Device     = device;
            Controller = controller;

            Color color = Color.Black;

            RenderColor(device, controller, Color.Black);

            Shell.Run("LED", (arguments) =>
            {
                if (arguments.Length == 0)
                {
                    return;
                }

                switch (arguments[0])
                {
                case "red":
                    color = Color.Red;
                    break;

                case "green":
                    color = Color.Green;
                    break;

                case "blue":
                    color = Color.Blue;
                    break;

                case "export":
                    ExportConfig(arguments);
                    break;

                default:
                    Console.WriteLine("Unknown command");
                    break;
                }

                RenderColor(device, controller, color);
            });

            RenderColor(device, controller, Color.Black);
        }