单片机c语言 谁能解释下 十分感谢

来源:百度知道 编辑:UC知道 时间:2024/05/24 09:33:01
void csh()
{
SM0=0;
SM1=1;
REN=1;
TI=0;
RI=0;
PCON=0;
TH1=0xF3;
TL1=0XF3;
TMOD=0X20;
EA=1;
ET1=0;
ES=1;
TR1=1;
}

void main()
{
int i,j;
char c;
csh();
while(1)
{
TI=0;
P0=c;
SBUF=c;
while(!TI);
TI=0;
for(j=0;j<25;j++)
for(i=0;i<5000;i++)
;
c++;
}
}

void intrr() interrupt 4
{
char temp;
temp=SBUF;
P2=temp;
RI=0;
}

呵呵,怎么会写出这么一段程序呢,很奇怪的程序。

功能:
1)串口发送0~255
楼上说0--65535,不可能的,除非是用上位机做演示
一般单片机是8位的,c为字符型
2) P0 口不断输出,从0~255
3)从串口接收数据,用P2口输出

波特率:采用10位UART,奇怪了,不知道你用的晶振是多大,我猜测波特率是2400bps

串口发送0--65535,循环发送
CSH()//初始化
interrupt 4 //发送中断子程序
MAIN()//主程序