夜光带你走进C#winform&电气单片机(二十五)擅长的领域

mac2025-07-11  2

夜光序言:

 

很多关系不必靠的太近,每天接触那么多人

不是每个人都要成为朋友的,很多人就是蜻蜓点水,君子之交淡如水

不必交换隐私也不必加微信,大部分的恩怨爱恨都是因为离的太近

 

近之则不逊,原本客客气气的关系,开始变得阴阳怪气,彼此都不舒服。

有距离,才会有尊重

 

 

 

 

 

 

正文:

串口是单片机上位机开发的重点

 

显示256个十六进制数

到ff呗

 

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; namespace WindowsFormsApp2 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) //窗口创建初始化函数 { string str; //夜光:用来临时存储i大写的十六进制格式字符串 for(int i = 0; i< 256; i++)//256个 { //下面的x代表十六进制,不代表字符 str = i.ToString("x").ToUpper();//ToString("x")是将数字转换成为十六进制字符串 if(str.Length == 1) str = "0" + str;//如果是一位的(0xA),此时为了对齐,在数据前面加一个字符"0" (0x0A) comboBox1.Items.Add("0x" + str); //夜光:统一添加0x } comboBox1.Text = "0X00"; //初始值 } private void button1_Click(object sender, EventArgs e) //按钮单击事件 { string data = comboBox1.Text; //存储当前下拉框的内容 string convertdata = data.Substring(2, 2); // 把字符分开 byte[] buffer = new byte[1]; //数据一个字节就够用了 buffer[0] = Convert.ToByte(convertdata, 16); //将字符串转换为byte型变量(byte类似单片机里面的 unsigned char) try //夜光:防止出错 { serialPort1.Open(); serialPort1.Write(buffer, 0, 1); serialPort1.Close(); } catch //如果出错就执行下面的代码 { if (serialPort1.IsOpen) serialPort1.Close(); //如果是写数据出错,此时窗口为打开状态,就应该关闭串口,防止下次不可以使用 MessageBox.Show("端口错误","error"); } } } }

 

 

 

 

 

 

 

 

 

 

 

 

 

最新回复(0)