IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> Unity 串口通信(带下拉列表) -> 正文阅读

[游戏开发]Unity 串口通信(带下拉列表)

整体代码:

using System.Collections;
using System.Collections.Generic;
using System.IO.Ports;
using UnityEngine;
using UnityEngine.UI;
public class chuankou : MonoBehaviour
{
    //可用串口号缓存
    private string[] sps;
    //串口号缓存
    private string portName;
    //波特率
    private int baudRate = 9600;
    //开关串口判断
    private bool close = false;
    //开关串口提示
    public Text close_text;
    //串口号文本
    public Text portnames_text;
    //获取下拉列表
    public Dropdown dp;
    //连接状态显示
    public GameObject close_gameobject; 
    //实例化一个串口
    public SerialPort serialPort = new SerialPort();
    //获取是否成功文本
    public Text Great;
    //获取当前计算机串口名称
    public Text chuankouName;
    //显示与编辑内容
    public InputField xianshi,bianji;
    void Start()
    {
        //获取串口号     
        sps = SerialPort.GetPortNames();
        //赋值串口号
        portName = sps[0];
        //显示串口号
        portnames_text.text = portName;
        //显示当前计算机串口名称
        chuankouName.text = "当前计算机串口名:" + SerialPort.GetPortNames().ToString();
    }

    //搜索设备
    public void Get_SerialPort_Names()
    {
        //重置数组和下拉列表防止重复
        for (int i = 0; i < sps.Length; i++)
        {
            sps[i] = "";
            dp.ClearOptions();
        }
        //赋值给下拉列表
        for (int i = 0; i < sps.Length; i++)
        {
            sps = SerialPort.GetPortNames();
            List<string> inside = new List<string> { sps[i] };
            dp.AddOptions(inside);
        }
        //获取串口号     
        sps = SerialPort.GetPortNames();
        //显示串口号
        portnames_text.text = portName;
    }

    //开关串口
    public void Open_SerialPort()
    {
        if (!close)
        {
            try
            {
                //定义串口属性变量
                serialPort = new SerialPort(portName, baudRate);
                //开启串口
                serialPort.Open();
                Great.text = "已打开串口";
                close_text.text = "关闭串口";
                close_gameobject.GetComponent<Image>().color = Color.green;
                close = true;
            }
            //报错处理
            catch (System.Exception)
            {
                //关闭串口
                serialPort.Close();
                close_gameobject.GetComponent<Image>().color = Color.red;
                throw;
            }
        }
        else
        {
            //关闭串口
            serialPort.Close();
            Great.text = "已关闭串口";
            close = false;
            close_text.text = "打开串口";
            close_gameobject.GetComponent<Image>().color=Color.red;
        }
    }
    public void XianShi()//模拟串口通信
    {
        xianshi.text += bianji.text+",";
    }
    public void Exit()//退出
    {
        Application.Quit();
    }
}

?

?

?

?

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2021-12-01 18:01:41  更:2021-12-01 18:03:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 23:30:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码