Ein C# Programm läßt die Arduino LED an- und ausgehen



Du wirst mit Hilfe eines Programmes der kostenlosen C# Umgebung "Microsoft Visual Studio Express" die Arduino LED an Pin 13 ein- und ausschalten können.

       



Das in C# geschriebene Windows-Programm sieht so aus:

       

Das Setzen des Häkchens "Pin 13" läßt die LED leuchten und das Wegnehmen des Häkchens läßt sie verlöschen.
Hier kannst Du das fertige Programm runterladen.
Vergiß nicht, zuerst die Verbindung auszuwählen, sonst bekommst Du eine Fehlermeldung. Du benutzt den selben Port, wie zum Programme in den Arduino schieben.


Der Arduino-Quellcode dazu sieht folgendermaßen aus:


/*
  C# sagt: "Hallo Arduino!"
  Die Board-LED (Pin13) geht an und aus aufgrund
  eines C# Programmes auf dem Computer
  
  www.arduinospielwiese.de
*/


void setup()
{
  Serial.begin(9600); //öffnet die serielle Datenübertragung mit 9600 bit/s

  pinMode(13, OUTPUT);
}


void loop()
{

  if (Serial.available() > 0)
  {
    int SendeInhalt = Serial.read(); //liest die Daten
 
    if (SendeInhalt == 1) { digitalWrite(13, HIGH); }
    else { digitalWrite(13, LOW); }

    Serial.flush(); //seriellen Puffer löschen
  }
}



Ich nehme an, Du willst selbst so ein C# Programm schreiben.
Das kostenlose Microsoft Visual Studio Express bekommst Du hier.

Ich habe das Programm mit der 2008'er Version geschrieben.
Hier mein Projektordner: MySerial1.zip
Es lohnt sich, einwenig C# zu lernen!



Das C# - Programm selbst schreiben:

1. Schritt
        Starte das Visual Studio und lege ein Windows-Forms-Projekt an, das C# benutzen soll!


2. Schritt
        Gestalte ein Form, ähnlich diesem hier!
        Die Elemente ziehst Du aus dem Werkzeugkasten (früher "Toolbox") auf Dein Form.

                mindestens:
                        - ein NumericUpDown,
                        - ein Button,
                        - eine Checkbox

       

                weiterhin:
                doppelklicke in Deinem Werkzeugkasten auf das Objekt "SerialPort",
                welches daraufhin in einem Bereich unter dem Form erscheint.


3. Schritt
        Doppelklicke auf den Button! Danach befindest Du Dich im Quelltext des Buttons.
        Ergänze den Quelltext, wie folgt:

        private void Button1_Click(object sender, EventArgs e)
        {
            serialPort1.PortName = "COM" + numericUpDown1.Value.ToString();
            serialPort1.BaudRate = 9600;
            serialPort1.DtrEnable = true;
            serialPort1.Open();
                             
               Button1.Enabled = false;
        }

4. Schritt
        Doppelklicke auf die CheckBox! Danach befindest Du Dich im Quelltext der CheckBox.
        Ergänze den Quelltext, wie folgt:

    private void CheckBox1_CheckedChanged(object sender, EventArgs e)
        {
            byte datenpaket;
           
            if (CheckBox1.Checked == true)
            {
                datenpaket = 1;
            }
            else
            {
                datenpaket = 0;
            }
           
            serialPort1.Write(new byte[] {datenpaket}, 0, 1); 
        }