Arduino数字引脚映射c#

本文关键字:映射 引脚 数字 Arduino | 更新日期: 2023-09-27 18:02:19

我正在编写一个c#应用程序,将与Arduino Mega 2560进行交互。但我是Arduino板的新手。

所以我的问题是有可能在c#应用程序中映射引脚,以便监控我的数字输入的状态。

的例子:

我这样设置Arduino

pinMode(22, INPUT)
(...)
pinMode(53, INPUT)

然后在c#中我可以读取一个特定的引脚来获得它的状态。像这样:

serialPort1.Read("pin44"); //and with that read I can see if its in HIGH or LOW.

private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
int pinNumber = serialPort1.**ReadPinNumber()**; //I would store the number of which pin is generating the data and do something with it.
}

我不知道我是否足够清楚,但我需要的是不断从arduino接收数据,并知道从哪个引脚来,所以我可以根据我的需要做一些事情。

我已经完成了第一部分。我可以接收数据并做些什么。但当涉及到多个引脚时,这是棘手的部分。

提前感谢。

Arduino数字引脚映射c#

不确定你是否能做到这一点,但你能在Arduino做这样的事情:

int pin7val = 0;     // variable to store the read value
void setup()
{
  Serial.begin(9600);
  pinMode(7, INPUT);      // sets the digital pin 7 as input
}
void loop()
{  
  pin7val = digitalRead(7);   // read the input pin 7
  Serial.write(pin7val + " Pin44");
}

然后在visual studio中做一些简单的事情,比如

string Serial = serialPort1.ReadLine();
if (Serial contains "44")
{
int pin44val = Serial();
}

c#语法可能不完全正确,但你明白了。