STC串口问题 重新上电后不工作
IAP15F2K61S2,支持在线仿真等,写的程序如下:#include<STC15F2K.H>
#define uchar unsigned char
#define uint unsigned int
uchar i=0;
void UartInit(void) //9600bps@11.0592MHz
{
SCON = 0x50; //8位数据,可变波特率
AUXR |= 0x40; //定时器1时钟为Fosc,即1T
AUXR &= 0xFE; //串口1选择定时器1为波特率发生器
TMOD &= 0x0F; //设定定时器1为16位自动重装方式
TL1 = 0xE0; //设定定时初值
TH1 = 0xFE; //设定定时初值
ET1 = 0; //禁止定时器1中断
TR1 = 1; //启动定时器1
EA=1;
ES=1;
}
uchar code table[]={0x01,0x06,0x00,0x03,0x00,0x30,0x79,0xDE};
void delayms(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void uart_send(uchar dat)
{
ES=0;
SBUF=dat;
while(!TI);
TI=0;
ES=1;
}
void main()
{
delayms(60000);
UartInit();
while(1)
{
for(i=0;i<8;i++)
{
uart_send(table);
delayms(4000);
}
}
}
目的就是上电发送那几个数,刚下载后,运行正常,断电重新上电,就不工作了,不知道为何啊?哪位熟悉的朋友指点一下啊。 应该是程序问题,更改一下设置,放在STC89C52上就一点问题没有,呵呵,还得研究下这个新片子的用法。。。。。。。 烧写时,最后第二项,有个串口切换的勾去掉。 恩,是这样子的,呵呵,硬件选项中不选择倒数第三项第二项就可以了,一直以为是新片子硬件结构我不熟悉导致的,呵呵,谢谢楼上兄弟了。
页:
[1]