Ciao a tutti, premetto che ho girando un bel po su forum ma non avendo conoscenze solide mi viene difficile anche cercare su questo argomento.
Vi spiego, ho preparato un piccolo tool in C# che legge i dati seriali che vengono mandati da arduino. In particolare, ho arduino con un pulsante ed un led, in questo momento il programma ha un pulsante che, alla pressione, controlla lo stato del LED ed esegue un'azione. Per comodità posto il codice
public partial class MainForm : Form
{
public MainForm()
{
//
// The InitializeComponent() call is required for Windows Forms designer support.
//
InitializeComponent();
//configuring the serial port
serialPort1.PortName="COM3";
serialPort1.BaudRate=9600;
serialPort1.DataBits=8;
serialPort1.Parity=Parity.None;
serialPort1.StopBits= StopBits.One;
//opening the serial port
serialPort1.Open();
serialPort1.DiscardInBuffer();
//lettura = serialPort1.Read
}
void Button1Click(object sender, EventArgs e)
{
{
string comando = serialPort1.ReadLine();
string control = comando.Substring(0,6);
if (String.Equals(control, "SPENTO"))
{
Process.Start("IExplore.exe");
}
if (String.Equals(control, "ACCESO"))
{
Process.Start("notepad.exe");
}
}
}
Come vedete io premo il pulsante su arduino, il led si accende, ed invia una stringa.
Lato software io premo il pulsante, controllo la stringa (quindi lo stato) ed eseguo un'azione. In questo caso ho messo ad esempio il lancio di iexplorer.exe oppure notepad.exe.
Quello che io vorrei ora è che, il programma stesse sempre in ascolto! Cioè non devo eseguire ogni volta il check con il pulsante per vedere lo stato.
Quinid il programma sta in esecuzione, io premo il pulsante di arduino ed automaticamente mi si avvia il programma sul PC.
Come potrei risolvere?
Grazie mille!