数据更改就发送不了是什么原因

把Buff里面改成全0的三个数,P16接的LED就一直亮着,不会闪烁。
#include "reg52.h"

typedef unsigned int u16; //对系统默认数据类型进行重定义
typedef unsigned char u8;
unsigned char Buff[3]={00000001,00000001,00000001};
sbit Rs485_DIR=P1^7;
sbit P16=P1^6; //检验
sbit P15=P1^5; //检验

void delay10ms()
{
unsigned int l,j,k;
for(l=5;l>0;l--)
for(j=4;j>0;j--)
for(k=248;k>0;k--);
}

void main()
{
P15=1;
P16=1;
Rs485_DIR=1;
SCON = 0x50;
TMOD=0x21;
TH1=256-(11059200/384)/9600;
TL1=TH1;
ET1=0;
TR1=1;
TH0=0x3C;
TL0=0xB0;
EA=1;
ET0=1;
TR0=1;
}

void Timer0()interrupt 1
{
unsigned int i;
TI=0;
P16=0;
for(i=0;i<3;i++){
SBUF=Buff[i];
while(!TI);
P16=0;
delay10ms();
P16=1;
delay10ms();
TI=0;
}
TH0=0x3C;
TL0=0xB0;
}

程序没有报错但仿真不行