I want to execute my SetupSerialPort
method every 4 seconds.
After doing some research, I think I need to be using Timers. But it seems the timer method is giving me an error message (+ highlighted in comment:
Argument 1 : can't convert from "method group" to "Timer Callback"
internal class GetPortTetheredHelper
{
private static int second;
public static void RunTimer()
{
second = 4 * 1000;
var timer = new Timer(SetupSerialPort, null, 0, second);
// Argument 1 : can't convert from "method group" to "Timer Callback"
}
public static void SetupSerialPort(SerialPort sp)
{
sp.PortName = PortCom();
sp.BaudRate = 57600;
sp.DataBits = 8;
sp.StopBits = StopBits.One;
sp.Parity = Parity.None;
sp.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
sp.Open();
}
private static string PortCom()
{
string[] ports = SerialPort.GetPortNames();
return ports[0];
}
private static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
{
SerialPort sp = (SerialPort)sender;
if (sp.IsOpen)
{
sp.ReadLine();
}
}
}