|
#include
unsigned char i,j;
unsigned char code tab[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,
0x87,0xff,0xef} ;
void Init_Com()
{
TMOD = 0x20;
PCON = 0x00;
SCON = 0x50;
TH1 = 0xFd;
TL1 = 0xFd;
TR1 = 1;
}
void main()
{
EA=1;
Init_Com();
TI=1;
while(TI)
{
for(i=0;i<10;i++)
SBUF=tab;
}
TR1=0;
}
我刚刚开始学习单片机,拿着C编程。
Init_Com()是设置波特率,程序的目的是从单片机通过串口向PC传输十个数,PC通过串口调试助手接收。我主要是想问一下,C语言的执行过程,我现在开始怀疑我的C的水平了。
首先从助手中查看到的数据不是按顺序来的,乱七八糟。
第二就是程序没有尽头,一直进行传输,发现TR1=0没有停止计数器,这是怎么回事?
能帮我找一下原因吗?
|
|