using DongWuYiXue.DaoNiaoShu; using System.Collections; using System.Collections.Generic; using System.IO.Ports; using UnityEngine; using UnityEngine.UI; /// /// 棉签对接硬件脚本 /// public class MianQian_SenSor : Sensor { /// /// 旋转X /// [HideInInspector] public float X; /// /// 旋转Y /// [HideInInspector] public float Y; /// /// 旋转Z /// [HideInInspector] public float Z; [SerializeField] Text txt; [HideInInspector] public bool isOpen; float time; float lastTime; private void Start() { GameManager.Instance.senSor.SendFunction("+++"); } public override void ReceiveData(string datas, SerialPort sp = null) { base.ReceiveData(datas, sp); if (!datas.Split("%")[0].Split("ID:")[1].Split(',')[0].Equals("MQ")) return; //if (!datas.Split("OK")[0].Split("ID:")[1].Split(',')[0].Equals("ZSQ20")) return; //this.Error(datas); lastTime = time; X = float.Parse(datas.Split("%")[0].Split("PIT:")[1].Split(',')[0]); Y = float.Parse(datas.Split("%")[0].Split("YAW:")[1].Split(',')[0]); Z = float.Parse(datas.Split("%")[0].Split("ROL:")[1].Split(',')[0]); //this.Error($"当前旋转角度为:{X},{Y},{Z}"); } private void Update() { time += Time.deltaTime; if (time - lastTime < 1.0f) { isOpen = true; } else { isOpen = false; //progressValue = 0; } } public override void Display(string datas) { base.Display(datas); txt.text = $"棉签:X:{X},Y:{Y},Z:{Z}"; } }