0. Prefacio
El anteproyecto es: VS 2019 usa el lenguaje C # para desarrollar un temporizador de cuenta regresiva simple en el marco .Net Framework 4.5
1. Realización del proyecto
1.1 Configurar el archivo Form1.cs [Diseño]
Coloque los siguientes controles en Form1.cs [Diseño] y establezca las propiedades en el cuadro de propiedades correspondiente.
Arrastre el componente serialPort.
En la barra de propiedades serialPort, puede configurar la velocidad en baudios, el número de puerto serial y otras propiedades. La velocidad en baudios utilizada en este programa es 4800 y el número de puerto serie es COM4.
1.2 Configurar el archivo Form1.cs
El código de Form1.cs es el siguiente
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 SerialTest
{
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个
{
str = i.ToString("x").ToUpper();//ToString("x")是将数字转转换为16进制字符串,ToUpper是将字符串所有字符大写
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(0-255))
try//防止出错
{
serialPort1.Open();
serialPort1.Write(buffer, 0, 1); //第一个参数是待写入的缓存数组,第二个参数是offset,即偏移量,即从第0位开始写,第三个参数是从0开始往后写1位
serialPort1.Close();
}
catch {
//如果出错就执行此块代码
if (serialPort1.IsOpen)
serialPort1.Close();//如果是写数据时出错,此时窗口状态为开,就应关闭串口,防止下次不能使用,串口是不能重复打开和关闭的
MessageBox.Show("端口错误","错误");
}
}
}
}
2. Puerto serie simple para enviar una vista previa del software de datos
3. Prueba
Se puede probar con VSPD y SSCOM.
3.1 Configurar par de puertos serie virtuales
Abra VSPD, configure un par de puertos serie de COM3 y COM4, y luego haga clic en Agregar par.
Obtenga un par de puertos serie virtual: COM3 y COM4.
También puede ver el par de puertos serie virtual en el administrador de dispositivos.
3.2 Configurar SSCOM
Abra SSCOM.
- Debido a que la velocidad en baudios configurada en el software de envío de datos del puerto serie es 4800, la velocidad en baudios en SSCOM también debe configurarse como 4800.
- Debido a que el número de puerto serie configurado en el software de envío de datos del puerto serie es COM4, se selecciona COM3 en SSCOM.
3.3 Iniciar prueba
Haga clic para abrir el puerto serie en SSCOM.
Seleccione un dato en el software de envío de datos del puerto serie y haga clic en enviar.
Entonces SSCOM puede recibir el resultado.