单片机的fosc=6MHz,采用方式1以1200bps的波特率进行串行通信,串口采用中断方式发送和接收数据,串口的初始化程序如下,请根据语句后面的注释将初始化程序补充完整 void init_serial(void) { (1) //串口选用方式1,允许接收 PCON=PCON|0X80; TMOD= (2); //T1作波特率发生器 TL1=TH1=0xe6; (3) //串口采用高级中断 (4) //开串行中断 EA=1; TR1=1; }
举一反三
- 3、采用双机串行通信,其中甲机发送数据,乙机接收数据,两机fosc为11.0592MHz,波特率为2.4k,串口方式1。接受程序部分如下所示:……void main(void){unchar receiv;TMOD=0x20; //T1定时方式2TH1=TL1=0xf4; //2400b/sPCON=______ ; //波特率不加倍SCON=______ ; //串口方式1,TI和RI清零TR1=1; //启动T1while(1){ while(RI==1) //等待接收完成 { RI=0; //清RI标志位 Receiv=SBUF; //取得接收值 SBUF=receiv; //结果返送主机 while(TI==0); //等待发送结果 TI=______ ; //清TI标志位 P2=map[receiv]; //显示接收值}}}
- 写出51单片机串口初始化的语句,要求使用串口方式1,波特率9600bps,允许接收,启用串口中断,设晶振频率为11.0592MHz。
- 单片机外接6MHz晶振,串行通信波特率为9600b/s,串口采用工作方式1,试计算定时器T1的初值,并编写初始化程序。
- 设MCS-51单片机的晶振为11.0592MHz,串行口中的PCON=0x80, 定时器T1=0xf4f4,串口工作于方式1,波特率由T1决定,则该串行口的波特率为____________b/s。
- 在一采用串口方式 1 的通信系统中,已知 fosc=6MHz,波特率= 2400,SMOD=1,则定时器 T1 在方式 2 时的计数初值应为