c# .net8 香橙派orangepi + hc-04蓝牙 实例

这些使用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调试工具发送的内容

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/498452.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Groovy - 大数据共享搜索配置

数据共享搜索列中配置了搜索列&#xff0c;相应的数据共享接口中也需要支持根据配置的字段搜索&#xff0c;配置实体时&#xff0c;支持搜索的入参code必须是searchKeys&#xff0c;且接口应该是需要支持分页&#xff08;入参必须是 current、pageSize&#xff09;的。current …

动态规划总结

参考来源&#xff1a;代码随想录 文章目录 基础概念具体应用的问题基础问题背包问题0-1背包完全背包 打家劫舍问题股票买卖问题子序列问题 基础概念 状态推导&#xff1a;动态规划中每一个状态一定是由上一个状态推导出来的。 动规五部曲&#xff1a; 确定dp[i]或者dp[i][j]…

OpenAI Triton 入门教程

文章目录 Triton 简介背景Triton 与 CUDA 的关系 Triton 开发样例样例一&#xff1a;Triton vector addition 算子Triton kernel 实现kernel 函数封装函数调用性能测试 样例二&#xff1a;融合 Softmax 算子动机Triton kernel 实现kernel 封装单元测试性能测试 样例三&#xff…

gpt-3.5-turbo与星火认知大模型v3.5回答对比

创建kernel // Create a kernel with OpenAI chat completionKernel kernel Kernel.CreateBuilder().AddOpenAIChatCompletion(modelId:"使用的模型id" ,apiKey: "APIKey").Build();使用讯飞星火认知大模型的话&#xff0c;可以参考我这一篇文章&#xff…

C++ 反向迭代器的设计与实现

在本文开始之前&#xff0c;先明晰几个 关键词 的含义&#xff08;T : 模板参数&#xff09;&#xff1a; Ref : T& / const T&Ptr : T* / const T* 一、反向迭代器设计的上帝视角 我们希望将 反向迭代器 设计成一种适配器——传 list::iterator 得到 list 的反向迭代…

代码随想录刷题笔记-Day25

1. 分割回文串 131. 分割回文串https://leetcode.cn/problems/palindrome-partitioning/ 给你一个字符串 s&#xff0c;请你将 s 分割成一些子串&#xff0c;使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1&#xf…

数据分析全流程解析:从数据预处理到分析建模,再到结果可视化

在当前信息化时代&#xff0c;数据分析成为了企业决策、科研创新的关键。高效、准确地从海量数据中提取有价值的信息&#xff0c;需要经过数据预处理、分析建模、结果可视化等一系列步骤。本文将详细介绍这一流程&#xff0c;并提供Python代码示例&#xff0c;帮助读者更好地理…

深入理解网络通信基本原理和tcp/ip协议

深入理解网络通信基本原理和tcp/ip协议 一、计算机网络体系1&#xff0c;计算机网络体系结构2&#xff0c;网络中数据传输2.1&#xff0c;浏览器中输入一个url的执行流程2.2&#xff0c;数据在网络中是的传输流程 3&#xff0c;三次握手和四次挥手3.1&#xff0c;三次握手3.1.1…

Unity-PDF分割器(iTextSharp)

PDF分割器 Unity-PDF分割器前言核心思路解决过程一、Unity安装iTextSharp二、运行时计算将要生成文件的大小三、分割核心代码四、使用StandaloneFileBrowser五、其他的一些脚本六、游戏界面主体的构建MainWindowWarningPanel & FinishPanel By-Round Moon Unity-PDF分割器 …

开源大数据集群部署(十三)Ranger 集成Trino

作者&#xff1a;櫰木 1、安装ranger trino插件 在trino的coordinator节点部署 解压ranger-2.3.0-trino-plugin.tar.gz [roothd2.dtstack.com ]#tar -zxvf ranger-2.3.0-trino-plugin.tar.gz -C /opt配置ranger trino插件文件install.properties&#xff0c;内容如下 &…

【多智能体】MetaGPT配置教程(应用智谱AI的GLM-4)

MetaGPT配置教程&#xff08;使用智谱AI的GLM-4&#xff09; 文章目录 MetaGPT配置教程&#xff08;使用智谱AI的GLM-4&#xff09;零、为什么要学MetaGPT一、配置环境二、克隆代码仓库三、设置智谱AI配置四、 示例demo&#xff08;狼羊对决&#xff09;五、参考链接 零、为什么…

Java Web(十一)--JSON Ajax

JSON JSon在线文档&#xff1a; JSON 简介 JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。轻量级指的是跟xml做比较。数据交换指的是客户端和服务器之间业务数据的传递格式。 它基于 ECMAScript (W3C制定的JS规范)的一个子集&#xff0c;采…