【问题标题】:Windows 10 IoT Raspberry Pi 2: DHT22/AM2302Windows 10 物联网树莓派 2:DHT22/AM2302
【发布时间】:2015-05-06 16:23:10
【问题描述】:

我只是想开始体验 DHT22/AM2302(温湿度传感器),但我不知道如何初始化和获取它的数据……我尝试使用 GpioPin:

gpioController = GpioController.GetDefault();
if(gpioController == null)
{
    Debug.WriteLine("GpioController Initialization failed.");
    return;
}
sensorPin = gpioController.OpenPin(7); //Exception throws here
sensorPin.SetDriveMode(GpioPinDriveMode.Input);
Debug.WriteLine(sensorPin.Read());

但出现异常:“此操作所需的资源已禁用。”

之后,我查看了 unixoids 的库,发现:

https://github.com/technion/lol_dht22/blob/master/dht22.c

但我不知道如何在使用 Windows 10 的 VCSharp 中实现这一点,任何人有想法或经验吗?

非常感谢您!

更新:

我得到了提示,没有 GPIO-Pin 7,这是真的,所以我重新尝试了,但 GPIO-Output 似乎只是 HIGH 或 LOW ...所以我必须使用 I2C或者 SPI ...根据这个项目,我决定尝试使用 SPI:http://microsoft.hackster.io/windowsiot/temperature-sensor-sample 并向前迈出一步......现在的困难是将上面链接的 C-Library 转换为 C-Sharp-SDK接收正确的数据...

private async void InitSPI()
{
    try
    {
        var settings = new SpiConnectionSettings(SPI_CHIP_SELECT_LINE);
        settings.ClockFrequency = 500000;
        settings.Mode = SpiMode.Mode0;

        string spiAqs = SpiDevice.GetDeviceSelector(SPI_CONTROLLER_NAME);
        var deviceInfo = await DeviceInformation.FindAllAsync(spiAqs);
        SpiDisplay = await SpiDevice.FromIdAsync(deviceInfo[0].Id, settings);
    }
    catch(Exception ex)
    {
        Debug.WriteLine("SPI Initialization failed: " + ex.Message);
    }
}

需要说明的是,这不太好用:它只在启动树莓派 pi2 时工作一次,然后启动/远程调试应用程序,但在退出应用程序并重新启动它们后,SPI 初始化失败。

现在我正在从 pin 读取数据,并将在未来的更新中显示一些代码。仍然欢迎任何 cmets、答案和/或建议。

【问题讨论】:

    标签: iot raspberry-pi2 windows-10


    【解决方案1】:

    DHT22 需要非常精确的时序。尽管 Raspberry PI/Windows 10 IoT 内核非常快,但由于它是一个操作系统,除非您编写某种低级驱动程序(不是 C#),否则您将无法生成通信所需的时序带 DHT22。

    我所做的是使用便宜的 Arduino Mini Pro 大约 5 美元,其唯一目的是在微控制器和 Raspberry Pi 之间生成和发送正确的时序,然后在 Arduino Mini Pro(I2C、 Serial) 从 Arduino 中提取数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-03
      • 2019-05-19
      相关资源
      最近更新 更多