#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar i=0;
uint a=2000;
void init()
{
SCON=0x40; //Í通信方式2,不接收
TMOD=0x20; //定时器1, 方式2
TH1 =0xfa; //波特率4800, 不加倍,f=12MHZ
TL1 =0xfa;
TR1 =1; //打开定时器T1
}
void delay()
{
while(a--);
}
void main()
{
init();
while(1)
{
SBUF=i;
while(!TI);
TI=0;
delay();
}
}
我想把i=0发送到串口助手,但是串口不显示0000----, 代码有错吗?哪位知道,解释一下啊
什么都不显示,程序有没有错?
追答程序,虽然有些毛病,但是,也可以发送。
你发送可见的符号,试试看,如:SBUF='A';
加EA ? 那不还要加 ES 还要写中断?
追答不用。EA=1是开总中断,因为你用了定时器