2016-04-20 2 views
0

Я сейчас для Arduino, я хочу попытаться открыть переключатель вкл/выкл с помощью C# с Arduino. Поэтому я пытаюсь использовать последовательный порт, и он работает, но я хочу использовать экран Ethernet для включения/выключения светодиода. Мой код с использованием последовательного порта Этот код ArduinoArduino LED On/Off TCP C#

#define BaudRate 9600 
#define LEDPin 10 
char incomingOption; 

void setup() 
{ 
    pinMode(LEDPin, OUTPUT); 
    // serial communication 
    Serial.begin(BaudRate); 
} 
void loop() 
{ 
    //read from serial port getting information from VS 2013 
    incomingOption = Serial.read(); 
    //verify incomingOption 
    switch(incomingOption){ 
     case '1': 
      // Turn ON LED 
      digitalWrite(LEDPin, HIGH); 
      break; 
     case '0': 
      // Turn OFF LED 
      digitalWrite(LEDPin, LOW); 
      break; 
    } 
} 

и C#, у меня есть 3 простой кнопки (включение, выключение и закрыть последовательный порт)

public partial class frmTurnONTurnOFFLED : Form 
{ 
    public frmTurnONTurnOFFLED() 
    { 
     InitializeComponent(); 
    } 
    private void btnTurnON_Click(object sender, EventArgs e) 
    { 
     try 
     { 
     serialPort1.Write("1"); //send 1 to Arduino 
     } 
     catch (Exception ex) 
     { 
     MessageBox.Show(ex.Message); 
     } 
    } 
    private void btnTurnOFF_Click(object sender, EventArgs e) 
    { 
     try 
     { 
     serialPort1.Write("0"); //send 0 to Arduino 
     } 
     catch (Exception ex) 
     { 
     MessageBox.Show(ex.Message); 
     } 
    } 
    private void frmTurnONTurnOFFLED_Load(object sender, EventArgs e) 
    { 
     serialPort1.Open(); //open serialPort 
    } 
    private void btnClosePort_Click(object sender, EventArgs e) 
    { 
     serialPort1.Close(); //close serialPort 
    }   
} 

Так где я могу изменить мой код? используя гнездо? используя TCP pr UDP?

ответ

0

Можете ли вы попробовать установить имя порта перед открытием?

serialPort1.PortName = "COM3" // your ardunio port (you can see on device manager) 
serialPort1.Open(); 
+0

его просто тест, мне нужно переписать с подключением Ethernet – Juste3alfaz

+0

@ Juste3alfaz ой извините, я запутался. Возможно, это поможет вам связать: https: //startingelectronics.org/tutorials/arduino/ethernet-shield-web-server-tutorial/web-server-LED-control/ – codemania

+0

Я вижу веб-страницу, но я использую настольное приложение на C#, но thnx: D – Juste3alfaz

Смежные вопросы