C# 如何使用Windows 10 IoT uwp c制作运行LED#

C# 如何使用Windows 10 IoT uwp c制作运行LED#,c#,uwp,windowsiot,C#,Uwp,Windowsiot,我在使用Raspberry PI 3 Windows IOT创建运行led时遇到问题,但随机led闪烁确实有效。 两者的代码几乎相同,只有不同的运行led由可变计数和随机led控制 是用随机生成器生成的 正在运行的led代码在此文本下方。我将只让第一个led亮起,其余led保持黑暗。有人能看到这个代码有什么问题吗? 但是随机闪烁led工作,它在运行led代码之后出现,并且两个代码几乎相同,但是运行led代码仍然不工作 运行LED代码 private void Timer_Tick(object

我在使用Raspberry PI 3 Windows IOT创建运行led时遇到问题,但随机led闪烁确实有效。 两者的代码几乎相同,只有不同的运行led由可变计数和随机led控制 是用随机生成器生成的

正在运行的led代码在此文本下方。我将只让第一个led亮起,其余led保持黑暗。有人能看到这个代码有什么问题吗? 但是随机闪烁led工作,它在运行led代码之后出现,并且两个代码几乎相同,但是运行led代码仍然不工作

运行LED代码

private void Timer_Tick(object sender, object e)
 {
 int ledCheck = 1, ledCheck2 = 1;
 int ledValue = 0, ledValue2 = 0; 
 //ledValue2 = 1;
 int checkValue = 0;


 if (ledCheck2 == 1)
 {
 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);
 ledCheck2 = 0;

 }
 ledValue2 = ledValue2 + 1;
 TextBlock1.Text = ledValue2.ToString();
 if (ledValue2 == 1)
 {
 pinValue1 = GpioPinValue.High;

 }

 if (ledValue2 == 2)
 {
 pinValue2 = GpioPinValue.High;

 }

 if (ledValue == 3)
 {
 pinValue3 = GpioPinValue.High;

 }

 if (ledValue2 == 4)
 {
 pinValue4 = GpioPinValue.High;

 }

 if (ledValue2 == 5)
 {
 pinValue5 = GpioPinValue.High;

 }

 if (ledValue2 == 6)
 {
 pinValue6 = GpioPinValue.High;

 }

 if (ledValue2 == 7)
 {
 pinValue7 = GpioPinValue.High;

 }
 if (pinValue1 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.High;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);

 }


 if (pinValue2 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.High;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);
 }

 if (pinValue3 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.High;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);

 }



 if (pinValue4 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.High;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);
 }



 if (pinValue5 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.High;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);

 }



 if (pinValue6 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.High;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);


 }


​
 if (pinValue7 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.High;
 pin7.Write(pinValue7);


 }
 TextBlock1.Text = "TEST " + ledValue2.ToString();
 break;
 }
随机发光二极管闪烁

private void Timer_Tick(object sender, object e)
 {
 int ledCheck = 1, ledCheck2 = 1;
 int ledValue = 0, ledValue2 = 0; 
 //ledValue2 = 1;
 int checkValue = 0;

 if (ledCheck == 1)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);
 ledCheck = 0;

 }


 Random rnd = new Random();
 ledValue = rnd.Next(1, 8);

 if (ledValue != checkValue)
 {
 checkValue = ledValue;
 if (ledValue == 1)
 {
 pinValue1 = GpioPinValue.High;

 }

 if (ledValue == 2)
 {
 pinValue1 = GpioPinValue.High;

 }

 if (ledValue == 3)
 {
 pinValue3 = GpioPinValue.High;

 }

 if (ledValue == 4)
 {
 pinValue4 = GpioPinValue.High;

 }

 if (ledValue == 5)
 {
 pinValue5 = GpioPinValue.High;

 }

 if (ledValue == 6)
 {
 pinValue6 = GpioPinValue.High;

 }

 if (ledValue == 7)
 {
 pinValue7 = GpioPinValue.High;

 }

 if (pinValue1 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.High;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);

 }


 if (pinValue2 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.High;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);
 }

 if (pinValue3 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.High;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);

 }



 if (pinValue4 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.High;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);
 }



 if (pinValue5 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.High;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);

 }



 if (pinValue6 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.High;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.Low;
 pin7.Write(pinValue7);


 }



 if (pinValue7 == GpioPinValue.High)
 {

 pinValue1 = GpioPinValue.Low;
 pin.Write(pinValue1);

 pinValue2 = GpioPinValue.Low;
 pin2.Write(pinValue2);

 pinValue3 = GpioPinValue.Low;
 pin3.Write(pinValue3);

 pinValue4 = GpioPinValue.Low;
 pin4.Write(pinValue4);

 pinValue5 = GpioPinValue.Low;
 pin5.Write(pinValue5);

 pinValue6 = GpioPinValue.Low;
 pin6.Write(pinValue6);

 pinValue7 = GpioPinValue.High;
 pin7.Write(pinValue7);


 }
 TextBlock1.Text = "NOT Same value!";

 }
 else
 {
 TextBlock1.Text = "Same value!";
 }
 } 
我将只让第一个led亮起,其余led保持黑暗。 有人能看到这个代码有什么问题吗

因为每次输入
Timer\u Tick()
时,
ledValue2
变量在此行被初始化为
0

您需要将
ledValue2
变量移出
Timer\u Tick()
。例如,您可以将其放在
MainPage
类的开头。并在此代码行之后添加以下代码段
ledValue2=ledValue2+1

        if (ledValue2 > 7)
        {
            ledValue2 = 0;
        }
        if (ledValue2 > 7)
        {
            ledValue2 = 0;
        }