最近弄蓝牙通信,调试的时候没想到有更好的办法,所以想到通过USB转TTL模块,通过单片机串口来调试。
这个程序主要是测试单片机接收到数据,就马上发一个数据。就可以测试单片机有没收到数据了。串口助手调试。代码直接附上~图在测试的时候没有截图,直接用串口助手就行了。
#include <reg52.h>
#define uc unsigned char
#define uint unsigned int
uc a,flag; //定义变量 a , flag
void init()
{
TMOD=0x20; //定时器工作方式,选择了定时器1,工作方式2 八位初值自动重装的8位定时器。
TH1=0xfd; //定时器1初值 ,设置波特率为9600 晶振11.0529MHZ?
TL1=0xfd;
TR1=1; //开启定时器1
SM0=0;
SM1=1; //10位异步接收,(8位数据)波特率可变
REN=1; //允许串行口接收位
EA=1; //允许中断(总闸)
ES=1; //允许串口中断
}
void main() //主函数
{
init();
while(1)
{
if(flag==1)
{
ES = 0;
flag = 0;
SBUF = a;
while(!TI);
TI = 0;
ES =1;
}
}
}
void intt() interrupt 4 //串口中断服务函数
{
if(RI) //接收数据,手动将RI清0
{
RI=0;
a = SBUF;
flag = 1;
}
if(TI) //发送数据
{
}
}
|