【星闪模组开发板WS8204SLEBLEModule】星闪数据收发测试
目录
开发板简介
串口设置
主从模式设置
AT命令数据发送
透传模式数据发送
结语
本文首发于《电子产品世界》论坛:【星闪模组开发板WS8204SLE&BLEModule】星闪数据收发测试-电子产品世界论坛
https://forum.eepw.com.cn/thread/392011/1
感谢eepw论坛和成都无声讯通科技有限责任公司提供的评测机会。
开发板简介
WS8204 是一款高度集成 2.4GHz SoC BLE&SLE 芯片方案模组,集成 BLE5.4/SLE1.0 子系统,包含 MAC、Baseband、 RF、balun、功率放大器、低噪 声放大器,TX/RX switch 等模块,支持 1M/2M/4M 3 种带宽,最大支持 12Mbit/s 速率。虽然测试用的开发板看上去接口丰富,但是由于其软件完全不开放,所以没有任何定制的地方。开发板的整体布局如下图。

图中的2号是主通信接口,可以借助USB连接PC进行测试。11是一个扩展槽,如果希望接单片机,可以用这个接口。
串口设置
星闪模组开发板 WS8204的手册上推荐的串口调试工具是SSCOM。本来我平时用的是MabaXterm,但是和这个板子不太适配,因为这个开发板对于串口的格式有要求,命令结尾必须是回车换行,设置了几次都无法让MabaXterm和它一起工作,只好改用SSCOM。在使用SSCOM时,一定要勾选“加回车换行”这个选项。

主从模式设置
星闪通信是采用主从模式的,模块出厂默认是从模式,如果想互相通信,需要将其中一个改为主模式。使用AT+SROLE=1命令将其由从模式切换到主模式,然后使用AT+RST命令将其重启,然后两个板子就可以连接连接。


+SCONN命令表示开发板已经连接成功。
AT命令数据发送
星闪模组开发板 WS8204 有两种数据收发模式,一种是AT命令收发,一种是透传模式。先介绍AT命令收发。
在 AT 指令模式下,发送 AT+SSEND=<connid>,<length>\r\n 到模组,模组接收命令合响应“+OK\r\n>”即表示 模组准备好接收数据,此时可向模组发送指定长度的数据。数据发送完成后,模组输出+SSEND:<length>,表示发送完成。 在 AT 指令模式下,模组接收到数据,模组主动输出+SRD:<connid>,<length>。然后输出接收到的数据。这里的数据长度是包括回车换行的。
下面是发送数据的例子。

![]()
透传模式数据发送
AT命令数据收发是可以一对多的,但是透传模式只能是1对1连接,而且实测是单向的。要使用透传功能,需要先使用AT+SMUX=1将其连接数(默认是8)减少为1。
发送 AT+SSEND 即进入透传模式。在透传模式时输入“+++”3 个字 符,即进入 AT 指令模式;再次发送 AT+SSEND 即会再次进入透传模式。
下面是透传的实际测试。


下面是利用SSCOM的文件发送能力发送了一个文件的测试。


