96SEO 2026-02-23 15:09 18
。

AT-09模块基于蓝牙4.0技术#xff0c;具有低功耗、高传输速率和广泛的应用范围。
AT-09模块支持AT指令#xff0c;通过串口与外部设备进行通信。
用户可以使用AT指令对模块进行配…1、串口蓝牙模块AT-09
AT-09是一种串口蓝牙模块可实现串口与蓝牙之间的数据传输。
AT-09模块基于蓝牙4.0技术具有低功耗、高传输速率和广泛的应用范围。
AT-09模块支持AT指令通过串口与外部设备进行通信。
用户可以使用AT指令对模块进行配置和控制例如设置蓝牙名称、密码、通信速率等。
通过串口用户可以与AT-09模块进行数据传输实现与蓝牙设备的无线通信。
AT-09模块通常用于无线传输、数据采集等应用场景。
它可以与各种主控板和设备进行连接如Arduino、Raspberry
Pi等。
通过AT-09模块用户可以方便地将串口设备无线化实现无线控制和数据传输。
有了这个串口蓝牙模块我们就可以用手机远程控制很多物联网设备了。
有了通信网整个世界都变得更加丰富多彩了。
串口蓝牙模块所用的蓝牙芯片是CC2541而真正的无线通信是靠CC2541收发数据。
串口仅仅是用来将无线收发的数据通过串口送开发板微处理器。
CC2541是一款针对低能耗以及私有2.4GHz应用的功率优化的真正片载系统SoC解决方案。
它使得使用低总体物料清单成本建立强健网络节点成为可能。
CC2541将领先RF收发器的出色性能和一个业界标准的增强型8051MCU、系统内可编程闪存存储器、8kBRAM和很多其它功能强大的特性和外设组合在一起。
CC2541非常适合应用于需要超低能耗的系统。
通过下图可以看出真正片载系统Soc即串口底板片上蓝牙模块。
具体的原理内部结构功能引脚等等请看数据手册把。
通过USB-TTL与电脑或者开发板连接与电脑的连接可以参考我这个专栏的语音模块syn6288那一部分。
我们这里还是介绍与树莓派的接线引脚引出线只有4根这样就好接线了VCC接开发板5VGND接地TXD接开发板的RXD0BOARD10RXD接开发板的TXD0BOARD8
这个部分最简单但是也最重要因为手机上要有应用程序和蓝牙模块建立连接。
手机上的蓝牙应用程序可不是C或Python写的具体我们也不要管它了我们下载一个别人写好的能用的蓝牙助手安卓手机安装包的名称为HCbluetooth.apk。
然后将蓝牙模块也插上电上电后蓝牙模块的指示灯不停闪烁。
在手机上找到刚刚安装的HC蓝牙助手点击打开打开后搜索到该模块点击连接就OK了。
连接上之后蓝牙模块的灯就不会闪了一直亮着然后把这几个模块都看看。
这个发送速度就设置为中就可以经测试为波特率为9600停止位1位数据位8位奇偶校验无回头开发板的串口也设置为一样即可。
本以为很简单的事情运行程序后收到的数据不正常或者收不到数据。
耽误了大半天时间经过我一顿思考和尝试这里有个坑同学们注意。
如果你还没有运行程序请先看第5部分。
这些看似很多问题可能是由于同一个问题导致的就是蓝牙串口使用了ttyS0设备该设备默认让用户通过串口登录很久以前windows有个超级终端的串口登录估计同学们都不知道了那已经是20多年前的事情了以前都是都过串口登录到设备做一些调试比如路由器、交换机。
该树莓派也是打开串口让用户登录。
所以在通过蓝牙串口发送数据给树莓派时开启了串口终端登录。
我们到树莓派配置里面将这个功能给关闭。
有了这个模块我们就可以发送数据给开发板了比如打开第1个灯关闭第1个灯或者开1关1总之python语言中对字符串的处理是非常方便的。
只要包含开关这两个字就知道状态给0还是1然后再从字符串中提取数字把这个值赋值给变量即可。
我这边为了节省IO口仍然用TM1638扩展板做如果同学们没有就直接放2个LED实现效果即可。
tmtmTM1638.TM1638(stb36,clk38,dio40)
serserserial.Serial(DEVICE,baudrate9600,bytesize8,parityN,stopbits1,timeout0.1)def
ser.readall().decode(utf-8).strip()print(收到的数据:,
data结束程序:breakelse:ser.write(bytes(没有给出正确的指令,utf-8))
int(first_number)8:tm.led(int(first_number)-1,status)
else:ser.write(bytes(没有给出正确的LED号码1-8,utf-8))if
__main__:init()try:main_loop()except
KeyboardInterrupt:print(程序结束)finally:tm.clear()ser.close()程序解释
1程序代码没有多少行这就体现了Python语言的精练同样的代码用C来写你试试把。
可能有同学觉得树莓派毕竟是一台口袋电脑用来做物联网成本有点高而低成本的处理器可能不支持python。
我这里有个想法但是还没有考虑成熟等我把树莓派栏目写完我打算用ESP32或ESP8266做MicroPython的实验或项目看看MicroPython在物联网上面和C的性能差距有多少。
2串口设置不管有些参数是不是默认值还是将波特率、数据位、停止位、奇偶校验都设置下。
serserial.Serial(DEVICE,baudrate9600,bytesize8,parityN,stopbits1,timeout0.1)
串口通信超时解决方案在进行串口通信时可能会遇到以下两个问题a读取串口数据时阻塞时间过长造成程序无法及时响应。
b进行写操作时设备没有及时响应。
为了解决这些问题我们可以使用Python的serial库提供的timeout参数来设置超时时间。
timeout参数是一个浮点数代表等待数据的最长时间以秒为单位。
当没有数据可读时等待超过指定的超时时间后将触发超时异常。
ser.readall().decode(utf-8).strip()
收到的数据都是以字节流的形式放到接收缓冲区上面是正确的接收我之前写的代码是
结果发现utf8编码的汉字被拆成3个字节一个一个的printpython就没有办法解码了。
4输入相关指令对LED进行控制可以先让程序发一段解释说明给手机这样最好。
data结束程序:breakelse:ser.write(bytes(没有给出正确的指令\n,utf-8))
当然我这个程序if的嵌套逻辑结构不是最好的如果业务逻辑比较丰富的话可以参考模块化编程的思想和方法。
5指令包括2个参数一个是第几个灯一个是状态所以状态通过开关来给定第几个灯要从用户输入的内容里面提取数字再判断数字的有效范围。
re.search(r\d,data)这里用到了正则表达式需要导入re库正则表达式是一种强大的文本处理工具用于匹配、查找、替换复杂的文本模式。
它由普通字符和特殊字符元字符组成能够描述和匹配一系列符合特定规则的字符串。
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback