就是51单片机串口向电脑发送数据,进行递加的那种,为什么这个代码烧入之后一直写出00而不是00 01 02的递增
#include<reg52.h>
#include"Delay.h" //调用延时函数
unsigned char Sec;
void UarInit(void) //4800bps@12.000MHz
{
PCON |= 0x80; //使能波特率倍速位SMOD
SCON = 0x50; //8位数据,可变波特率
TMOD &= 0x0F; //清除定时器1模式位
TMOD |= 0x20; //设定定时器1为8位自动重装方式
TL1 = 0xF3; //设定定时初值
TH1 = 0xF3; //设定定时器重装值
ET1 = 0; //禁止定时器1中断
TR1 = 1; //启动定时器1
}
//以上部分为使用烧录软件得来编码
void UART_Init() //Init:初始化
{
SCON=0X40;
PCON |=0x80; //配置相关串口寄存器,选择波特率,配置t1定时器
TMOD &= 0x0F; //设置定时器模式,高四位清零
TMOD |= 0x20; //设置定时器模式:0010 0000
TL1 = 0xF3; //设定定时初值
TH1 = 0xF3; //设定定时器重装值
ET1 = 0; //禁止定时器1中断
TR1 = 1; //启动定时器1
}
void UART_SendByte(unsigned char Byte)
{
SBUF=Byte; //发送
while(TI==0) //检测是否发送完成
TI=0;
}
void main()
{
UART_Init();
while(1)
{
UART_SendByte(Sec);
Sec++;
Delay(1000);
}
}