Hannpong

Untitled

Jan 20th, 2023
1,081
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.31 KB | None | 0 0
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using System.IO.Ports;
  5. using UnityEngine.UI;
  6.  
  7. public class ArduinoController : MonoBehaviour
  8. {
  9.     public bool LEDgreen = false;
  10.     public bool LEDyellow = false;
  11.     public bool LEDred = false;
  12.     public bool LEDblue = false;
  13.  
  14.     public float luftfeuchtigkeit = 0;
  15.     public float temperatur = 0;
  16.  
  17.     UIController _uIController;
  18.  
  19.     public List<Toggle> toggles= new List<Toggle>();  
  20.  
  21.  
  22.     SerialPort stream = new SerialPort("COM7", 9600);
  23.  
  24.     public TMPro.TextMeshProUGUI output;
  25.  
  26.     // Start is called before the first frame update
  27.     void Start()
  28.     {
  29.         stream.Open();
  30.         _uIController = gameObject.GetComponent<UIController>();
  31.     }
  32.  
  33.     //Update is called once per frame
  34.     void Update()
  35.     {
  36.         //string value = stream.ReadLine();
  37.         //buttonState = int.Parse(value);
  38.     }
  39.  
  40.  
  41.     public void changeAllLEDStates()
  42.     {
  43.         if (LEDgreen || LEDred || LEDblue || LEDyellow)
  44.         {
  45.             stream.Write("s");
  46.             stream.Write("h");
  47.             stream.Write("c");
  48.             stream.Write("z");
  49.  
  50.             foreach (Toggle current in toggles)
  51.             {
  52.                 current.isOn = false;
  53.             }
  54.  
  55.             stopAllLEDs();
  56.         }
  57.         else
  58.         {
  59.             stream.Write("r");
  60.             stream.Write("g");
  61.             stream.Write("b");
  62.             stream.Write("y");
  63.  
  64.             foreach (Toggle current in toggles)
  65.             {
  66.                 current.isOn = true;
  67.             }
  68.  
  69.             startAllLEDs();
  70.         }
  71.  
  72.         _uIController.updateLEDStates();
  73.     }
  74.  
  75.     public void startAllLEDs()
  76.     {
  77.         //write r,g,b,y
  78.         LEDblue= true;
  79.         LEDgreen= true;
  80.         LEDyellow= true;
  81.         LEDred= true;
  82.  
  83.     }
  84.  
  85.     public void stopAllLEDs()
  86.     {
  87.         //write s,h,c,z
  88.         LEDblue = false;
  89.         LEDgreen = false;
  90.         LEDyellow = false;
  91.         LEDred = false;
  92.     }
  93.  
  94.     public void changeLEDState(int led)
  95.     {
  96.  
  97.         //write for LED
  98.         switch (led)
  99.         {
  100.             case 1:
  101.                 LEDred= !LEDred;
  102.                 if (LEDred)
  103.                 {
  104.                     stream.Write("r");
  105.                 }
  106.                 else
  107.                 {
  108.                     stream.Write("s");
  109.                 }
  110.                 break;
  111.             case 2:
  112.                 LEDgreen= !LEDgreen;
  113.                 if (LEDgreen)
  114.                 {
  115.                     stream.Write("g");
  116.                 }
  117.                 else
  118.                 {
  119.                     stream.Write("h");
  120.                 }
  121.                 break;
  122.             case 3:
  123.                 LEDblue= !LEDblue;
  124.                 if (LEDblue)
  125.                 {
  126.                     stream.Write("b");
  127.                 }
  128.                 else
  129.                 {
  130.                     stream.Write("c");
  131.                 }
  132.                 break;
  133.             case 4:
  134.                 LEDyellow= !LEDyellow;
  135.                 if (LEDyellow)
  136.                 {
  137.                     stream.Write("y");
  138.                 }
  139.                 else
  140.                 {
  141.                     stream.Write("z");
  142.                 }
  143.                 break;
  144.         }
  145.         _uIController.updateLEDStates();
  146.     }
  147. }
Advertisement
Add Comment
Please, Sign In to add comment