最近弄藍牙通信,調試的時候沒想到有更好的辦法,所以想到通過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) //發送數據
{
}
}
|