private static void LoadLCDSettings() { // Grab the data _lcdEwrSettings = ExtendedWeakReference.RecoverOrCreate(typeof(LcdEwr), 0, ExtendedWeakReference.c_SurvivePowerdown); _lcdEwrSettings.Priority = (Int32)ExtendedWeakReference.PriorityLevel.Critical; _lcd = (LCDSettings)_lcdEwrSettings.Target; }
public ILI9341Bit18(LCDSettings lcdSettings, GpioPin chipSelectPin = null, GpioPin dataCommandPin = null, GpioPin resetPin = null, GpioPin backlightPin = null, int spiClockFrequency = 18 * 1000 * 1000, SpiMode spiMode = SpiMode.Mode0, string spiBus = "SPI1") : base(lcdSettings, chipSelectPin, dataCommandPin, resetPin, backlightPin, spiClockFrequency, spiMode, spiBus) { }
/// <summary> /// Save touch calibration to EWR /// </summary> /// <param name="calibrationPoints">Number of points used for calibration</param> /// <param name="calibrationSx">SX values of calibration</param> /// <param name="calibrationSy">SY values of calibration</param> /// <param name="calibrationCx">CX values of calibration</param> /// <param name="calibrationCy">CY values of calibration</param> /// <returns>Returns true if the calibration was successfully saved.</returns> public static bool SaveLCDCalibration(int calibrationPoints, short[] calibrationSx, short[] calibrationSy, short[] calibrationCx, short[] calibrationCy) { // Save calibration if (_lcd == null) { _lcd = new LCDSettings(ScreenCalibration.Restore, calibrationPoints, calibrationSx, calibrationSy, calibrationCx, calibrationCy); } else { _lcd.calibrateLCD = ScreenCalibration.Restore; _lcd.calibrationpoints = calibrationPoints; _lcd.calibrationSX = calibrationSx; _lcd.calibrationSY = calibrationSy; _lcd.calibrationCX = calibrationCx; _lcd.calibrationCY = calibrationCy; } _lcdEwrSettings.Target = _lcd; return(true); }