蓝牙模块(HC-05)与手机连接,蓝牙与蓝牙互联,电脑通过蓝牙控制单片机
任务一:蓝牙与手机连接
所用模块:
HC-05蓝牙模块,USB TO TTL手机APP为SPP蓝牙串口
第一章:蓝牙模块配置
一:HC-05与USB TO TTL连接
EN:为使能引脚,一般不接
VCC:接USB TO TTL模块的5v脚(3.3v不亮)
GND:接USB TO TTL模块的GND脚
TXD:接USB TO TTL模块的RXD脚
RXD:接USB TO TTL模块的TXD脚
STATE:状态引脚,一般不接
二:进入AT模式
按住按键的同时插上USB TO TTL,指示灯1S慢闪
三:设置参数
进入AT模式后,电脑连接串口助手,设置波特率为38400(AT模式下,默认)
依次发送以下指令,返回均为OK
1)AT:进入AT模式
2)AT+ORGL:恢复出厂设置,以防止该模块被其他人使用过
3)AT+PSWD=“XXXX”:设置匹配密码,最低4位(AT+PSWD?:查看蓝牙模块密码)
4)AT+NAME=XXX:设置蓝牙模块名字(AT+NAME?:查看蓝牙模块名字)
5)AT+UART=115200,0,0:设置通信波特率,但不是AT模式波特率,波特率设置为115200,停止位和校验位为0(AT+UART?:查看波特率)
第二章:手机APP下载以及配置
一:手机应用商店下载SPP蓝牙串口APP
测试过几款应用,该应用比较好用
二:不按按键重新连接蓝牙模块
进入正常工作模式,此时波特率为115200,停止位和校验位为0
三:连接蓝牙
打开SPP蓝牙串口APP连接蓝牙即可发送接受数据

== 注意:==串口助手设置波特率为115200,手机APP设置为utf-8编码模式
任务二:蓝牙模块之间的相互通信
所用模块:
两个HC-040蓝牙模块,两个USB TO TTL
第一章:蓝牙模块配置
一:连接HC-05与USB TO TTL(两个蓝牙均是)
EN:为使能引脚,一般不接
VCC:接USB TO TTL模块的5v脚(3.3v不亮)
GND:接USB TO TTL模块的GND脚
TXD:接USB TO TTL模块的RXD脚
RXD:接USB TO TTL模块的TXD脚
STATE:状态引脚,一般不接
二:进入AT模式(两个蓝牙均是)
按住按键的同时插上USB TO TTL,指示灯1S慢闪
三:设置参数
进入AT模式后,电脑连接串口助手,设置波特率为38400(AT模式下,默认)
(1)从蓝牙模块配置:
依次发送以下指令,返回均为OK
1)AT:进入AT模式
2)AT+ORGL:恢复出厂设置,以防止该模块被其他人使用过
3)AT+PSWD=“XXXX”:设置匹配密码,最低4位(AT+PSWD?:查看蓝牙模块密码)
4)AT+NAME=XXX:设置蓝牙模块名字(AT+NAME?:查看蓝牙模块名字)
5)AT+UART=115200,0,0:设置通信波特率,但不是AT模式波特率,波特率设置为115200,停止位和校验位为0(AT+UART?:查看波特率)
6)AT+ROLE=0:设置为从模式(0为从模式,2为回环角色(远程蓝牙)。AT+ROLE?:查看模式)
7)AT+ADDR?:查看从机地址,复制该地址用于主机连接,我用的从机地址为(98d3:91:fd3eb3)
(1)主蓝牙模块配置:
依次发送以下指令,返回均为OK
1)AT:进入AT模式
2)AT+ORGL:恢复出厂设置,以防止该模块被其他人使用过
3)AT+PSWD=“XXXX”:设置匹配密码,最低4位(AT+PSWD?:查看蓝牙模块密码)
4)AT+NAME=XXX:设置蓝牙模块名字(AT+NAME?:查看蓝牙模块名字)
5)AT+UART=115200,0,0:设置通信波特率,但不是AT模式波特率,波特率设置为115200,停止位和校验位为0(AT+UART?:查看波特率)
6)AT+ROLE=1:设置为主模式(0为从模式,2为回环角色(远程蓝牙)。AT+ROLE?:查看模式)
7)AT+BIND=98d3,91,fd3eb3:连接从机,(98d3,91,fd3eb3)为从机地址,“:”要变为”,“,(AT+BIND?;现连接地址)
8)AT+CMODE=0:当前连接模式(0为指定地址连接,1为任意地址连接模式,2为回环角色,默认为0)
第二章:蓝牙连接
一:不按按键重新连接蓝牙模块
进入正常工作模式,此时波特率为115200,停止位和校验位为0
二:蓝牙相互连接
观察蓝牙模块隔1S同时闪2下为连接成功,此时便可进行数据传递
==注:==数据传递过程为:电脑👉USB TO TTL👉主蓝牙👉从蓝牙👉USB TO TTL👉电脑

