找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 8011|回复: 1
打印 上一主题 下一主题
收起左侧

STC89C51单片机主从双机蓝牙通讯 发送与接收程序及仿真

[复制链接]
跳转到指定楼层
楼主
分控制板和动作板,控制板上连接主机蓝牙,转动控制板上的电位器,动作板上连接的LED变亮
蓝牙仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序(发射)如下:
  1. #include <reg51.h>
  2. #include <I2C.H>
  3. #define uchar unsigned char
  4. #define uint  unsigned int

  5. uchar ad;
  6. #define  PCF8591 0x90    //PCF8591 地址

  7. void delay(uchar x)                                                          
  8. {
  9. uchar i,j;
  10. for(j=0;j<x;j++)  
  11.         for(i=0;i<110;i++);
  12. }

  13. /*******************************************************************
  14. ADC发送字节[命令]数据函数               
  15. *******************************************************************/
  16. bit ISendByte(unsigned char sla,unsigned char c)
  17. {
  18.    Start_I2c();              //启动总线
  19.    SendByte(sla);            //发送器件地址
  20.    if(ack==0)return(0);
  21.    SendByte(c);              //发送数据
  22.    if(ack==0)return(0);
  23.    Stop_I2c();               //结束总线
  24.    return(1);
  25. }

  26. /*******************************************************************
  27. ADC读字节数据函数               
  28. *******************************************************************/
  29. unsigned char IRcvByte(unsigned char sla)
  30. {  unsigned char c;

  31.    Start_I2c();          //启动总线
  32.    SendByte(sla+1);      //发送器件地址
  33.    if(ack==0)return(0);
  34.    c=RcvByte();          //读取数据0

  35.    Ack_I2c(1);           //发送非就答位
  36.    Stop_I2c();           //结束总线
  37.    return(c);
  38. }  


  39. /************主函数**********************/
  40. void main()
  41.     {
  42.          TMOD=0x20;
  43.          SCON=0x50;
  44.         TH1=0xFD;
  45.         TL1=0xFD;
  46.         TR1=1;
  47.          while(1)
  48.           {
  49.        ISendByte(PCF8591,0x43);
  50.        ad=IRcvByte(PCF8591);
  51.            SBUF=ad;
  52.            while(!TI);
  53.            TI=0;
  54.            delay(200);
  55.            delay(200);
  56.            delay(200);
  57.            delay(200);
  58.            delay(200);
  59.           
  60.           }
  61.     }
复制代码

所有资料51hei提供下载(接收程序):
串口通信-双机.rar (293.07 KB, 下载次数: 148)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏4 分享淘帖 顶1 踩
回复

使用道具 举报

沙发
ID:585483 发表于 2019-8-8 00:11 | 只看该作者
非常感谢 希望有朝一日  我也能成为您这样的大佬
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表