结语
功能测试之后,发现这个开发板还是非常容易上手的,整体表现不错。缺点是文档比较差。
相关文章:
【星闪模组开发板WS8204SLEBLEModule】星闪数据收发测试
目录 开发板简介 串口设置 主从模式设置 AT命令数据发送 透传模式数据发送 结语 本文首发于《电子产品世界》论坛:【星闪模组开发板WS8204SLE&BLEModule】星闪数据收发测试-电子产品世界论坛https://forum.eepw.com.cn/thread/392011/1 感谢eepw论坛和成…...
天梯赛L1-22-25
L1-022 奇偶分家 题目描述 给定 N 个正整数,统计其中奇数和偶数各有多少个。 输入格式 第一行:一个正整数 N(≤1000)。第二行:N 个非负整数,以空格分隔。 输出格式 在一行中输出奇数的个数和偶数的个…...
基础知识:Dify 错误排查
Case1:Dify 卡在管理员界面 查看容器状态 docker compose ps 可以看到有个容器异常:docker_db_1 的状态是 Restarting(表示一直在重启) 解决方案 参考:https://github.com/langgenius/dify/issues/5731...
spring cloud微服务断路器详解及主流断路器框架对比
微服务断路器详解 1. 核心概念 定义:断路器模式通过快速失败机制防止故障扩散,当服务调用出现异常或超时时,自动切换到降级逻辑,避免级联故障。核心功能: 熔断:在故障阈值(如错误率)…...
BufferedReader 终极解析与记忆指南
BufferedReader 终极解析与记忆指南 一、核心本质 BufferedReader 是 Java 提供的缓冲字符输入流,继承自 Reader,通过内存缓冲和行读取功能极大提升文本读取效率。 核心特性速查表 特性说明继承链Reader → BufferedReader缓冲机制默认 8KB 字符缓冲…...
linux-设置每次ssh登录服务器的时候提醒多久需要修改密码
在 Linux 系统中,你可以通过设置 motd(Message of the Day)或 sshd 配置来在用户通过 SSH 登录时提醒他们密码即将过期。以下是具体步骤: 方法 1: 使用 motd 文件 motd 文件在用户登录时显示,你可以通过脚本动态生成内容,提醒用户密码过期时间。 编辑 /etc/motd 文件:…...
(小白0基础) 微调deepseek-8b模型参数详解以及全流程——训练篇
本篇参考bilibili如何在本地微调DeepSeek-R1-8b模型_哔哩哔哩_bilibili 上篇:(小白0基础) 租用AutoDL服务器进行deepseek-8b模型微调全流程(Xshell,XFTP) —— 准备篇 初始变量 max_seq_length 2048 dtype None load_in_4bit True单批次最大处理模型大小dy…...
调用LLM的api
目录 chatgptdemo可选模型 chatgpt demo import openai openai.api_key xxxxxxxxx # 自己的api key openai.api_base https://api.feidaapi.com/v1 # 中转非直连 # response openai.ChatCompletion.create( # model"gpt-4o", # messages[ # {"rol…...
关于汽车辅助驾驶不同等级、技术对比、传感器差异及未来发展方向的详细分析
以下是关于汽车辅助驾驶不同等级、技术对比、传感器差异及未来发展方向的详细分析: 一、汽车辅助驾驶等级详解 根据SAE(国际自动机工程师学会)的标准,自动驾驶分为 L0到L5 六个等级: 1. L0(无自动化&…...
windows安卓子系统wsa隐藏应用列表的安装激活使用
Windows 11 安卓子系统应用部署全攻略 windows安卓子系统wsa隐藏应用列表的安装激活使用|过检测核心前端 在 Windows 11 系统中,安卓子系统为用户带来了在电脑上运行安卓应用的便利。经过一系列的操作,我们已经完成了 Windows 11 安卓子系统的底层和前端…...
mongodb7日志特点介绍:日志分类、级别、关键字段(下)
#作者:任少近 上篇《mongodb7日志特点介绍:日志分类、级别、关键字段(上)》 链接: link 文章目录 4.日志会输出F/E/W/I四种情况5.日志关键字段6.日志量验证情况7.总结 4.日志会输出F/E/W/I四种情况 在MongoDB7中,日志输出按照严重性分为四种…...
word中插入图片显示不完整,怎么处理让其显示完整?
在WORD里插入图片后,选择嵌入式发现插入的图片显示不正常,只能显示底部一部分,或者遮住文字。出现此故障的原因有可能是设置为固定值的文档行距小于图形的高度,从而导致插入的图形只显示出了一部分。 1.选中图片,然后点…...
SAP S4HANA embedded analytics
SAP S4HANA embedded analytics...
大模型在胃十二指肠溃疡预测及治疗方案制定中的应用研究
目录 一、引言 1.1 研究背景与意义 1.2 国内外研究现状 1.3 研究目的与方法 二、胃十二指肠溃疡概述 2.1 疾病定义与分类 2.2 流行病学特征 2.3 病因与发病机制 2.4 临床表现与诊断方法 三、大模型技术原理与应用现状 3.1 大模型基本概念与架构 3.2 在医疗领域的应…...
macos下 ~/.zshrc~ 和 ~/.zshrc
macos下 ~/.zshrc~ 和 ~/.zshrc ~/.zshrc通常是备份文件或临时文件,可能由编辑器(如vim)创建,通常可以安全删除,不会影响系统运行。 在Mac下,这种带~后缀的备份文件通常是由以下情况产生: 常…...
【C语言基础】双指针在qsort函数中的应用
在C语言中使用 qsort 对字符串数组(如 char* 数组)排序时,必须转换为双指针(char**),这是由字符串数组的内存结构和 qsort 的工作原理决定的。以下是详细解释: 一、底层原理分析 1. 字符串数组…...
Android组件刷新
Android中刷新View的方法有以下几种: 调用invalidate()方法,该方法会使View树中的所有视图无效或脏,等待下一次绘制时重新绘制。例如: mCustomView.invalidate(); 调用postInvalidate()方法,该方法类似于invalidate()…...
JavaWeb开发 Servlet底层 Servlet 过滤器 过滤器和拦截器 手写一个限制访问路径的拦截器
目录 万能图 过滤器自我理解 案例 实现Filter 接口 配置文件 web.xml 将过滤器映射到 servlet 用处 拦截器 手写案例 重写 preHandle() 方法 拦截处理 重写 postHandle() 方法 后处理 重写 afterHandle() 方法 完成处理 代码 如何配置拦截器 万能图 还是看一下这张…...
QT中多线程写法
转自个人博客:QT中多线程写法 1. QThread及moveToThread() 使用情况: 多使用于需要将有着复杂逻辑或需要一直占用并运行的类放入子线程中执行的情况,moveToThread是将整个类的对象移入子线程。 优缺点: 优点:更符合…...
0415-批量删除操作
关于删除的全部代码: <!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title>Insert title here</title> <script src"js/jquery-3.7.1.min.js"></script> <srcipt src"js/jqu…...
Day08 【基于余弦相似度实现的表示型文本匹配】
基于余弦相似度实现的表示型文本匹配 目标数据准备参数配置数据处理初始化方法加载数据编码句子补齐与截断重写父类两个方法采样策略加载词表和方案 模型构建SentenceEncoder类SiameseNetwork类优化器配置 主程序验证与评估推理预测测试结果 目标 本文基于给定的词表ÿ…...
【leetcode hot 100 72】编辑距离
解法一:递归 解法二:(动态规划)①定义:dp[i][j]为word1中前i个字符转化为word2中前j个字符所需操作数;dp[m1][n1] ②初始状态:dp[0][j]j(0变为j,需要j步),dp[i][0]i(i变为0ÿ…...
Dubbo、HTTP、RMI之间的区别
Dubbo、HTTP、RMI之间的区别如下: 表格 复制 特性DubboHTTPRMI通信机制基于Netty的NIO异步通信,采用长连接,支持多种序列化方式基于标准的HTTP协议,无状态,每次请求独立基于Java原生的RMI机制,支持Java对…...
Java练习——day1(反射)
文章目录 练习1练习2练习3思考封装原则与反射合理使用反射“破坏”封装的场景 练习1 编写代码,通过反射获取String类的所有公共方法名称,并按字母顺序打印。 示例代码: import java.lang.reflect.Method; import java.util.Arrays;public …...
golang的slice扩容过程
Go 语言中的切片扩容机制是 Go 运行时的一个关键部分,它确保切片在动态增加元素时能够高效地管理内存。这个机制是在 Go 运行时内部实现的,涉及了内存分配、数据拷贝和容量调整。扩容的实现主要体现在 runtime.growslice 函数中。下面我们将深入分析 Go …...
Swift —— delegate 设计模式
一、什么是 delegate 模式 所谓 delegate 就是代理模式。简单来说,delegate 模式就是在类的函数里运行完一段代码后,你可以通过一个符合某个代理协议的属性来调代理的方法。其中,代理方法就是回调函数。 二、delegate 模式与闭包比的优势 …...
Docker 安装 Elasticsearch 8.x
Docker 安装 Elasticsearch 8.x 前言一、准备工作二、设置容器的目录结构三、启动一个临时的容器来复制配置文件四、复制配置文件到本地目录五、删除临时容器六、创建并运行容器,挂载本地目录七、修改文件配置监听端口八、端口配置:Host 网络模式 vs Por…...
Vue工程化开发脚手架Vue CLI
开发Vue有两种方式 核心包传统开发模式:基于html / css / js 文件,直接引入核心包,开发 Vue。工程化开发模式:基于构建工具(例如:webpack)的环境中开发Vue。 脚手架Vue CLI Vue CLl 是 Vue 官方…...
开源智慧巡检——无人机油田AI视频监控的未来之力
油田巡检,关乎能源命脉,却常受困于广袤地形、高危环境和人工效率瓶颈。管道泄漏、设备故障、非法闯入——这些隐患稍有疏忽,便可能酿成大患。传统巡检已无法满足现代油田对安全与效率的需求,而无人机油田巡检系统正以智能化之力重…...
数字ic后端设计从入门到精通(含fusion compiler, tcl教学)
pin 在集成电路设计中,特别是在使用工具如 Fusion Compiler 时,理解“引脚”(pin)的基础知识对于设计、优化和验证电路至关重要。以下是从 Fusion Compiler 的角度出发,关于引脚(pin)的基础知识…...