注意波特率为115200
任务三:蓝牙控制单片机LED灯亮灭(HAL库)
所用模块:
两个HC-040蓝牙模块,两个USB TO TTL,STM32F103C8T6开发板
第一章:模块配置
同任务二
第二章:代码部分
一:STM32CubeMAX配置

二:keil5 mdk-arm配置
(1):main文件
1)

设一个参数,用来接受串口发送的数据
2)

加入HAL_UART_Receive_IT(&huart1,&g_ucUsart1ReceiveData,1);开启串口中断
(2)stm32f1xx_it.c文件
1)

调用参数g_ucUsart1ReceiveData接收数据
2)
使用中断回调函数发送接受数据,可以保证LED状态的实时性
相关文章:
蓝牙模块(HC-05)与手机连接,蓝牙与蓝牙互联,电脑通过蓝牙控制单片机
任务一:蓝牙与手机连接 所用模块: HC-05蓝牙模块,USB TO TTL手机APP为SPP蓝牙串口 第一章:蓝牙模块配置 一:HC-05与USB TO TTL连接 EN:为使能引脚,一般不接 VCC:接USB TO TTL模…...
安装 eslint 配置指南 及 遇到的一些问题记录
前端eslint配置指南 背景 当前前端项目风格混乱,每个人有自己的开发习惯,有自己的格式化习惯,不便于项目的风格统一,不利于代码维护有的项目eslint没有用起来,没有起到规范代码的作用,导致出现一些基础代码…...
trzsz支持文件拖动到终端进行上传,类似lrzsz
考虑到 LapTop -> Host 1 -> Host 2 -> Docker -> TMUX,使用scp或sftp命令不方便;使用rz和sz命令就会方便很多,但是却又与 TMUX 不兼容(备注:Tmux是一个终端复用工具,允许用户在一个终端窗口中…...
Doris DDL和DML
1 创建用户和数据库 1)创建test用户 mysql -h hadoop1 -P 9030 -uroot -p create user test identified by test; 2)创建数据库 create database test_db; 3)用户授权...
NewStarCTF2023 Reverse方向Week3 ez_chal WP
分析 题目:ez_chal 一个XTEA加密, V6是key,v5是输入,然后v7就是密文。 看了v6,要用动调。 ELF文件用ida的远程调试。 然后在kali上输入长度为32的flag 全部转换成dd 再提取密文。 EXP #include <stdio.h>…...
程序员如何“升级打怪”?我用了这几个“歪瓜”!
不会吧?不会吧?计算机本命专业出身、以及半路出家的,混了几年了,还在新手村?对得起这几年摸的鱼? 思考一下:如何从小白一跃为大师,从此走上人生巅峰、迎娶白富美?变强只…...
模具制造厂ERP都有哪些牌子?模具制造厂ERP有什么用
模具制造通常会涉及物料领用、成品入库、工艺流转、投入水口、配方、模具、生产啤数统计等众多环节,各个环节数据的实时和准确传递,有利于企业清晰掌握订单生产进度,及时调整制造策略等。 有些模具制造工厂采用传统的管理模式,随…...
FPGA语法相关知识合集
一.相关概念 1.四种结构说明语句 2.initial 与 always 的异同点 3.task 与 function 的3个不同点 4.task的语法结构(定义及调用) 5.function的语法结构(定义及调用) 6.function 的一个必须有和一个必须没有,使用规则 7.自动(递归)函数…...
2023年Java核心技术大会(Core Java Week 2023)-核心PPT资料下载
一、峰会简介 人工智能在22年、23年的再次爆发让Python成为编程语言里最大的赢家;云原生的持续普及令Go、Rust等新生的语言有了进一步叫板传统技术体系的资本与底气。我们必须承认在近几年里,Java阵营的确受到了前所未有的挑战,出现了更多更…...
Vue3 源码解读系列(十五)——编译
编译 web 模式的编译主要做了 3 件事: 解析 template 生成 ASTAST 转换生成代码 /*** web 编译* param {string} template - 待编译的模板字符串* param {string} options - 配置对象*/ function compile(template, options {}) {return baseCompile(template, …...
gitlab安装配置及应用
安装 ##安装依赖 yum install -y curl policycoreutils-python openssh-server perl#上传包 rz gitlab-jh-16.5.2-jh.0.el7.x86_64.rpm 安装 yum install gitlab-jh-16.0.3-jh.0.el7.x86_64.rpm 初始化并启动 # 以下两种方法都可以配置访问地址,第一种需要在yum安…...
Docker Volume: 实现容器间数据共享与持久化的利器
文章目录 Docker Volume的作用Docker Volume与容器内数据的比较优势劣势 Docker Volume的创建和管理创建Docker Volume管理Docker Volume 演示Docker Volume的挂载Docker Volume的生命周期安全性考虑与Docker Volume应用场景Docker Volume与多容器协作容器迁移与Docker Volume未…...
redis问题归纳
1.redis为什么这么快? (1)基于内存操作:redis的所有数据都存在内存中,因此所有的运算都是内存级别的,所以性能比较高 (2)数据结构简单:redis的数据结构是专门设计的&…...
改进YOLOv8:结合ConvNeXt V2骨干网络!使用MAE共同设计和扩展ConvNet
🗝️YOLOv8实战宝典--星级指南:从入门到精通,您不可错过的技巧 -- 聚焦于YOLO的 最新版本, 对颈部网络改进、添加局部注意力、增加检测头部,实测涨点 💡 深入浅出YOLOv8:我的专业笔记与技术总结 -- YOLOv8轻松上手, 适用技术小白,文章代码齐全,仅需 …...
基于SpringBoot+Vue的新能源汽车充电桩管理系统
基于SpringBootVue的新能源汽车充电桩管理系统的设计与实现~ 开发语言:Java数据库:MySQL技术:SpringBootMyBatisVue工具:IDEA/Ecilpse、Navicat、Maven 系统展示 主页 充电桩详情 管理员界面 摘要 本项目是基于Spring Boot 和 …...
Linux进程通信——消息队列
概念 消息队列,是消息的链接表,存放在内核中。一个消息队列由一个标识符(即队列ID)来标识。 特点 1.消息队列是面向记录的,其中的消息具有特定的格式以及特定的优先级。(消息队列是结构体) 2.消息队列独立于发送与接…...
ArcGIS教程——ArcGIS工具-按线分割面
功能说明 在ArcGIS数据处理过程中,有时需要沿线把面要素分割开,可以使用高级编辑中的分割面(Cut Polygon)工具。那么,如果要用线图层分割面图层该怎么办呢?地理遥感生态网平台开发了一个自定义模型工具。它…...
C语言进阶之冒泡排序
✨ 猪巴戒:个人主页✨ 所属专栏:《C语言进阶》 🎈跟着猪巴戒,一起学习C语言🎈 目录 前情回顾 1、回调函数 2、冒泡排序 3、库函数qsort cmp(sqort中的比较函数,需要我们自定义) …...
零代码编程:用ChatGPT将SRT字幕文件批量转为Word文本文档
一个文件夹中有多个srt视频字幕文件,srt文件里面有很多时间轴: 现在想将其批量转为word文档,去掉里面与字符无关的时间轴,在ChatGPT中输入提示词: 你是一个Python编程专家,要完成一个批量将SRT字幕文件转为…...
力扣刷题第二十六天--二叉树
前言 昨天看总决赛,差距太大,看的没意思,真的是一点变通没有啊。难受,没有写题的状态了。大概率是最后一次看比赛了,青春已复过,白日忽相催。召唤师要和生活对线了。英雄们的语音,台词…...
2026-05-09:不同元素和至少为 K 的最短子数组长度。用go语言,给定一个整数数组 nums 和一个整数 k。你需要在数组中找一个连续的非空子数组,使得这个子数组里不同元素的种类数对应的取值之
2026-05-09:不同元素和至少为 K 的最短子数组长度。用go语言,给定一个整数数组 nums 和一个整数 k。你需要在数组中找一个连续的非空子数组,使得这个子数组里不同元素的种类数对应的取值之和(也就是:每个数只算一次&am…...
如何构建支持多账号并发的企微 API 分布式管理系统
前言: 当企业规模扩大,需要管理数十个甚至上百个企微号时,单机脚本往往力不从心。本文将分享如何利用 QiweAPI 结合消息队列(Redis),构建一个高可用、分布式账号管理架构。 1. 核心架构图 系统分为三层&am…...
收藏 | AI赋能产品经理:从重复劳动到战略决策,效率翻倍秘籍
本文针对AI产品经理面临的工作困境,提出通过AI工具承接专业方法论,实现产品全流程效率提升的策略。文章详细拆解了从需求收集、分析、分类到优先级排序、业务建模、原型设计、需求撰写、验收标准制定等核心节点的AI应用方法,强调AI作为方法论…...
Next.js + TypeScript 企业级项目模板:开箱即用的工程化最佳实践
1. 项目概述:一个面向现代Web开发的坚实起点如果你正在寻找一个能让你快速上手、架构清晰且生产就绪的Next.js TypeScript项目模板,那么jpedroschmitz/typescript-nextjs-starter这个仓库很可能就是你需要的那个“瑞士军刀”。这不是一个简单的“Hello …...
在多轮对话场景下体验taotoken路由策略对api调用稳定性的提升
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在多轮对话场景下体验 Taotoken 路由策略对 API 调用稳定性的提升 效果展示类,分享在构建需要长时间会话的 AI 应用时&…...
【车辆】大规模连接车辆协作自动化的并行优化算法附matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、程序设计科研仿真。 🍎完整代码获取 定制创新 论文复现点击:Matlab科研工作室 👇 关注我领取海量matlab电子书和数学建模资料 &…...
【布局优化】基于改进SLP与遗传算法的梁场布局优化附Matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、程序设计科研仿真。 🍎完整代码获取 定制创新 论文复现点击:Matlab科研工作室 👇 关注我领取海量matlab电子书和数学建模资料 &…...
英特尔移动战略失败解析:技术路径依赖与生态博弈的教训
1. 从一则旧闻看科技巨头的战略转型之痛周一清晨的硅谷,空气里弥漫的不仅是咖啡因,还有无形的压力。2016年4月5日,对于时任英特尔无线业务负责人的艾莎埃文斯来说,这个周一格外艰难。一则来自彭博社的报道,将她离职的消…...
扣子实战:告别剪辑熬夜!Seedance2.0 联动扣子,一键生成专业口播电商带货短视频
大家好,我是专注于AI的咕咕姐。 CozeSeedance一键生成爆火电商口播带货短视频做电商、玩短视频的朋友,是不是都有同一个痛点? 想做带货口播视频,没人出镜、不会写脚本、不懂剪辑配音,花钱找人拍成本高,自己…...
Token需求狂飙千倍,22亿热钱涌向这家AGI Infra头号玩家
衡宇 发自 凹非寺量子位 | 公众号 QbitAI在今年的GTC大会上,黄仁勋宣告:英伟达已不再局限于一家芯片或 GPU 公司,而是全面转型为全栈式 AI 基础设施公司。这让“AI基础设施”再度站在了行业的风口中央。事实上,早在风口来临之前&a…...
