RS-232-C的C语言程序

来源:百度知道 编辑:UC知道 时间:2024/05/15 19:36:26

通过RS232总线与PC进行通信的测试程序(c语言)

/*这是一个使用单片机串行通信口通过RS232总线与PC进行通信的测试程序,无需扩展.可将DB9的第2和第3脚短路,进行自收自发测试.采用串行中断接收,速率:9600,通信方式2,晶振使用:osc=11.0592MHz。使用SW1-SW6键盘发送文本数字1-6,数码管显示接收的ASCII数据*/
void main(void)
{
SCON=0x50;
TMOD=0x21;
TH1=0xfd;
TL1=0xfd;
TH0=0xf4;
TL0=0x48;
ES=1;ET0=1;EA=1;
TR1=1;
TR0=1;
while(1)
{
if(!key){ Delay(30000);
a=Key_down();
SBUF=table[a];
while(TI==0);
TI=0;
}
}
}

uchar Key_down(void)
{ uchar x;
if(!sw1)x=1;
else if(!sw2)x=2;
else if(!sw3)x=3;
else if(!sw4)x=4;
else if(!sw5)x=5;
else if(!sw6)x=6;
return(x);
}
void Int_T0(void) interrupt 1
{
TH0=0xf4;
TL0=0x48;
if(count==5)count=0;
else count++;
switch(count)<