예제 #1
0
        public Ili9488(IIODevice device, ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin,
                       uint width = 320, uint height = 480, DisplayColorMode displayColorMode = DisplayColorMode.Format12bppRgb444)
            : base(device, spiBus, chipSelectPin, dcPin, resetPin, width, height, displayColorMode)
        {
            Initialize();

            SetRotation(Rotation.Normal);
        }
예제 #2
0
 public override bool IsColorModeSupported(DisplayColorMode mode)
 {
     if (mode == DisplayColorMode.Format16bppRgb565)
     {
         return(true);
     }
     return(false);
 }
예제 #3
0
 public virtual bool IsColorModeSupported(DisplayColorMode mode)
 {
     if (mode == DisplayColorMode.Format12bppRgb444 ||
         mode == DisplayColorMode.Format16bppRgb565)
     {
         return(true);
     }
     return(false);
 }
예제 #4
0
        public St7735(IIODevice device, ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin,
                      uint width, uint height,
                      DisplayType displayType = DisplayType.ST7735R, DisplayColorMode displayColorMode = DisplayColorMode.Format12bppRgb444)
            : base(device, spiBus, chipSelectPin, dcPin, resetPin, width, height, displayColorMode)
        {
            this.displayType = displayType;

            Initialize();
        }
예제 #5
0
        public void SetColorMode(DisplayColorMode mode)
        {
            if (IsColorModeSupported(mode) == false)
            {
                throw new ArgumentException($"Mode {mode} not supported");
            }

            if (mode == DisplayColorMode.Format16bppRgb565)
            {
                spiBuffer  = new byte[width * height * sizeof(ushort)];
                spiReceive = new byte[width * height * sizeof(ushort)];
            }
            else //Rgb444
            {
                spiBuffer  = new byte[width * height * 3 / 2];
                spiReceive = new byte[width * height * 3 / 2];
            }
            colorMode = mode;
        }
예제 #6
0
        public TftSpiBase(IIODevice device, ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin,
                          int width, int height, DisplayColorMode mode = DisplayColorMode.Format16bppRgb565)
        {
            this.width  = width;
            this.height = height;

            spi = (SpiBus)spiBus;

            dataCommandPort = device.CreateDigitalOutputPort(dcPin, false);
            if (resetPin != null)
            {
                resetPort = device.CreateDigitalOutputPort(resetPin, true);
            }
            if (chipSelectPin != null)
            {
                chipSelectPort = device.CreateDigitalOutputPort(chipSelectPin, false);
            }

            spiDisplay = new SpiPeripheral(spiBus, chipSelectPort);

            SetColorMode(mode);
        }
예제 #7
0
 public S6D02A1(IIODevice device, ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin,
                uint width, uint height, DisplayColorMode displayColorMode = DisplayColorMode.Format12bppRgb444)
     : base(device, spiBus, chipSelectPin, dcPin, resetPin, width, height, displayColorMode)
 {
     Initialize();
 }
예제 #8
0
 public override bool IsColorModeSupported(DisplayColorMode mode)
 {
     return(mode == DisplayColorMode.Format16bppRgb565);
 }