|
我的板子和你完全一樣,我這個(gè)程序,就是串口控制LED燈的。程序功能是:用字符方式發(fā)送1,LED燈最右邊的一個(gè)亮,以字符方式發(fā)送2,燈滅。
#include<reg52.h>
typedef unsigned char u8;
typedef unsigned int u16;
sbit LED1=P2^0;
u8 receiveData;
u8 n[]="12";
void UsartInit()//串口初始化函數(shù)
{
SCON=0X50;//設(shè)置為工作方式1
TMOD=0X20;//設(shè)置計(jì)數(shù)器工作方式2
PCON=0X80;//波特率加倍
TH1=0XF3;//計(jì)數(shù)器初始值設(shè)置,注意波特率是4800的
TL1=0XF3;
ES=1;//打開接收中斷
EA=1;//打開總中斷
TR1=1;//打開計(jì)數(shù)器
}
void main()
{
UsartInit();//串口初始化
while(1);
}
void Usart() interrupt 4//中斷函數(shù)
{
unsigned char m;
m=SBUF;
if(m==n[0])
{
LED1=0;
}
if (m==n[1])
{
LED1=1;
}
receiveData=SBUF;//出去接收到的數(shù)據(jù)
RI = 0;//清除接收中斷標(biāo)志位
SBUF=receiveData;//將接收到的數(shù)據(jù)放入到發(fā)送寄存器
while(!TI);//等待發(fā)送數(shù)據(jù)完成
TI=0;//清除發(fā)送完成標(biāo)志位
}
串口調(diào)試軟件用的STC-ISP的串口調(diào)試功能。如圖所示設(shè)置就可以了。
注意:串口號(hào)是你的號(hào),這里的COM3是我的。
|
|