Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using System.IO.Ports;
- using System;
- using System.Threading;
- using System.Runtime.InteropServices;
- using System.Linq;
- public class KeyboardController : MonoBehaviour {
- public static SerialPort mySerialPort;
- void Awake()
- {
- string[] ports = System.IO.Ports.SerialPort.GetPortNames();
- foreach(string name in ports)
- {
- Debug.Log(name);
- }
- }
- public void OpenPort()
- {
- Debug.Log("Openning Port...");
- mySerialPort = new SerialPort("COM6");
- mySerialPort.BaudRate = 19200;
- mySerialPort.Parity = Parity.None;
- mySerialPort.StopBits = StopBits.One;
- mySerialPort.DataBits = 8;
- mySerialPort.Handshake = Handshake.None;
- mySerialPort.RtsEnable = true;
- mySerialPort.DtrEnable = true;
- mySerialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
- mySerialPort.Open();
- }
- private void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
- {
- Debug.Log("FIRED!");
- }
- public void SendData()
- {
- if (mySerialPort!=null && mySerialPort.IsOpen)
- {
- byte[] Command = new byte[9] { 0x55, 0x05, 0x00, 0x0e, 0x01, 0x01, 0x00, 0x00, 0xd8 };
- mySerialPort.Write(Command, 0, 9);
- Debug.Log("Data sended");
- }
- else
- {
- Debug.Log("ERROR - port is closed");
- }
- }
- public void ClosePort()
- {
- if (mySerialPort != null)
- {
- if (mySerialPort.IsOpen)
- {
- Debug.Log("closing serial port");
- mySerialPort.Close();
- }
- mySerialPort = null;
- }
- }
- public void OnApplicationQuit()
- {
- ClosePort();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement