C#之windows桌面软件第十一课:电脑ADC值显示(上位机)(多通道显示)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO.Ports;namespace Adc_Display
{public partial class Form1 : Form{public Form1(){InitializeComponent();serialPort1.DataReceived += new SerialDataReceivedEventHandler(PortDataReceivedEvent); //串口数据接收事件 System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false;   //不检查线程间的操作                               }//刚开始让窗口遮蔽住下面的进度条private void Form1_Load(object sender, EventArgs e){this.Size = new Size(620, 107);//缩小窗口}//定义10个进度条对象ProgressBar[] GetProgressBar(){return new ProgressBar[] { progressBar1, progressBar2, progressBar3, progressBar4, progressBar5, progressBar6, progressBar7, progressBar8, progressBar9, progressBar10,};//返回一个对象数组}//串口数据接收private void PortDataReceivedEvent(object sender, SerialDataReceivedEventArgs args) {ProgressBar[] MyProgressBar = GetProgressBar();byte[] Data = new byte[serialPort1.BytesToRead]; serialPort1.Read(Data,0,Data.Length);//读foreach (byte MyData in Data){for(int i = 1;i < 10;i++){MyProgressBar[10 - i].Value = MyProgressBar[10 - i - 1].Value;//把9的值给10,8给9,,,,,,}progressBar1.Value = (int)MyData;/*把值显示在textBox1中*/string str = MyData.ToString("x");textBox1.Text = "0x" + (str.Length == 1 ? "0" + str : str);}}private void button1_Click(object sender, EventArgs e){if (serialPort1.IsOpen)//判断{groupBox2.Visible = false; //第二个框框不可见this.Size = new Size(620, 107); //缩小serialPort1.Close();//此处可不加try,catchProgressBar[] MyProgeressBar = GetProgressBar();foreach(ProgressBar theBar in MyProgeressBar)//遍历,每个progressbar归零{theBar.Value = 0;}button1.Text = "打开串口";}else{try{serialPort1.PortName = comboBox1.Text;//串口号serialPort1.Open(); //打开groupBox2.Visible = true; //第二个框框可见this.Size = new Size(620, 436); //放大button1.Text = "关闭串口";//按键标题}catch{MessageBox.Show("串口打开错误", "错误");}}}}
}

www.DoYoung.net(部分代码来至杜洋工作室)

C#之windows桌面软件第十一课:电脑ADC值显示(上位机)(多通道显示)相关推荐

  1. C#之windows桌面软件第十三课:C#中常用的类有哪些?构造函数怎么用?

    C#之windows桌面软件第十三课:C#中常用的类有哪些?构造函数怎么用? using System; using System.Collections.Generic; using System. ...

  2. C#之windows桌面软件第十课:电脑ADC值显示(上位机)(单通道显示)

    C#之windows桌面软件第十课:电脑ADC值显示(上位机) (单通道显示) using System; using System.Collections.Generic; using System ...

  3. C#之windows桌面软件第八课:汉字(GB2312)与编码(UTF-8)之间的相互转换

    C#之windows桌面软件第八课:汉字(GB2312)与编码(UTF-8)之间的相互转换 using System; using System.Collections.Generic; using ...

  4. C#之windows桌面软件第七课:(下集)串口工具实现数据校验、用灯反应设备状态

    C#之windows桌面软件第七课:(下集)串口工具实现数据校验.用灯反应设备状态 using System; using System.Collections.Generic; using Syst ...

  5. C#之windows桌面软件第六课:(上集)串口工具实现数据校验、用灯反应设备状态

    C#之windows桌面软件第六课:(上集)串口工具实现数据校验.用灯反应设备状态 using System; using System.Collections.Generic; using Syst ...

  6. C#之windows桌面软件第三课:完整的串口调试助手

    接上一节,这节来编写一个完整的串口调试助手! using System; using System.Collections.Generic; using System.ComponentModel; ...

  7. C#之windows桌面软件第五课:串口助手实现定时关闭设备、鼠标移动使按钮颜色变化功能

    本节在串口助手上实现: 1.定时关闭设备 2.移动鼠标使按钮颜色变换 Form1.cs代码如下: using System; using System.Collections.Generic; usi ...

  8. C#之windows桌面软件第四课:串口助手控制设备的开关

    串口助手控制设备的开关 using System; using System.Collections.Generic; using System.ComponentModel; using Syste ...

  9. C#之windows桌面软件第十二课:电脑ADC值显示(上位机),记忆上次串口号,并用TrackBar控件显示ADC值

    C#之windows桌面软件第十二课:电脑ADC值显示(上位机),记忆上次串口号,并用TrackBar控件显示ADC值 using System; using System.Collections.G ...

最新文章

  1. 2月末周全球域名解析商Top15:万网DNSPod份额均上涨
  2. C++ Unicode和ANSII转换
  3. Wisconsin Squares [USACO]
  4. C#动态生成Word文档并填充数据(一)
  5. hive取mysql数据oracle数据,Hive安装过程(mysql/oracle存储元数据)详解
  6. 外贸独立站VS第三方平台?
  7. 搭建自己的Nuget服务器
  8. python如何调用函数计算出成绩的不及格率_pytorch中的学习率调整函数
  9. react录制mp3格式音频,输出二进制数据流向后台请求音频的url
  10. 计算机硬件系统测试,介绍几个常用的电脑硬件检测工具
  11. 计算长方体、四棱锥的表面积和体积_JAVA
  12. 为什么双11快递一年比一年快?阿里新供应链架构解读
  13. 吴伯凡-认知方法论-如何做到真正的反思
  14. Windows搭建Deepmind的星际争霸2平台
  15. 【机器学习】决策树实验报告
  16. 如何简单粗暴解决echars大数据量渲染卡顿问题
  17. html同时播放多个文件夹,怎么把很多文件一起同时放入一个文件夹内
  18. Ubuntu安装ClickHouse
  19. usb gaghet hid 模拟鼠标键盘的绝对值描述
  20. MySQL学习笔记—自定义函数

热门文章

  1. JZ2440驱动开发之环境搭建
  2. 【已解决】wepy中使用分包加载报错
  3. iptables 工具的使用
  4. 根据 中序遍历 和 后序遍历构造树(Presentation)(C++)
  5. .NET泛型解析(上)
  6. C#程序员干货系列之语音识别
  7. OpenGL中关于坐标系原点在左上角还是左下角的一些整理
  8. 机器人雅可比矩阵的求法_构造法
  9. 汇编语言介绍,内存和总线的初步认识
  10. 阿里云Kubernetes服务 - Service Broker快速入门指南