GPIO windows IOT Core的可变电压

Posted

技术标签:

【中文标题】GPIO windows IOT Core的可变电压【英文标题】:Variable voltage for GPIO windows IOT Core 【发布时间】:2015-06-18 16:19:25 【问题描述】:

我有一个 Windows IOT Core 应用程序,它将输出写入 GPIO 引脚,我需要在三个引脚上设置可变电压以将 RGB 灯设置为任何颜色。

问题是我只能将引脚设置为高值或低值,两者之间没有任何关系:

private void SetupLeds()

    var gpio = GpioController.GetDefault();

    _redLED = gpio.OpenPin(18);
    _redLED.SetDriveMode(GpioPinDriveMode.Output);

    _greenLED = gpio.OpenPin(23);
    _greenLED.SetDriveMode(GpioPinDriveMode.Output);

    _blueLED = gpio.OpenPin(24);
    _blueLED.SetDriveMode(GpioPinDriveMode.Output);

    

public void Yellow()

    _redLED.Write(GpioPinValue.High);
    _greenLED.Write(GpioPinValue.High);
    _blueLED.Write(GpioPinValue.Low);


public void Red()

    _redLED.Write(GpioPinValue.High);
    _greenLED.Write(GpioPinValue.Low);
    _blueLED.Write(GpioPinValue.Low);

如果有人能指出我正确的方向,以便能够在引脚上写入 1 到 0 之间的值,我将不胜感激。

也许这个版本的 Core IOT 甚至不可能。

更新

感谢 leppie 的评论,我现在意识到我当然需要使用 PWM。

那么现在的问题是有人知道如何在 Windows Core IOT 上使用 PWM 吗?

【问题讨论】:

这就是数字端口的作用,1 和 0,开或关。对于 LED,您可以使用 PWM,或者如果可用,可以使用 DAC。 啊当然face palms需要使用PWM!!! 【参考方案1】:

目前不支持 PWM。我期待它会在以后的版本中出现。与此同时,您可以将您的 RPi2 连接到 Arduino。您可以访问 Arduino 上的 PWM。见this sample in the file ControlPage.xaml.cs。

马克·拉德伯恩 [MSFT]

【讨论】:

自最终 IoT 核心版本以来有什么消息吗?我觉得这很令人失望,不是每个人都从 LED 开始吗? :(【参考方案2】:

我们在iot-devices project 中添加了对软件 PWM 和硬件 PWM 的 C# 支持。您也可以咨询this C++ example 使用 Windows IoT Core 和 PWM 驱动步进电机。

【讨论】:

以上是关于GPIO windows IOT Core的可变电压的主要内容,如果未能解决你的问题,请参考以下文章

[IOT] - Raspberry Pi 3B + Windows 10 IOT Core + .Net Core Web 部署

树莓派3 Windows 10 IoT Core

UWP Windows IoT Core 流路由

在 Windows IOT Core 上提升 C++

玩转树莓派——安装 Windows 10 IoT Core

在 Windows IOT Core 中传达驱动程序设置更改的推荐方式