栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

HC-06蓝牙模块的使用

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

HC-06蓝牙模块的使用

采用51单片机对hc-06模块发送的信号进行接收,采用振动小马达不同振动状态来反映接收到的数值,(既单片机收到不同的数值对应马达不同的振动频率。)

1.实物搭建及实现功能


采用的振动马达模块图

1.1马达工作原理

采用的蓝牙模块图

发送数字马达现象
1振动最强
2振动稍弱
3振动最弱
其他任意值不振动
2.实现代码
#include 

 int p = 0 ;

 sbit PWM=P0^0;

 unsigned int  time;
 
 void main()
 {
   TMOD=0x21;
	 TH1=0xfd;
	 TL1=0xfd;
	 
	 TH0=0xff;
	 TL0=0xff;
	 
	 SCON = 0x50;
	 PCON = 0x00;
	 TI   = 0;
	 RI   = 0;
 	 TR1  = 1;
	 IE   = 0x90;
	 
	  EA=1;
	  ET0=1;
	  TR0=1;
	  while(1)
	  {


	  }
 }
 
 void tim1() interrupt 3
 {
    TR0=0;
    TH0=0xfd;
	  TL0=0xfd;
	  TR0=1;
	 
	 //第一个马达
	 //振动最强
	 if(p==1)
	 {
	  time++;
	  if(time>=100)
	  time=0;
	  if(time<=100)
	  PWM=1;
	  else PWM=0;
	  }
	 
		 //稍微弱
	  else if(p==2)
	 {
	  time++;
	  if(time>=100)
	  time=0;
	  if(time<=65)
	  PWM=1;
	  else PWM=0;
	 }
	 
	 //最弱
	 	  else if(p==3)
	 {
	  time++;
	  if(time>=100)
	  time=0;
	  if(time<=35)
	  PWM=1;
	  else PWM=0;
	 }
	 
	 
	  else 
		 PWM=0;
 }
 
 
void Serial_INT() interrupt 4
{
 	if(RI)
	{
	 	RI = 0;
		p = SBUF ;

			SBUF  =  p ;
		while(TI == 0);
	  TI = 0;
	}
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/968407.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号