/// <summary> /// Applications entry point. /// </summary> /// <param name="args"></param> static void Main(string[] args) { Hashtable Arguments = ArgumentParse(args); if (Arguments.ContainsKey(PARAMETER_PORT) && (Arguments.ContainsKey(PARAMETER_BACKLIGHT) || Arguments.ContainsKey(PARAMETER_TEXT))) { Console.Write("Port: "); Console.WriteLine(Arguments[PARAMETER_PORT]); if (Arguments.ContainsKey(PARAMETER_BACKLIGHT)) { Console.Write("Backlight: "); if ((bool)Arguments[PARAMETER_BACKLIGHT]) { Console.WriteLine("On"); } else { Console.WriteLine("Off"); } } if (Arguments.ContainsKey(PARAMETER_TEXT)) { Console.Write("Message: '"); Console.Write(Arguments[PARAMETER_TEXT]); Console.WriteLine("'"); } try { //create object AdvancedSerialClient ArduinoClient = new AdvancedSerialClient(); //connect to device ArduinoClient.Open(Arguments[PARAMETER_PORT].ToString(), 115200); //command for LED if (Arguments.ContainsKey(PARAMETER_BACKLIGHT)) { SerialProtocol.AdvancedSerialMessage BacklightMessage = new SerialProtocol.AdvancedSerialMessage(); if ((bool)Arguments[PARAMETER_BACKLIGHT]) { BacklightMessage.ID = BACKLIGHT_ON_MESSAGE; } else { BacklightMessage.ID = BACKLIGHT_OFF_MESSAGE; } ArduinoClient.Send(BacklightMessage); } //command for text if (Arguments.ContainsKey(PARAMETER_TEXT)) { SerialProtocol.AdvancedSerialMessage TextMessage = new SerialProtocol.AdvancedSerialMessage(); TextMessage.ID = TEXT_MESSAGE; TextMessage.Payload = new System.Text.ASCIIEncoding().GetBytes(Arguments[PARAMETER_TEXT].ToString()); TextMessage.Size = (byte)TextMessage.Payload.Length; ArduinoClient.Send(TextMessage); } } catch (Exception ex) { Console.Write("Error: " + ex.Message); } } else { Console.WriteLine("Invalid parameters!"); Console.WriteLine(); Console.WriteLine("Write a message to LCD display. It's a serial client for LCDWriter sketch from abl-arduino lirary."); Console.WriteLine(); Console.WriteLine("usage: " + Process.GetCurrentProcess().ProcessName + " /P port [/On | /Off] [message]"); Console.WriteLine(); Console.WriteLine(" message Message to be written on LCD display (16x2)."); Console.WriteLine(); Console.WriteLine(" /P Serial port."); Console.WriteLine(" /On Turn backlight led on."); Console.WriteLine(" /Off Turn backlight led off."); } }
/// <summary> /// Applications entry point. /// </summary> /// <param name="args"></param> static void Main(string[] args) { Hashtable Arguments = ArgumentParse(args); if (Arguments.ContainsKey(PARAMETER_PORT) && (Arguments.ContainsKey(PARAMETER_BACKLIGHT) || Arguments.ContainsKey(PARAMETER_TEXT))) { Console.Write("Port: "); Console.WriteLine(Arguments[PARAMETER_PORT]); if (Arguments.ContainsKey(PARAMETER_BACKLIGHT)) { Console.Write("Backlight: "); if ((bool)Arguments[PARAMETER_BACKLIGHT]) Console.WriteLine("On"); else Console.WriteLine("Off"); } if (Arguments.ContainsKey(PARAMETER_TEXT)) { Console.Write("Message: '"); Console.Write(Arguments[PARAMETER_TEXT]); Console.WriteLine("'"); } try { //create object AdvancedSerialClient ArduinoClient = new AdvancedSerialClient(); //connect to device ArduinoClient.Open(Arguments[PARAMETER_PORT].ToString(), 115200); //command for LED if (Arguments.ContainsKey(PARAMETER_BACKLIGHT)) { SerialProtocol.AdvancedSerialMessage BacklightMessage = new SerialProtocol.AdvancedSerialMessage(); if ((bool)Arguments[PARAMETER_BACKLIGHT]) BacklightMessage.ID = BACKLIGHT_ON_MESSAGE; else BacklightMessage.ID = BACKLIGHT_OFF_MESSAGE; ArduinoClient.Send(BacklightMessage); } //command for text if (Arguments.ContainsKey(PARAMETER_TEXT)) { SerialProtocol.AdvancedSerialMessage TextMessage = new SerialProtocol.AdvancedSerialMessage(); TextMessage.ID = TEXT_MESSAGE; TextMessage.Payload = new System.Text.ASCIIEncoding().GetBytes(Arguments[PARAMETER_TEXT].ToString()); TextMessage.Size = (byte)TextMessage.Payload.Length; ArduinoClient.Send(TextMessage); } } catch (Exception ex) { Console.Write("Error: " + ex.Message); } } else { Console.WriteLine("Invalid parameters!"); Console.WriteLine(); Console.WriteLine("Write a message to LCD display. It's a serial client for LCDWriter sketch from abl-arduino lirary."); Console.WriteLine(); Console.WriteLine("usage: " + Process.GetCurrentProcess().ProcessName + " /P port [/On | /Off] [message]"); Console.WriteLine(); Console.WriteLine(" message Message to be written on LCD display (16x2)."); Console.WriteLine(); Console.WriteLine(" /P Serial port."); Console.WriteLine(" /On Turn backlight led on."); Console.WriteLine(" /Off Turn backlight led off."); } }