单片机的串口配置可以使用SCT-ISP软件,方法如下,我的单片机晶振频率是11.0592Hz
试验程序如下:
#include"regx52.h"
#include"intrins.h"
unsigned int num; //建立全局变量
void Delay1000ms() //@11.0592MHz
{
unsigned char i, j, k;
_nop_();
i = 8;
j = 1;
k = 243;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}
void UartInit(void) //[email protected]
{
PCON |= 0x80; //使能波特率倍速位SMOD
SCON = 0x50; //8位数据,可变波特率
TMOD &= 0x0F; //清除定时器1模式位
TMOD |= 0x20; //设定定时器1为8位自动重装方式
TL1 = 0xF4; //设定定时初值
TH1 = 0xF4; //设定定时器重装值
ET1 = 0; //禁止定时器1中断
TR1 = 1; //启动定时器1
}
void Uart_Send_Byte(unsigned char Byte)
{
SBUF = Byte;
while(TI==0);
TI=0;
}
int main()
{
UartInit(); //初始化串口
while(1)
{
Uart_Send_Byte(num); //发送字符
num++;
Delay1000ms();
}
return 0;
}
配置串口助手如下:
实验现象如下