请原谅我的英文
在2天内,我将在一个大型博览会上展示我的项目,但我遇到了一些问题,希望你能帮助我!
我的项目将是一个玻璃容器,其溶液含有铁颗粒。我有2个大的电磁铁连接到连接到arduino的继电器,假设它们使用时间戳按顺序与录音轨道一起继续。
我正在使用:
使用此代码,1磁铁继续运行,另一个磁铁每2秒关闭一次,它可以工作。
Arduino IDE(C ++)中的代码
int mag1 = 6;
int mag2 = 7;
void setup() {
// put your setup code here, to run once:
//Selecteer magneten als output
pinMode(mag1, OUTPUT);
pinMode(mag2, OUTPUT);;
}
void loop() {
// put your main code here, to run repeatedly:
delay(2000);
mag1on();
delay(2000);
mag2on();
}
//Magneet 1 aan
void mag1on(){
digitalWrite(mag2, LOW);
digitalWrite(mag1, HIGH);
}
//Magneet 2 aan
void mag2on(){
digitalWrite(mag1, LOW);
digitalWrite(mag2, HIGH);
}
我现在的问题是我正在尝试制作一个C#表格,其中我有一个开始按钮,如果你按下按钮,arduino上的序列将必须启动,音频文件应该播放,所以磁铁序列和音频将同步播放。我试图在Visual Studio中使用ArduinoDriver for .NET,所以我可以在表单中创建序列,但我完全不知道如何使用此方法向arduino发出命令。请帮助我,这样我就可以用C#格式编写一个序列,让磁铁1在00:11继续运行,磁铁2在00:30等运行。
我希望我提供足够的信息,如果没有,请问我,我会快速反应。谢谢你的帮助!
答案 0 :(得分:0)
我做了一个小小的假设,你用c#表示你的意思是用c#编写的winform。
那就是说,我认为你错过了一个传输层。 首先,您必须决定如何将运行winform程序的设备上的消息发送到您的arduino设备。
简单性和成本建议您使用串口,因为您的uno内置了一个串口,如果您运行c#app的设备也有一个,那么有些人不会这样做。
如果没有,您可以选择使用以太网,蓝牙甚至端口到端口,具体取决于您运行的硬件。
然后,您可以了解如何使应用程序特定功能正常工作的详细信息。
您必须先按顺序抓取,行走,跑步......