Example #1
0
        private async Task EnsureInitializedAsync()
        {
            if (isInitialized)
            {
                return;
            }
            var provider = new PCA9685Provider(this._i2caddr);

            this._pwm = (await Windows.Devices.Pwm.PwmController.GetControllersAsync(provider)).FirstOrDefault();
            if (this._frequency > this._pwm.MaxFrequency)
            {
                this._frequency = this._pwm.MaxFrequency;
            }
            this._pwm.SetDesiredFrequency(this._frequency);
            isInitialized = true;
        }
Example #2
0
 private void EnsureInitialized()
 {
     Task.Run(async() =>
     {
         if (isInitialized)
         {
             return;
         }
         var provider    = new PCA9685Provider(this._i2caddr);
         var controllers = await Windows.Devices.Pwm.PwmController.GetControllersAsync(provider);
         this._pwm       = controllers[0];
         if (this._frequency > this._pwm.MaxFrequency)
         {
             this._frequency = this._pwm.MaxFrequency;
         }
         this._pwm.SetDesiredFrequency(this._frequency);
         isInitialized = true;
     }).Wait();
 }