找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3287|回复: 1
收起左侧

蓝牙+1602+8盏灯+蜂鸣器+指示灯+Proteus仿真程序

[复制链接]
ID:582515 发表于 2020-1-13 10:35 | 显示全部楼层 |阅读模式
通过手机APP(HC-06串口助手)连接蓝牙模块,发送0-9的数据,1602显示出相应的数据。

实物实现的结果

实物实现的结果


仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
51hei.png

单片机源程序如下:
  1. #include<reg51.h>
  2. #include<intrins.h>
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. #define out P0
  6. sbit RS=P2^0;
  7. sbit RW=P2^1;
  8. sbit E=P2^2;
  9. sbit led8=P2^5;//指示灯
  10. sbit fmq=P2^4;        //蜂鸣器


  11. void delay(uint z)//延时函数
  12. {
  13.       uint x,y;
  14.         for(x=z;x>0;x--)
  15.                 for(y=120;y>0;y--);

  16. }


  17. void check_busy(void) //读状态
  18. {
  19.   uchar dt;
  20.   do
  21.   {
  22.     dt=0xff;
  23.         E=0;
  24.         RS=0;
  25.         RW=1;
  26.         E=1;
  27.         dt=out;
  28.   }while(dt&0x80);
  29.   E=0;
  30. }

  31. void write_command(uchar com)//写命令
  32. {
  33.   check_busy();
  34.   E=0;
  35.   RS=0;
  36.   RW=0;
  37.   out=com;
  38.   E=1;
  39.   _nop_();
  40.   E=0;
  41.   delay(1);
  42. }

  43. void write_data(uchar dat)//写数据
  44. {
  45.   check_busy();
  46.   E=0;
  47.   RS=1;
  48.   RW=0;
  49.   out=dat;
  50.   E=1;
  51.   _nop_();
  52.   E=0;
  53.   delay(1);
  54. }

  55. void LCD_initial(void)//初始化
  56. {
  57.         write_command(0x38);
  58.         _nop_();
  59.         write_command(0x0C);
  60.         _nop_();
  61.         write_command(0x06);
  62.         _nop_();
  63.         write_command(0x01);
  64.         delay(1);
  65. }

  66. void string(uchar ad,uchar *s)//显示函数
  67. {
  68.         write_command(ad);
  69.         while(*s>0)
  70.         {
  71.                 write_data(*s++);
  72.                 delay(100);
  73.         }
  74. }

  75. void main()
  76. {
  77.   uchar temp=0;
  78.   TMOD=0x20;
  79.   TH1=0xfd;
  80.   TL1=0xfd;
  81.   SCON=0x50;
  82.   PCON=0x00;
  83.   TR1=1;
  84.   LCD_initial();

  85.                 string(0x80,"Bluetooth Test");
  86.                 string(0xc0,"Receive Figure:");
  87.   while(1)
  88.   {
  89.     while(RI==0);
  90.         RI=0;
  91.         temp=SBUF;
  92.         switch(temp)
  93.         {
  94.                 case 0:       
  95.                 write_command(0xcf);
  96.                 write_data('0'+temp);
  97.                 break;
  98.                
  99.                 case 1:
  100.                 write_command(0xcf);
  101.                 write_data('0'+temp);
  102.                 break;

  103.                 case 2:
  104.                 write_command(0xcf);
  105.                 write_data('0'+temp);
  106.                 break;

  107.                 case 3:
  108.                 write_command(0xcf);
  109.                 write_data('0'+temp);
  110.                 break;

  111.                 case 4:
  112.                 write_command(0xcf);
  113.                 write_data('0'+temp);
  114.                 break;

  115.                 case 5:
  116.                 write_command(0xcf);
  117.                 write_data('0'+temp);
  118.                 break;

  119.                 case 6:
  120.                 write_command(0xcf);
  121.                 write_data('0'+temp);
  122.                 break;

  123.                 case 7:
  124.                 write_command(0xcf);
  125.                 write_data('0'+temp);
  126.                 break;

  127.                 case 8:
  128.                 write_command(0xcf);
  129.                 write_data('0'+temp);
  130.                 break;

  131.                 case 9:
  132.                 write_command(0xcf);
  133.                 write_data('0'+temp);
  134.                 break;               
  135.         }
  136.   }
  137. }
复制代码

所有资料51hei提供下载:
蓝牙 1602 8盏灯 蜂鸣器 指示灯 仿真.zip (167.77 KB, 下载次数: 51)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:699249 发表于 2020-2-29 22:03 | 显示全部楼层
好像没有proteus的工程文件
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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