|
/*
晶振:11.0592
*/
#include <REG52.H>
//--------------------------定义区
#define uchar unsigned char
#define Uint unsigned int
//------------------------全局区域
uchar num;//需要给PC发的数据
//------------------------函数区域
void delay(Uint z);
void UART_init();
void main()
{
UART_init();
while (1)
{
P1=SBUF;//取出接收的数据,将舒服传给LED灯的引脚
while (!RI);//如果TI=0,执行循环 等待TI=1.接收数据完毕
RI=0;//软件清0,接收下一帧
}
}
/*延时函数---传入毫秒值*/
void delay(Uint z)
{
Uint x;
Uint y;
for (x = z; x > 0; x--) {
for (y = 114; y > 0; y--);
}
}
/*串口初始化*/
void UART_init()
{
// T1工作模式2 8位自动重载
TMOD = 0x20;
// 比特率 9600
TH1 = 0xfd;
TL1 = 0xfd; //
// 设置10位异步收发器(8位数据)
SM0 = 0;
SM1 = 1;
// 串口允许接收数据
REN = 1;
// 启动T1定时器
TR1 = 1;
}
|
|