您好,欢迎访问三七文档
1习题81.异步通信和同步通信的主要区别是什么,8051单片机串行口有没有同步通信的功能?2.在异步通信中,接收方是如何知道发送方发送数据的?3.为什么80C51单片机串行口的方式0帧格式没有起始位0和停止位1?4.为什么定时器/计数器T1用作串行口波特率发生器时,常采用方式2?若已知时钟频率、串行通信的波特率,如何计算装入的T1的初值?5.直接以TTL电平串行传输数据的方式有什么缺点?为什么在串行传输距离较远时,常采用RS-232C、RS-422A、RS-485标准串行接口来进行串行数据传输?比较RS-232C、RS-422A、RS-485标准串行接口各自优缺点。6.假定串行口串行发送的字符格式为1位起始位,8位数据位,1位校验位,1位停止位,请画出传送字符“B”的帧格式。7.某AT89C51单片机串行口,传送数据的帧格式由1个起始位(0),7个数据位,1个偶校验位和1个停止位(1)组成。当该串行口每分钟传送1800个字符时,试计算它的波特率。8.若晶体振荡器为11.0592MHz,串行口工作于方式1,波特率为4800b/s,写出用T1作为波特率发生器的方式控制字和计数初值。9.使用AT89C51的串行口按工作方式1进行串行数据通信,假定波特率为2400b/s,以查询方式传送数据,请编写发送程序。10.请用中断法编写串行口方式1下的接收程序。设80C51单片机主频为11.0592MHz,波特率为1200b/s,接收数据缓冲区在片外RAM起始地址为BLACK单元,接收数据长度为30,采用偶校验(数据长度不发送)。#includereg51.h#defineuintunsignedint#defineucharunsignedcharucharxdataBLACK[30];voidInitUART(void){2uchari;EA=0;//暂时关闭中断TMOD=0x20;//定时器1工作在模式2,自动重装模式SCON=0x40;//串口工作在模式1TH1=0xcc;//定时器重装值TL1=0xcc;PCON=0x80;//串口波特率加倍ES=1;//串行中断允许TR1=1;//启动定时器1REN=1;//允许接收EA=1;//允许中断for(i=0;i30;i++)BLACK[i]=i;}uint8sending;voidUartPutChar(uint8d){SBUF=d;//将数据写入到串口缓冲Sending=1;//设置发送标志while(Sending);//等待发送完毕}voidUartISR(void)interrupt4{if(RI)//收到数据{RI=0;//清中断请求}else//发送完一字节数据{TI=0;Sending=0;//清正在发送标志}}11.请用中断法编写串行口方式2下的发送程序。设80C51单片机主频为11.0592MHz波特率为9600,发送数据缓冲区在片外RAM起始地址为BLACK单元,接收数据长度为30,采用偶校验,放在发送数据第9位上(数据长度不发送)。3
本文标题:单片机习题8答案
链接地址:https://www.777doc.com/doc-2594163 .html