我有一个Raspberry Pi 3连接到pH传感器,当pH超出设定的pH范围时,将通过i2c向raspi 3发送命令,控制分配酸或碱性溶液的电机。我的问题是,Arduino希望发动机运行,而不是停止它们。我试了试“延迟(1000)”等,但是马达在熄火前仅仅运转了一秒钟。我有一个发光二极管设置,当pH在范围内时是绿色的,当它在范围内时是蓝色的,当它结束时是红色的。
我发现delay()并不适合使用,所以我尝试实现了一个millis()系统,但这使得电机
所以我这里有一个程序,有三个不同的LED循环模式,代码在if语句中,我注意到它不再循环了,即使if语句在void循环中。我尝试过在void循环中放置一个void循环,但是它不起作用。我不能在一定程度上使用代码循环,因为当我尝试并将数字设置为50个循环时,即使用户在第三个循环中键入另一个输入,它也完成了所有50个循环。我对arduino很陌生,我很想知道如何解决这个问题的新信息。这是我的代码:
voi
我正试图用3个或更多的Arduino Uno's和1 Mega (作为主人)建造一个电梯/电梯。主人要做的是询问奴隶(在这种情况下,Uno's)是否按下按钮。保持架在2楼,由红外传感器检测。如果我按下2楼的按钮,梅加一定知道笼子已经在那里了。如果我按下3楼的按钮,Mega必须知道笼子在2楼,3楼的按钮被按下,它必须控制马达把笼子带到3楼,并显示在7段显示器上。
我必须使用i2c。dig
我一直在测量阿迪诺号的高度。它会升高,然后保持高的几毫秒。然后,它被拉低1单位,然后浮回高点。我的代码似乎没有意识到这条线被拉得很低。对于中断来说,1U太快了吗?我怎么才能慢下来呢?谢谢
编辑我的想法是,使用RC滤波器与二极管一起,以减缓上升时间足以让阿尔杜诺识别变化,但只有当变化发生时,从接收线。这可行吗?或者我可以用同样的方式使用带有二极管的脉冲扩展芯片吗?, OUTPUT); //originally set