字符串还是字节串?源师兄软串口数据发送类型选择完全解析

发布时间:2026/9/25 1:37:31
字符串还是字节串?源师兄软串口数据发送类型选择完全解析 字符串还是字节串源师兄软串口数据发送类型选择完全解析【免费下载链接】software-serial-module源师兄扩展项目: 软串口模块 | 由源师兄组织创建项目地址: https://gitcode.com/yuanshixiong/software-serial-module源师兄软串口模块software-serial-module是一款面向开源教育硬件的软串口扩展通过图形化积木与 Python 库把文字、图片指令发送到外接扩展屏。本文完整解析发送数据时字符串与字节串的区别用 3 个场景教你选对类型彻底告别乱码。一、软串口是什么和硬串口有什么区别串口UART是开发板与外部设备之间的一对一通话通道。硬串口由芯片硬件直接产生波形速度快但引脚数量有限软串口SoftUART由软件模拟时序用普通 GPIO 引脚实现引脚选择更灵活源师兄软串口模块的核心是 SoftUART.py 中的SUART()函数传入 TX 引脚号就得到一个可发送数据的软串口对象其中 RX 固定使用 P0。模块其他文件积木定义与代码生成blocksdef.js积木分类软串口栏目category.json设备说明config.json定位为通过串口控制显示屏显示图片和文字二、字符串 vs 字节串本质区别一眼看懂对比项字符串字节串本质有编码含义的字符无含义的原始字节写法示例你好b\xe4\xbd\xa0\xe5\xa5\xbd可读性直接可读需解码才能读懂你 占多少1 个字符3 个字节UTF-8典型场景屏幕文本显示二进制协议、控制命令关键点串口线上跑的全是字节。你好作为字符串是2 个字符编码成 UTF-8 字节串后是6 个字节。只要发送端与接收端约定好同一种编码这里默认 UTF-8中文就能安全到达。三、源师兄软串口发送积木的工作原理发送积木软串口 | 发送定义见 blocksdef.js有一个下拉框可选字节串或字符串后面再拼接要发送的数据。代码生成逻辑blocksdef.js选字节串suart_.write(数据.encode(utf-8))—— 先把输入显式编码为 UTF-8 字节串再发送选字符串suart_.write(数据)—— 把内容直接交给发送接口初始化积木blocksdef.js负责创建对象从 P1 / P2 / P8 / P12 / P15 / P16 中选一个引脚生成suart_ SUART(引脚号)后续发送积木都挂在它下面使用。四、字符串还是字节串3 个场景快速判断你要发送的内容推荐选择原因中文文字、屏幕显示文本字节串显式 UTF-8 编码每字 3 字节不乱码纯 ASCII 短命令如ATRESET字符串1 字符 1 字节两种选项结果一致字符串更省事二进制协议帧、控制指令字节串需要按字节精确控制⚡一句话口诀发中文、发协议选字节串发英文短命令字符串即可。五、新手必避的 3 个坑顺序坑⚠️必须先初始化引脚再发送。初始化积木会生成suart_对象blocksdef.js不初始化发送积木无处可发。乱码坑中文乱码几乎都是编码不一致。UTF-8 下你好是 6 个字节若接收端按其他编码解读就会变成问号或怪字符。引脚坑RX 固定在 P0TX 只能从 P1 / P2 / P8 / P12 / P15 / P16 中选见 SoftUART.py接线前先确认硬件引脚避免与其他外设冲突。六、从初始化到发送完整上手步骤从软串口栏目拖出初始化引脚积木选择 P8拖出发送积木拼接到初始化积木下方按上表选择字符串 / 字节串填入要发送的内容栏目默认示例为你好见 category.json运行程序在外接扩展屏上验证显示效果✅总结字符串是人读的字符字节串是线上跑的原始数据。源师兄软串口模块把类型选择做成了下拉框中文与二进制协议选字节串英文短命令选字符串——选对类型发送就成功了一半。【免费下载链接】software-serial-module源师兄扩展项目: 软串口模块 | 由源师兄组织创建项目地址: https://gitcode.com/yuanshixiong/software-serial-module创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考