单片机简单的蓝牙控制app

简易单片机手机APP蓝牙控制风扇设计
本设计是基于和手机APP的设计。功能描述:智能手机上安装蓝牙APP,通过手机发布命令,关或者开,系统中的蓝牙模板接收到信号,传送给单片机,然后单片机根据指令来控制继电器的开、关,实现单片机和手机的控制作用。实物演示:附件内容:包含了单片机手机APP蓝牙控制风扇电路原理图、源码、app、参考资料等。如有问题,请主动QQ联系卖家本人:C106工作室的其他电路,请点击以下链接:
电路相关文件(请在PC端查看下载)
扫码关注电路设计技能
电路城电路折扣劵获取途径:
电路城7~10折折扣劵(全场通用):对本电路进行评分获取;
电路城6折折扣劵(限购≤100元电路):申请成为卖家,上传电路,审核成功后获取。
版权声明:电路城所有电路均源于网友上传或网上搜集,供学习和研究使用,其版权归原作者所有,对可以提供充分证据的侵权信息,本站将在确认后24小时内删除。对本电路进行投诉建议,点击反馈给电路城。
使用说明:直接使用附件资料或需要对资料PCB板进行打样的买家,请先核对资料的完整性,如果出现问题,电路城不承担任何经济损失!
大家都在看:
本设计中,在按键处理方面,下了不少功夫,虽然只有三个按键,不同状态下,实现不同的功能。为了节省用电,设计背景灯有按键铵下才亮,延时5秒后灭.长按K1进入设置状态,按K2移位,K3数字加.依次设置年月日,星期,时分秒,闹钟1,闹钟2。在走时状态下,按K2显示闹钟1,按K3显示闹钟2,延时5秒后返回走时.在显示闹钟状态下,按K1,开关闹钟,显示"*"为开.走时状态下显示"%"为只有一个闹钟开,显示"@"为两个闹钟开.在闹钟响铃时,按任意键关闭声音。做出来的实物图片:
来自:时间:
研究的目的和意义:CC2530芯片构成ZigBee协调器和ZigBee无线传感器节点来获取车辆信息,经过数据处理后实时反馈给协调器,再经过串口传至上位机,最后在上位机监控平台上实现对车辆信息的实时监控和存储。该系统能够即时的显示车辆从驶入车库到驶出车库全过程中的信息并同步存入数据库信息表中,从而说明其运行情况良好,具有很好的研究价值。统车库管理系统存在布线困难和智能化程度低等缺点,将基于ZigBee无线传感器网络技术应用于大型车库监视和管理领域.通过无线传感器网络和防盗、防火、报警系统相结合,构建了基于无线传感器网络的车库管理系统,能够快速方便的管理车位,对车库内的环境信息进行可靠监测,实现对车库的有效管理2. 研究基本思路:本系统采用以ARM低功耗的芯片作为整个控制系统的控制芯片,本系统分为主节点和从节点两个控制系统。主节点控制系统和节点控制系统通过ZIGBEE无线传输模块来实现数据之间的相互传输。主节点系统主要是对从节点系统实时监测和控制,而从节点系统主要是将汽车出入库的数据及车库中的环境等进行数据采集。主节点系统设计思路:
主节点由显示与触摸功能于一体的的串口屏来实现对整个系统的实时显示和控制。将具有涓细电流充电能力低功耗的DS1302芯片作为实时时钟芯片,单片机通过与DS1302芯片进行实时的数据通信,单片机将处理的信息通过串口通信将处理的时间数据实时在串口屏上显示。主节点采用低复杂度、低功耗、低成本、高可靠性、高安全性的双向无线通信技术ZIGBEE与从节点之间进行数据传输。同时采用价格低,声音频率可控,功耗低的有源蜂鸣器来实现系统的警报。从节点系统设计思路:
采用低电压、低成本、体积小的非接触式读写卡器RC522模块进行IC卡的识别,过主控系统可进行添卡删卡的操作。同时采用以SPI通信进行闪存的W26Q64芯片来对车库实时数据的存储。同时节点系统搭配环境质量模块,温湿度模块,火焰模块等针对车库中可能出现的情况进行数据采集,并实时通过ZIGBEE模块将实时数据传输至主控界面。节点系统也同时拥有一个DS1302时钟模块,方便节点系统在没有接收到主控系统数据之时可进行离线处理,将车子出入库的时间进行存储。为防止两个时钟时间不统一问题,两个上电之时通过ZIGBEE进行时钟数据粗校准,矫正误差不超过一分钟,后以每小时矫正一次,防止时间偏移,以衰减振荡方式将时钟之间的误差控制在5秒之内。设计图:附件资料截图:
来自:时间:
前一段时间开源了一个智能小车,小车需要锂电池供电,家里一大堆电池,当使用的时候才发现好久没有容量大减,正好最近在研究labview,所以就做了1个来测试一下电池容量,其实原理非常简单,用单片机就能轻松搞定,为了高大上而且能为了能看到电池充电和放电的曲线所以就需要上位软件了,第一次用labview编程程序写的非常烂高手见谅了功能:上位机 labview
负责采集数据计时显示设置充放电截止电压和电池曲线图下位机 stc125a60s2 负责ad检测电压电流串口通信1.增加1602液晶,方便没有电脑的时候也可以测量电池容量2.使用labview工作,电压电流同时显示在1602上面1秒钟刷新一次电压,电流,容量,时间由于手底下没有mos管所以暂时使用317进行横流放电充电采用锂电池专用模块通信 串口发送字符串检测电压电流 Work_v_ad充电
Work_v_cd放电
Work_v_fd关闭
Work_voff电脑和单片机通信采用一个usb ttl下载器进行ad采集为了准确,采用Tl431做标准基准源,还算比较准确的电路图:没有上位软件也能显示容量,只不过没有曲线:
来自:时间:
单片机实训的时候做的24键电子琴仿真,可播放音乐,功能部分实现,框架已经写好:1、按键选择音乐自动播放或自己演奏2、EEPROM实现存储音乐(未加入,代码写好需要调试)3、.......仿真原理图如下:
来自:时间:
设计任务要求:我所设计的题目为“基于魔术棒的多功能单片机系统”,主要是在魔术棒的基础上添加了单片机的其他功能,例如红外遥控,蜂鸣器,温度传感器,LED灯等装置。具体要求有以下几点:
利用数码管实现主要功能“魔术棒”。利用红外装置控制温度传感器,并显示温度。利用蜂鸣器使其能发出乐音。利用LED灯实现跑马灯功能。利用按键控制以上几种功能。“魔术棒”的原理是利用人眼的视觉暂留原理,即物体在快速运动时, 当人眼所看到的影像消失后,人眼仍能继续保留其影像0.1-0.4秒左右的图像,因此,我们可以利用数码管或LCD显示屏,逐个控制每一位的点亮,并送入数据,再控制好相邻位之间亮起的频率,就可以实现一个动态显示功能,但实际上在当前时刻只有1位点亮并送入数据,控制一定频率使得人眼看起来每个位置都在同时点亮。红外传感模块和温度传感器单片机上已经存在,需要编写程序控制温度传感器工作,并实时显示温度,并且编写控制红外遥控装置的程序,令红外装置能接收信号和发出红外线,通过红外遥控器控制温度传感器的开启。蜂鸣器是将音符表和节拍表送入寄存器中,通过改变蜂鸣器的音调和延迟时间实现演奏歌曲。LED灯发光可以通过改变P1端口8位来选择不同的LED发光。按键开关是单片机的一个基础元件,可以通过开关控制许多功能的开启和关闭,我用不同的按键开关控制以上功能的实现。仿真原理图截图:
来自:时间:
猜你喜欢(实时推荐最适合你的电路)
功能说明:1.利用STC89C52RC单片机驱动74HC595,来驱动两个1.英寸的两位共阳数码管;2.载有无线射频模块(433M或其他),可用过遥控触发计分累加.板上另有有线按键接口引出,亦可通过有线方式进行计分.3.语音播报计分功能,板载语音芯片及语音功放电路,可驱动5W喇叭输出.4.智能比较胜负判定,当某方大于对方6分(具体可通过程序修改)及以上时,会语音播报胜利方,并提示"比赛结束".资料说明: 附件内容提供AD格式原理图PCB工程文件,用altiumDesigner打开。程序采用C语言编写,通过keil软件编译,文件为工程源代码。技术咨询QQ:(咨询时请说明来自电路城);附件资料截图:
来自:时间:
一、产品概述该系列低压电动机性能保护装置适用于AC380V、AC660V低压系统,作为低压异步电动机的保护、监测和控制的新一代智能化综合装置,采用国外先进的AD单片微机,除了先进的电动机保护和监测功能,还能提供设备运行和故障记录以及额定参数等等重要信息的采集,采用现场总线方式结构为现代化的设备管理带来很大的方便;产品广泛应用于电力、钢铁、石油、化工、冶金、轻工、水泥、矿山、纺织工业等行业。本产品为电机提供的完备保护,避免了因电机过载、轻载、堵转、欠压、超压、启动超时、断相、三相不平衡、接地、短路、漏电等可能故障导致的生产事故,保证设备运行的有效性与安全性。本产品采用RS485通讯接口设计,保证了与上位机通讯的快速可靠,同时能快速响应上位机的实时查询等要求并执行相应操作,本产品对电机运行状态和故障原因监控记录方便对电机维护计划的制定。对于每一个电机回路,需要配置独立的该系列来进行保护与控制。该系列标准的配置,完善的功能,大大简化了传统意义上的电机回路的维护,降低了设备维护成本。工作电流:1~800(A)工作电压:AC220(V)适用电机功率:0.5~400(kw)二、外形结构产品由两部分组成:主体单元、电流互感器单元。主单体元:主体单元由电子器件,显示器组成。安装在门板上或抽屉柜的面板上。通过面板上的控制按钮,LCD显示屏,可以进行控制、监视和参数设置。电流互感器单元:固定在标准35mm卡轨上,做电流检测。连接:主体单元通过专用电缆的RJ12接口和互感器单元连接。
附件资料截图:
来自:时间:
该系统用于检测是否有车辆进出,是否有空余车位,应用单片机来控制其他模块以实现对车辆的数目、状态等的加减计数和状态显示,并利用单片机中的定时系统对车辆进出的时间限制以及设定,键盘系统的输入可以人工控制总车位数以及剩余车位数数值的显示。系统概述:本系统包括:电源模块、传感器模块、显示模块、手动键盘输入模块、车辆车位模拟模块等。它可以实现控制的开启、显示停车场现有车辆数和已停放过车辆数、人工的设置总车位数以及剩余车位数的数值显示等功能。并且拥有16个模拟的停车位,用来显示车辆停放的具体位置。系统的特点:
由于本系统采用电子元件无需人工管理。自动显示停车场的车位状态,进出和停放车辆统计。统计小区当天已停放车辆总数,并且显示停放位置。本系统适用于任意停车场。检测小区车位车辆是否已满,报警指示灯闪烁。系统的模拟框图:实物图:
来自:时间:
您装配的无功补偿装置应用在工况是交流0.4KV、50Hz的用电现场,为本机提供的工作电源是交流220V、50Hz,特性:
本产品符合《JB/T》和《DL/T597-1996》标准的相关内容。JKWD-12型无功功率自动补偿控制器,配备了大屏幕背光LCD中文液晶显示器,即使在很暗的环境下也能轻松读数。本机设计采用先进MCU为核心元件。采用三相交流同步取样方式对电网各项参数实时监测处理。其不但具有常规的三相平衡补偿控制方式,还具备单相别的不平衡补偿的功能,使得补偿效果更加细化。在运行安全保护方面,除具有基本的过压、欠压、谐波电压、谐波电流保护外,对无功补偿的核心元件电容器还做了“投切时控”与“保护时控”,双重时控保护设计。海拔高度:≤2500米在海拔高于 2000 米处使用,宜考虑介电强度的降低和空气冷却效果的减弱。环境温度:-10℃ - +55℃相对湿度:20℃时20%-90%应考虑到由于温度的变化,有可能会偶尔产生适度的凝露。大气压力:79.5 kpa-106 kpa环境条件:可以在污染等级 3 环境中使用。但要求周围介质无爆炸危险,无足以损坏绝缘及腐蚀金属的气体,无导电尘埃,安装地不易剧烈振动,无雨雪侵蚀。基本参数电源电压:AC 220V±20%
50Hz±5%取样电压:AC 220V取样电流:0-5A本机功耗:≤12W控制参数电流变比: 1-1260(比值,如500/5的CT,应设为100)过压设置: 235V-280V 步长1V (可以关闭该保护)欠压设置: 160V-210V 步长1V (可以关闭该保护)谐波电压设置:1%-50% (可以关闭该保护)谐波电流设置:1%-100% (可以关闭该保护)目标功率因数:0.85-1.0注意事项:1)电源输入和CT二次侧均会危害人身安全,所以操作人员在安装、调试及检修时必须遵照有关的安全操作规程,以确保人身设备安全。2)接线时应选择合适的线径,并严格按照接线图进行正确接线、以保证操作的安全性和可靠性。3)完成接线后请移除 CT 短接片。
程序编译仿真截图:
来自:时间:
蝙蝠侠智能小车功能概述
蝙蝠侠智能小车基于STC51单片机开发,通过兼容单片机母座的STM32模块实现兼容STM32控制,集成下载电路,只需要一根USB线即可进行开发。集成了WIFI、蓝牙、超声波、舵机、LCD液晶、温度采集、红外遥控、时钟、红外循迹、速度采集、红外避障、蜂鸣器、按键键盘、姿态数据采集、电池管理等功能。
玩家可以实现丰富多样的玩法:
1、通过手机WIFI控制智能小车
2、通过手机蓝牙控制智能小车
3、智能小车红外避障
4、智能小车红外循迹
6、智能小车超声波循迹
7、智能小车超声波跟随
&&电路图可以直接打样、制作,PCB设计图
制作好的PCB板制作完成的小车手机APP界面
来自:时间:
2016 年 04 月 07日
2017 年 03 月 21日
【★霺量遊俠★】购买了:
judge1购买了:
taningjie购买了:
yourboyfriend购买了:
付军涛购买了:
wangsh685购买了:
你尚未购买电路图,点击
进行购买!
您想购买此电路吗?,上传电路,审核成功后获取电路城6折折扣劵。
6折折扣劵只能购买小于100元(含100元)的电路。实操六蓝牙串口通讯——Android手机控制Arduino单片机
&蓝牙串口是基于SPP协议(Serial Port
Profile),能在蓝牙设备之间创建串口进行数据传输的一种设备。蓝牙串口的目的是针对如何在两个不同设备(通信的两端)上的应用之间保证一条完整的通信路径。
一、蓝牙参数特点
1.蓝牙核心模块一般使用HC系列,本案例使用【BT04-A】模块,引出接口包括VCC,GND,TXD,RXD,预留LED状态输出脚,单片机可通过该脚状态判断蓝牙是否已经连接
2.led指示蓝牙连接状态,闪烁表示没有蓝牙连接,常亮表示蓝牙已连接并打开了端口
3.输入电压3.6~6V,未配对时电流约30mA,配对后约10mA,输入电压禁止超过7V!
4.可以直接连接各种单片机(51,AVR,PIC,ARM,MSP430等),5V单片机也可直接连接
5.在未建立蓝牙连接时支持通过AT指令设置波特率、名称、配对密码,设置的参数掉电保存。蓝牙连接以后自动切换到透传模式
6.体积 3.57cm*1.52cm 见下图:
7.若设蓝牙为从机,从机能与各种带蓝牙功能的电脑、蓝牙主机、大部分带蓝牙的手机、Android、PDA、PSP等智能终端配对,从机之间不能配对。
二、实物接线图
(一)、如果使用开发版
Arduino 与蓝牙模块连接方法
VCC:接Arduino的5V。
GND:接Arduino的GND。
TXD:发送端,一般表示为自己的发送端,接Arduino的RX。
RXD:接收端,一般表示为自己的接收端,接Arduino的TX。
正常通信时候本身的TXD永远接设备的RXD!正常通信时RXD接其他设备的TXD,自收自发:顾名思义,就是自己接收自己发送的数据,即自身的TXD直接连接到RXD,用来测试本身的发送和接收是否正常,是最快最简单的测试方法,当出现问题时首先做该测试确定是否产品故障。也称回环测试。线接好后,把Arduino上电后,蓝牙的指示灯是闪烁的,表明没有设备连接上。
(二)、如果使用荆门市创客教育arduino开源教学板V1.0
实物接线图如下:
三、Arduino 调试源代码
若UNO--&发送端,PC--&接收端,烧录以下代码
&void setup()&
& & Serial.begin(9600);
//初始化串口并设置波特率为9600
& void loop()
& & Serial.print("Hello!");
//串口向外发送字符串&
&Serial.println(" lqzx"); &
& &//串口向外发送字符串 ,并带回车
& & delay(1000);
& & &//延时
若UNO--&接收端,PC--&发送端,烧录以下代码
void setup(){
& Serial.begin(9600); &
//初始化串口并设置波特率为9600
void loop(){
& val = Serial.read(); &
& //读串口
& if(val!=-1){
& Serial.print(val);
&//将收到是数据再通过串口发送出去
将上面代码复制粘贴到IDE,烧录程序到Arduino
烧录完成后,从IDE自带的串口助手观察结果,如下图:
发送什么下面窗口看到什么,自收自发测试完成,OK!
四、Arduino 蓝牙与Android
通信的实现
  1、首先下载Android手机的蓝牙管理软件&&或扫描二维码下载:
&2、打开千月串口 如下图:
打开蓝牙开关如下图:
点击BT04-A后连接蓝牙后,如下图:
输入“lqzx”点击“发送”按钮,如下图:
打开arduino1.8.2串口监视器
这表示手机与arduino的通讯已建立,OK!
五、Arduino 蓝牙与手机APP
通信的实现(手机控制小车案例LED演示)
1、下载手机APP:&在手机上安装好。或扫描二维码安装
打开手机控制arduino,界面如下:
温馨提示:点击“前”发送文本为“q”,点击“后”发送文本为“h”......
2、将下面代码用arduino
IDE下载(上传或者叫烧录)到arduino即可联调:
&//实操五-0 &
&手机控制小车案例LED演示【实操五-0 &适应于UNO
R3开发板;实操五-1既适应于开源教学板(大板子)也适应于UNO R3开发板】
void setup(){
Serial.begin(9600); & //初始化串口并设置波特率为9600
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
void loop(){
val = Serial.read(); & & //读串口
(String(val).equals(String("q"))) { &
& digitalWrite(13,HIGH); &
else if (String(val).equals(String("h"))) { &
& digitalWrite(12,HIGH); &
else if (String(val).equals(String("z"))) { &
& digitalWrite(11,HIGH); &
else if (String(val).equals(String("y"))) { &
& digitalWrite(10,HIGH); &
else if (String(val).equals(String("t"))) { &
& digitalWrite(10,LOW);
&digitalWrite(11,LOW);
digitalWrite(12,LOW); &
digitalWrite(13,LOW); &
else if (val!=-1) {
&Serial.print(val);
&//将收到是数据再通过串口发送出去 &
&//实操五-1
&[适合开源教学板(大板子)]手机控制小车案例LED演示(软串口通信)
&删除中文SoftwareSerial.h删除中文& &
&//删除中文
SoftwareSerial
mySerial(2, 3); //第2= RX,第3- TX(软串口)
void setup(){
mySerial.begin(9600); &//初始化软串口并设置波特率为9600
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
void loop(){
val = mySerial.read(); & & //读软串口
&if (String(val).equals(String("q"))) {
& & & //前
& digitalWrite(13,HIGH); &
} else if (String(val).equals(String("h"))) { &
& digitalWrite(12,HIGH); &
} else if (String(val).equals(String("z"))) { &
& digitalWrite(11,HIGH); &
} else if (String(val).equals(String("y"))) { &
& digitalWrite(10,HIGH); &
} else if (String(val).equals(String("t"))) { &
& digitalWrite(10,LOW);
&digitalWrite(11,LOW);
digitalWrite(12,LOW); &
digitalWrite(13,LOW); &
} else if (val!=-1) {
&mySerial.print(val);
&//将收到是数据再通过串口发送出去 &
3、实际情况可不是这样的呀!先自己用LED发光二极管演示看看接到对应数字引脚上,用手机控制的逻辑对不对。修改完善你自己的arduino程序,来达到你的要求。这里仅此抛砖引玉,谢谢!!
4、蓝牙软串口小车完整实验--L298N驱动案例1
电机驱动使用L298N如下图:
//实操五-2
&手机控制小车完整案例(蓝牙软串口通讯,直流电机驱动使用L298N)
//电机控制方法(数字信号控制)
&IN2/IN4 & &
& & 0 停止
& & 1 反转
& & 0 前行
& & 1 刹车
//PWM控制电机速度
&IN2/IN4 & &
&正转PWM,快速衰减模式
&正转PWM,缓慢衰减模式
&反转PWM,快速衰减模式
&正转PWM,缓慢衰减模式
&删除中文SoftwareSerial.h删除中文& &//删除中文
SoftwareSerial
mySerial(2, 3); //第2= RX,第3- TX(软串口)
void setup(){
mySerial.begin(9600);
&//初始化软串口并设置波特率为9600&
pinMode(5, OUTPUT); & //左轮IN1
pinMode(6, OUTPUT); &//左轮IN2
pinMode(9, OUTPUT); &//右轮IN3
pinMode(10, OUTPUT); &//右轮IN4
void loop(){
val = mySerial.read(); & & //读软串口
&if (String(val).equals(String("q"))) {
& & & //前
& &analogWrite(5,0);
& &analogWrite(6,150);
& &analogWrite(9,0);
& &analogWrite(10,150);
} else if (String(val).equals(String("h"))) { &
& &analogWrite(5,150);
& &analogWrite(6,0);
& &analogWrite(9,150);
& &analogWrite(10,0);
} else if (String(val).equals(String("z"))) { &
& & analogWrite(5,0);
& &analogWrite(6,150);
& &analogWrite(9,0);
& &analogWrite(10,100);
} else if (String(val).equals(String("y"))) { &
& &analogWrite(5,0);
& &analogWrite(6,100);
& &analogWrite(9,0);
& &analogWrite(10,150);
} else if (String(val).equals(String("t"))) { &
& digitalWrite(5,LOW);&
& digitalWrite(6,LOW);
& digitalWrite(9,LOW); &
& digitalWrite(10,LOW); &
} else if (val!=-1) {
&mySerial.print(val);
&//将收到是数据再通过串口发送出去 &
5、蓝牙软串口小车完整实验--L298N驱动案例2
//实操五-3
&L298N可调速蓝牙软串口遥控小车
//1)ena和enb上有跳线帽,电机全速运行;没有跳线帽,可以从arduino上连线实现pwm调速
//2)l298n和arduino共地(连接l298n的12v+边上的gnd和arduino的gnd)(很重要)
//3)l298n外部电池供电(2节3.7v接l298n的+12v和gnd),
而l298n的+5v对arduino供电,引线到arduino的Vin对arduino供电
arduino的d9和d10接l298n的in1和in2(编程控制outA),d11和d12接l298n的in3和in4(编程控制outB)
&outA的out1和out2连入一个直流电机,outB的out3和out4连入一个直流电机(四轮可并接电机的!)
//所购l298n链接
& 去掉ena的跳线帽,采用pwm调速控制直流电机
//2)~5)同上
L298n连线ena到arduino的5管脚,enb到arduino的6管脚(5.6PWM频率相同;3.9.10.11PWM频率相同,后者高点)
&删除中文SoftwareSerial.h删除中文& & //删除中文
SoftwareSerial
mySerial(2, 3); //第2= RX,第3- TX(软串口)
void setup(){
mySerial.begin(9600);
&//初始化软串口并设置波特率为9600&
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(9, OUTPUT); & //左轮IN1
pinMode(10, OUTPUT); &//左轮IN2
pinMode(11, OUTPUT); &//右轮IN3
pinMode(12, OUTPUT); &//右轮IN4
void loop(){
val = mySerial.read(); & & //读软串口
(String(val).equals(String("q"))) { &
& digitalWrite(9,HIGH);&
& digitalWrite(10,LOW); &
& digitalWrite(11,LOW);
& digitalWrite(12,HIGH); &
& &analogWrite(6,150);
& &analogWrite(5,150);
else if (String(val).equals(String("h"))) { &
& digitalWrite(9,LOW);&
& digitalWrite(10,HIGH); &
& digitalWrite(11,HIGH); &
& digitalWrite(12,LOW); &
& analogWrite(6,150);
& analogWrite(5,150);
else if (String(val).equals(String("z"))) { &
& digitalWrite(9,HIGH);
& digitalWrite(10,LOW);&
& digitalWrite(11,LOW); &
& digitalWrite(12,HIGH); &
& analogWrite(5,80);
& analogWrite(6,255);
else if (String(val).equals(String("y"))) { &
& digitalWrite(9,HIGH);&
& digitalWrite(10,LOW); &
& digitalWrite(11,LOW);
& digitalWrite(12,HIGH); &
& analogWrite(6,80);&
& analogWrite(5,255);
else if (String(val).equals(String("t"))) { &
& digitalWrite(9,LOW); &
& digitalWrite(10,LOW); &
& digitalWrite(11,LOW);&
& digitalWrite(12,LOW); &
else if (val!=-1) {
&mySerial.print(val);
&//将收到是数据再通过串口发送出去 &
六、Arduino 蓝牙与手机APP
通信的实现(蓝牙-门锁手机钥匙)
&删除中文SoftwareSerial.h删除中文& &
&//删除中文
SoftwareSerial
mySerial(2, 3); //第2= RX,第3- TX(软串口)
定义整数型全局变量为pxq,用来保存接收的数据。&
void setup() {
mySerial.begin(9600); & &
&// 打开串口(蓝牙)
pinMode(9,OUTPUT); & &
& // 定义9脚为输出。(数字或PWM)
pinMode(10,OUTPUT); & &
&// 定义10脚为输出。
pinMode(11,OUTPUT); & &
&// 定义11脚为输出。
pinMode(12,OUTPUT); & &
&// 定义12脚为输出。
pinMode(13,OUTPUT); & &
&// 定义13脚为输出。&
void loop() {
while (mySerial.available() & 0) { &
& // 串口收到字符数大于零。
& pxq = mySerial.parseInt(); &
& // 在串口数据流中查找一个有效整数。
& if (mySerial.read() == 'X') { &
收到结束符后开始处理数据。
& & switch (pxq) {
判断数据内容。
& & case 1001:
digitalWrite(10,HIGH); & &
& & // 点亮10脚LED。
mySerial.println(pxq); & &
回传数据并带回车。
& & case 1002:
digitalWrite(10,LOW); & &
熄灭10脚LED。
mySerial.println(pxq); & &
回传数据并带回车。
& & case 2001:
digitalWrite(11,HIGH); & &
& & // 点亮11脚LED。
mySerial.println(pxq); & &
回传数据并带回车。
& & case 2002:
digitalWrite(11,LOW); & &
熄灭11脚LED。
mySerial.println(pxq); & &
回传数据并带回车。
& & case 3001:
digitalWrite(12,HIGH); & &
& & // 点亮12脚LED。
mySerial.println(pxq); & &
回传数据并带回车。
& & case 3002:
digitalWrite(12,LOW); & &
熄灭12脚LED。
mySerial.println(pxq); & &
回传数据并带回车。
& & case 4001:
digitalWrite(13,HIGH); & &
& & // 点亮13脚LED。
mySerial.println(pxq); & &
回传数据并带回车。
& & case 4002:
digitalWrite(13,LOW); & &
熄灭13脚LED。
mySerial.println(pxq); & &
回传数据并带回车。
& & default:
& & & pxq =
map(pxq,0,100,0,100); & &//
转换数据范围到PWM输出值。
analogWrite(9,pxq); & &
&// 调整LED亮度。(PWM)
2、下载手机APP:&在手机上安装好。或扫描二维码安装
打开蓝牙-门锁手机钥匙手机APP,如下图:
3、联调看效果(这里用LED发光二极管模拟)
七、蓝牙AT设置
用于开锁具有保密级别的项目,蓝牙配对密码一定要修改,最后把名称也改一改,这就需要利用AT命令来设置。BT04-A
&只需连接四根线,上电就自动进入AT模式。不需置高AT功能端!!
& &//查询:返回查看蓝牙名称
AT+NAMEcklm07
& &//设置:设置蓝牙名称为cklm07
& &//设置/
查询:返回查看蓝牙模式为0从模式&
& //设置/ 查询:蓝牙连接模式1为任意地址连接模式
& & &//设置/
查询:蓝牙配对密码出厂值为1234
AT+DEFAULT
& //恢复出厂设置
& & //设置/ 查询: MAC
& & //复位
例子:设置配置密码为 1111
发送:AT+PIN1111\r\n
返回:+PIN=1111
此时表示配对密码已经配置成
& & ////设置/ 查询: 波特率
返回:波特率
C:1382400
默认波特率:9600
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。}

我要回帖

更多关于 蓝牙控制app 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信