这些使用c# .net8开发,硬件 香橙派 orangepi 3lts和 hc-04蓝牙
使用场景:可以通过这个功能,手机连接orangepi进行wifi等参数配置
硬件:
1、带USB口的linux开发板orangepi
2、USB 转TTL 中转接蓝牙(HC-04)

某宝上买的蓝牙官方网有调试工具:HC-T串口助手
https://www.hc01.com/downloads

也有手机端的调试工具

电脑和手机上调试成功后,证明蓝牙是正常使用的
.net 8代码
using System.IO.Ports;
public class UtilsSerial
{
    public void test()
    {
       getDataAndWriteString("/dev/ttyUSB0", 9600, "test");
        ///dev/ttyUSB0  是在香橙派运行上的端口
        //COM8 是本地window运行的端口
    }
 static SerialPort portString = null;
 /// <summary>
 /// 串口调用,适用于蓝牙模块hc-04通讯
 /// </summary>
 public void getDataAndWriteString(string portName, int baudRate,string content)
 {
     if (portString == null)
     {
          portString = new SerialPort(portName);
         portString.BaudRate = baudRate;
         portString.DataBits = 8;
         portString.Parity = Parity.None;
         portString.StopBits = StopBits.One;
         portString.Open();
         portString.DataReceived += getDataAndWriteStringPortDataReceived;
         Console.WriteLine("Serial Is Open");
     }
     if (portString.IsOpen)
     {
         // 将字符串转换为字节数组并写入串口
         byte[] dataBytes = Encoding.ASCII.GetBytes(content);
         portString.Write(dataBytes, 0, dataBytes.Length); 
     }
 }
 private void getDataAndWriteStringPortDataReceived(object sender, SerialDataReceivedEventArgs e)
 {
     var s = sender as SerialPort;
     if(s.BytesToRead> 0)
     {
         Thread.Sleep(50);
     }
     byte[] recData = new byte[s.BytesToRead];
     s.Read(recData, 0, recData.Length);
    var str = Encoding.Default.GetString(recData);
    Console.WriteLine(str);
 }
}USB连接香橙派后 查看串口情况
ls -l /dev/tty* #查看串口
可以看到USB0已连接

在香橙派orangepi 上运行,接收到手机APP调试工具发送的内容



















