在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 11480|回复: 24

[讨论] 手机控制蓝牙开关,无线开关,智能家居,物联网

[复制链接]
发表于 2013-8-18 14:23:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x

最近研究出一款安卓手机编程控制的基于蓝牙的开关装置,体积很小。

具体观看优酷网宣传视频:

现在分享下设计原理图如下:

蓝牙模块.jpg 原理图.jpg


采用可编程芯片,编程实现无线传输

接收端代码如下:

/********************************************************************


主函数

*********************************************************************/

void main()

{


TMOD=0X00;      //定时器T0设定

AUXR=0X80;       //辅助寄存器

TL0=BAUD;         //十六位寄存器

TH0=BAUD>>8;   //十六位寄存器

TR0=1;                  //开定时器

ET0=1;

PT0=1;

EA=1;                    //开总中断

UART_INIT();   //串口初始化

while(1)       //无线循环

{

if(REND)

  {

  REND=0;

  r++;

  //but[r++&0x0f]=RBUF;

  dat=RBUF;

   }

if(TEND)

   {

  if(t!=r)

    {

          TEND=0;

//      TBUF=dat;

switch(dat) //接收数据判断

{

uchar k;

k=10;

case 'A': P33=1;delay(k);TBUF =dat;dat=0xee;break;       //  

case 'B': P33=0;delay(k);TBUF =dat;dat=0xee;break;       //  

case 'C': if(P33==1){TBUF ='A';}if(P33==0){TBUF = 'B';}delay(k);dat=0xee;break;     //  读输出口状态

case 'D': P33=!P33;delay(k);TBUF =dat;dat=0xee;break;  //  输出口取反

default:break;                                          //  跳出

}

          t++;

          //TBUF=but[t++&0x0f];

          TING=1;

          }

   }

/********************************************************************


接收数据判断函数

*********************************************************************/


}


}




/********************************************************************


定时器T0

*********************************************************************/

void tm0()interrupt 1 using 1

{

if(RING)

  {

  if(--RCNT==0)

    {

          RCNT=3;

          if(--RBIT==0)

       {

                    RBUF=RDAT;

                    RING=0;

        REND=1;

                   }

                   else

                   {

                    RDAT>>=1;

                    if(RXB)RDAT|=0X80;

                   }


    }

  }

   else if(!RXB)

         {

          RING=1;

          RCNT=4;

          RBIT=9;

         }

   if(--TCNT==0)

         {

         TCNT=3;

         if(TING)

         {

           if(TBIT==0)

           {

           TXB=0;

           TDAT=TBUF;

           TBIT=9;

           }

           else

           {

           TDAT>>=1;

           if(--TBIT==0)

           {

            TXB=1;

            TING=0;

            TEND=1;

           }

           else

           {

           TXB=CY;

           }

           }

         }

         }

}

/********************************************************************


功能:串口初始化,波特率9600,方式1

*********************************************************************/

void UART_INIT()

{

TING=0;

RING=0;


TEND=1;

REND=0;


TCNT=0;

RCNT=0;

}


本程序代码由本人编写而成,难免有疏漏之处,请各位多多指教。稍后,有需要安卓手机蓝牙代码的朋友。

可以联系QQ615854698

电话:13049863925

可以免费索取的哟,欢迎多提宝贵意见。

发表于 2013-9-1 13:54:16 | 显示全部楼层
不错
发表于 2014-12-15 08:08:42 | 显示全部楼层
不错 学习了
发表于 2014-12-23 17:22:47 | 显示全部楼层
求蓝牙代码
发表于 2014-12-26 07:43:54 | 显示全部楼层
感謝分享  推一個
发表于 2015-1-3 09:02:38 | 显示全部楼层
学习了
发表于 2015-1-22 10:19:16 | 显示全部楼层
努力!
发表于 2015-2-13 09:05:23 | 显示全部楼层
用的是什么单片机
发表于 2015-2-27 13:57:52 | 显示全部楼层
厉害~~~
发表于 2015-2-27 14:24:07 | 显示全部楼层
nice~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /3 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-20 06:09 , Processed in 0.038891 second(s), 13 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表