Exemplo n.º 1
0
    private static IDriveTextDisplays GetMcp8Driver()
    {
        II2CBus     bus         = new SpotI2CBus();
        MCP23017    mcp         = new MCP23017(bus, 0x021);
        DisplayPins displayPins = new DisplayPins((Pin)21, (Pin)22, (Pin)23, (Pin)24, (Pin)25, (Pin)26, (Pin)27, (Pin)28, (Pin)1, (Pin)3, Pin.None, (Pin)2);

        return(new Mcp23017TextDriver(mcp, displayPins));
    }
Exemplo n.º 2
0
        public void ShowCounter()
        {
            _counterCancelationTokenSource = new CancellationTokenSource();
            Task.Run(() =>
            {
                DisplayControlPins[0].IsOn = true;
                DisplayControlPins[1].IsOn = false;
                int[] digitNumbers;
                var sw       = new Stopwatch();
                var milissec = 5;
                while (!_counterCancelationTokenSource.Token.IsCancellationRequested)
                {
                    digitNumbers = _numbers[DisplayValue / 10];
                    DisplayPins.SwitchAll(false);
                    DisplayControlPins.Invert();
                    DisplayPins.Where((p, i) => digitNumbers.Contains(i)).SwitchAll(true);
                    sw.Restart();
                    while (sw.ElapsedMilliseconds < milissec)
                    {
                        ;
                    }

                    digitNumbers = _numbers[DisplayValue % 10];
                    DisplayPins.SwitchAll(false);
                    DisplayControlPins.Invert();
                    DisplayPins.Where((p, i) => digitNumbers.Contains(i)).SwitchAll(true);
                    sw.Restart();
                    while (sw.ElapsedMilliseconds < milissec)
                    {
                        ;
                    }
                }
                sw.Stop();
                DisplayPins.SwitchAll(false);
                DisplayControlPins.SwitchAll(true);
            }, _counterCancelationTokenSource.Token);
        }
Exemplo n.º 3
0
 protected RegisterBasedCharacterDisplayDriver(DisplayPins displayPins)
     : base(displayPins.TransferMode)
 {
     _displayPins = displayPins;
 }