Raspberry PI使用C#发出蜂鸣声

时间:2020-06-22 13:30:58

标签: c# visual-studio automation raspberry-pi sensors

因此,我正在尝试制作一个微型“安全系统”,以检查是否没有打开门。基本上,我有一个带有传感器的Raspberry pi,它可以检查门是否打开,如果我把它打开,蜂鸣器应该发出哔哔声,告诉我我把它保持打开状态。 我看到了SystemSounds.Beep.Play();从System.Media库中获取,但是如何将其放在我的doorIsOpen方法中?

readonly GpioPin sensDoor = GpioController.GetDefault().OpenPin(6); // Pin door
private Task checkDoor() {
    while (true){ 
        if(sensDoor.Read() == GpioPinValue.High) {
            faglDoor = true;
        }
        else {
            faglDoor = false;
        }
        Task.Delay(-1).Wait(1000);
    }
}

private async Task doorIsOpen()
{
    while (true)
    {
        while (faglDoor)
        {
            
        }
    }
    
}

1 个答案:

答案 0 :(得分:0)

您可以尝试以下类似操作,每次检查之间有5秒的延迟。

readonly GpioPin sensDoor = GpioController.GetDefault().OpenPin(6);
bool IsDoorOpen => sensDoor.Read() == GpioPinValue.High;

private async Task SoundBuzzerIfDoorIsOpen() {
    while(true) {
        while(IsDoorOpen) {
            //Sound Buzzer!
        }
        await Task.Delay(5000);
    }
}