标题:
51单片机蓝牙通信程序
[打印本页]
作者:
1600755741
时间:
2024-3-7 11:10
标题:
51单片机蓝牙通信程序
常见的普中51开发板结合蓝牙模块的串口通信
单片机源程序如下:
#include<reg52.h>
#include "lcd1602.h"
#include "public.h"
#include "Uart.h"
#include "matrix-buttons.h"
#include "string.h"
#include "Interu.h"
#include "function.h"
#include "LEDrun.h"
#include "BEEP.h"
u8 flag = 0;
unsigned char mark;
unsigned char* zoom; //选择数据缓冲区
unsigned char* str;
unsigned char* judge;
u8 z1=0,z2=0;
void main()
{
Init0();
Init1();
lcd1602_init();
UartInit();
str=UART_GetString();
while(1)
{
flag = key_matrix_ranks_scan();
if(flag ==1)
{
SendString("receive mode");
str=UART_GetString();
lcd1602_show_string(0,0,"Receive Mode");
Beep(); //接收数据时蜂鸣器响一下
Delay2000ms();
lcd1602_clear();
zoom = str;
judge = str;
while(1)
{
lcd1602_show_string(0,0,str);
if(str != judge)
{Beep();}
flag = key_matrix_ranks_scan();
if(flag == 11) //右移选择
{
zoom++;
mark = *zoom;
z1++;
}
if(flag == 9) //左移选择
{
zoom--;
mark = *zoom;
z1--;
}
if(flag == 6) //向上
{
zoom= zoom-16;
mark = *zoom;
z2= z2-16;
}
if(flag == 14) //向下
{
zoom=zoom+16; //由于LCD为16*2,所以移动16位
mark = *zoom;
z2= z2+16;
}
// lcd1602_show_string(z1,z2,zoom);
// lcd1602_show_string(z1,z2," ");
}
}
}
}
void send() interrupt 2 //用于发送选中的数据返回PC端
{
lcd1602_clear();
lcd1602_show_string(0,0,"Send Mode");
*judge = mark;
lcd1602_show_string(0,1,"Sending:");
SendString("reply:");
SendChar(mark);
Delay2000ms();
lcd1602_clear();
lcd1602_show_string(0,0,"Done!");
Ledrun();
Delay500ms();
lcd1602_clear();
}
复制代码
原理图: 无
仿真: 无
代码:
Bluetooth.zip
(82.01 KB, 下载次数: 12)
2024-3-7 11:10 上传
点击文件名下载附件
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1