首页 单片机第7章答案

单片机第7章答案

举报
开通vip

单片机第7章答案第7章思考题及习题71.如果采用的晶振的频率为24MHz,定时器/计数器工作在方式0、1、2下,其最大定时时间各为多少?答:晶振的频率为24MHz,机器周期为0.5µs。方式0最大定时时间=0.5µs×213=0.5µs×8192=4096µs方式1最大定时时间=0.5µs×216=0.5µs×65536=327686µs方式2最大定时时间=0.5µs×28=0...

单片机第7章答案
第7章思考题及习题71.如果采用的晶振的频率为24MHz,定时器/计数器工作在方式0、1、2下,其最大定时时间各为多少?答:晶振的频率为24MHz,机器周期为0.5µs。方式0最大定时时间=0.5µs×213=0.5µs×8192=4096µs方式1最大定时时间=0.5µs×216=0.5µs×65536=327686µs方式2最大定时时间=0.5µs×28=0.5µs×256=128µs2.定时器/计数器用作计数器模式时,对外界计数频率有何限制?答:外部输入的计数脉冲的最高频率为系统振荡器频率的1/24。3.定时器/计数器的工作方式2有什么特点?适用于哪些应用场合?答:方式2为初值自动装入的8位定时器/计数器,克服了在循环定时或循环计数应用时就存在用指令反复装入计数初值影响定时精度的问题。适用于精确定时,比如波特率的产生。4.THx与TLx(x=0,1)是普通寄存器还是计数器?其 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 可以随时用指令更改吗?更改后的新值是立即刷新还是等当前计数器计满后才能刷新?答:THx与TLx(x=0,1)是计数器,其内容可以随时用指令更改,但是更改后的新值要等当前计数器计满后才能刷新。答:THX与TLX(X=0,1)是由特殊功能寄存器构成的计数器,其内容可以随时用指令更改,更改后的新值是立即刷新。但在读THX、TLX的值时,应该先读THX值,后读TLX,再读THX。若两次读得THX相同,则可确定读得的内容正确。若前后两次读得的THX有变化,再重复上述过程。5.Proteus虚拟仿真使用定时器T0,采用方式2定时,在P1.0脚输出周期为400µs,占空比为4:1的矩形脉冲,要求在P1.0脚接有虚拟示波器,观察P1.0脚输出的矩形脉冲波形。答:略6.Proteus虚拟仿真利用定时器T1的中断来使P1.7控制蜂鸣器发出1kHz的音频信号,假设系统时钟频率为12MHz。答:利用定时器T1的中断控制P1.7引脚输出频率为1kHz的方波音频信号,驱动蜂鸣器发声。系统时钟为12MHz。方波音频信号的周期为1ms,因此T1的定时中断时间为0.5ms,进入中断服务程序后,对P1.7求反。电路如图所示。图控制蜂鸣器发出1kHz的音频信号先计算T1初值,系统时钟为12MHz,则方波的周期为1µs。1kHz的音频信号周期为1ms,要定时计数的脉冲数为a。则T1的初值:TH1=(65536−a)/256;TL1=(65536−a)%256参考程序如下:#include<reg51.h>//包含头文件sbitsound=P1^7;//将sound位定义为P1.7引脚#definef1(a)(65536-a)/256//定义装入定时器高8位的时间常数#definef2(a)(65536-a)%256//定义装入定时器低8位的时间常数unsignedinti=500;unsignedintj=0;voidmain(void){EA=1;//开总中断.ET1=1;//允许定时器T1中断.TMOD=0x10;//TMOD=0001000B,使用T1的方式1定时TH1=f1(i);//给定时器T1高8位赋初值.TL1=f2(i);//给定时器T1低8位赋初值.TR1=1;//启动定时器T1while(1){//循环等待i=460;while(j<2000);j=0;i=360;while(j<2000);j=0;}}voidT1(void)interrupt3using0//定时器T1中断函数{TR1=0;//关闭定时器T1sound=~sound;//P1.7输出求反TH1=f1(i);//定时器T1的高8位重新赋初值.TL1=f2(i);//定时器T1的低8位重新赋初值.j++;TR1=1;//启动定时器T1}7.Proteus虚拟仿真制作一个LED数码管显示的秒 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf ,用2位数码管显示计时时间,最小计时单位为“百毫秒”,计时范围0.1~9.9s。当第1次按下并松开计时功能键时,秒表开始计时并显示时间;第2次按下并松开计时功能键时,停止计时,计算两次按下计时功能键的时间,并在数码管上显示;第3次按下计时功能键,秒表清0,再按1次计时功能键,重新开始计时。如果计时到9.9s时,将停止计时,按下计时功能键,秒表清零,再按下重新开始计时。答:本秒表应用了AT89C51的定时器工作模式,计时范围0.1~9.9s。此外还涉及如何编写控制LED数码管显示的程序。LED数码管显示的秒表原理电路如图所示。图LED数码管显示的秒表原理电路及仿真参考程序如下:#include<reg51.h>//包含51单片机寄存器定义的头文件unsignedcharcodediscode1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};//数码管显示0~9的段码表,带小数点unsignedcharcodediscode2[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//数码管显示0~9的段码表,不带小数点unsignedchartimer=0;// 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 中断次数unsignedcharsecond;//储存秒unsignedcharkey=0;//记录按键次数main()//主函数{TMOD=0x01;//定时器T0方式1定时ET0=1;//允许定时器T0中断EA=1;//总中断允许second=0;//设初始值P0=discode1[second/10];//显示秒位0P2=discode2[second%10];//显示0.1s位0while(1)//循环{if((P3&0x80)==0x00)//当按键被按下时{key++;//按键次数加1switch(key)//根据按键次数分三种情况{case1://第一次按下为启动秒表计时TH0=0xee;//向TH0写入初值的高8位TL0=0x00;//向TL0写入初值的低8位,定时5msTR0=1;//启动定时器T0break;case2://按下两次暂定秒表TR0=0;//关闭定时器T0break;case3://按下3次秒表清0key=0;//按键次数清0second=0;//秒表清0P0=discode1[second/10];//显示秒位0P2=discode2[second%10];//显示0.1s位0break;}while((P3&0x80)==0x00);//如果按键时间过长在此循环}}}voidint_T0()interrupt1using0//定时器T0中断函数{TR0=0;//停止计时,执行以下操作(会带来计时误差)TH0=0xee;//向TH0写入初值的高8位TL0=0x00;//向TL0写入初值的低8位,定时5mstimer++;//记录中断次数if(timer==20)//中断20次,共计时20*5ms=100ms=0.1s{timer=0;//中断次数清0second++;//加0.1sP0=discode1[second/10];//根据计时时间,即时显示秒位P2=discode2[second%10];//根据计时时间,即时显示0.1s位}if(second==99)//当计时到9.9s时{TR0=0;//停止计时second=0;//秒数清0key=2;//按键数置2,当再次按下按键时,key++,即key=3,秒表清0复原}else//计时不到9.9s时{TR0=1;//启动定时器继续计时}}8.Proteus虚拟仿真制作一个采用LCD1602显示的电子钟,在LCD上显示当前的时间。显示格式为“时时:分分:秒秒”。设有4个功能键k1~k4,功能如下:(1)k1—进入时间修改。(2)k2—修改小时,按一下k2,当前小时增1。(3)k3—修改分钟,按一下k3,当前分钟增1。(4)k4—确认修改完成,电子钟按修改后的时间运行显示。答:本题难点在于处理功能键K1~K4的输入,由于每个功能键都具有相应的一种或多种功能,因此程序中需要大量使用do{}while或while{}循环结构,以检测是否有按键按下的具体功能。按键检测函数如下:voidtime_change(){unsignedcharkeyvalue0=0,keyvalue1=0;keyvalue0=keyscan();//检测是否有按键按下if(keyvalue0)//如果有按键按下,继续检测{if(keyvalue0==1)//按键1,走时停止,开始判断更改值,直到按键4按下{while(~key0);//防抖,直到按键松开时才进行下一步的操作TR0=0;//控制走时的中断停止do{keyvalue1=keyscan();//检测按键按下if(keyvalue1==2)//如果按键2按下,改变时间{while(~key1);//防抖if(hour<23)//如果小时数小于23则加1{hour++;}else//如果小时数为23,置位为0{hour=0;}}elseif(keyvalue1==3)//如果按键3按下,改变分钟{while(~key2);//防抖if(minute<59)//如果分钟数小于59则加1{minute++;}else//如果分钟数为59,置位为0{minute=0;}clock_write();}}while(keyvalue1!=4);//重复对时间的修改直到按键4按下while(~key3==0);//防抖TR0=1;//调整时间后重新开始走时}}}必须注意,程序设计中,小时、分钟、秒变量hour、minute、second必须置为全局变量,才能如上述函数一样在各处函数中直接进行修改,如为局部变量,则上述形式的直接修改无效。1602液晶显示模块以及基于单片机定时器的时钟实现见教材的介绍,不再赘述。LCD时钟原理电路图如下图。程序执行后工作指示灯D1闪动一下,表示时钟开始运行。按下按键K1后,D1停止闪烁,即时钟停止走时,时钟停在当前时刻;按下按键K2和K3后,可改变小时和分钟;按下按键K4后,时钟从修改后的时间重新开始运行。为加强AT89C51的驱动能力,原理图中加入作为上拉电阻的排电阻(CTRESPACK-7),即图中的RP1。图LCD电子钟电路原理电路图与仿真一、填空题1.MCS-51单片机中有2个16位的定时器/计数器。2.定时/计数器有(4)种工作方式,方式2的是一个8位自动重装初值的定时/计数器。3.定时器/计数器T0可以工作于方式0、1、2、3。4.方式0为13位定时器/计数器。5.若系统晶振频率为12MHz,则T0工作于定时方式1时最多可以定时65536µs。6.若系统晶振频率为6MHz,则定时器可以实现的最小定时时间为2µs。7.欲对300个外部事件计数,可以选用定时器/计数器T1的方式0或方式1。8.TMOD中的M1M0=11时,定时器工作于方式3。9.MCS-51单片机工作于定时状态时,计数脉冲来自单片机内部的机器周期。10.MCS-51单片机工作于计数状态时,计数脉冲来自单片机外部事件。11.当GATE=0时,则当软件控制位TR0=1时启动T0开始工作。12.MCS-51单片机有两个定时器/计数器,即定时器/计数器0和1,简称为T0和T1。13.T0和T1都具有定时和计数的功能,可以通过特殊功能寄存器来选择。14.寄存器TMOD的C/T位又称为工作模式选择位,可以选择定时功能或者计数功能。15.中断控制寄存器TCON包含三个部分,TF1和TR1位用于控制T1,TF0和TR0位用于控制T0,其余的4位为定时中断控制位。16.定时/记数器的工作方式由寄存器TMOD决定,中断请求标志由寄存器TCON控制。17.外部中断0的中断入口地址为0003H,定时/记数器T1的中断入口地址为001BH。18.定时/计数器T0工作在方式2的定时状态,已知晶振周期为12MHZ,定时时间为250us,计数初值为6,如果定时时间为256us,则计数初值为019.当AT89S51单片机的定时/计数器设置为计数方式时,外部事件的最高计数频率为振荡频率的1/24。20.设MCS-51单片机晶振频率为12MHz,定时器作计数器使用时,其最高的输入计数频率应为_0.5MHz21.若单片机的时钟频率为8MHz,则时钟周期为,机器周期TM=。0.125us1.5us22.若要利用定时器T1产生串行通信的波特率,则T1工作在方式2下。23.当定时器T0发生中断时,程序将自动跳到____0BH___地址去执行。24.当定时/计数器T0工作在方式3时,T0被拆分为2个独立的8位计数器。二、选择题1.T1不可以工作如下那个模式(D)。A.工作模式0B.工作模式1C.工作模式2D.工作模式32.以下哪个寄存器可以位寻址(B)。A.TMODB.TCONC.TH0D.TL03.以下哪个工作模式为16位计数器方式(B)。A.工作模式0B.工作模式1C.工作模式2D.工作模式34.51系列单片机最多可以使用(B)个定时器/计数器。A.2B.3C.1D.45.判断下列的说法是否正确?(1)特殊功能寄存器SCON,与定时器/计数器的控制无关。(对)(2)特殊功能寄存器TCON,与定时器/计数器的控制无关。(错)(3)特殊功能寄存器IE,与定时器/计数器的控制无关。(错)(4)特殊功能寄存器TMOD,与定时器/计数器的控制无关。(错)6.MCS-51单片机定时器工作方式0是(C)工作方式。A)8位B)8位自动重装C)13位D)16位7.8051单片机的定时器T1用作定时方式时是。BA.由内部时钟频率定时,一个时钟周期加1B.由内部时钟频率定时,一个机器周期加1C.由外部时钟频率定时,一个时钟周期加1D.由外部时钟频率定时,一个机器周期加18.8051单片机的定时器T0用作计数方式时是。CA.由内部时钟频率定时,一个时钟周期加1B.由内部时钟频率定时,一个机器周期加1C.由外部计数脉冲计数,下降沿加1D.由外部计数脉冲计数,一个机器周期加19.51单片机的定时器T1用作计数方式时计数脉冲是。AA.外部计数脉冲由T1(P3.5)输入B.外部计数脉冲由内部时钟频率提供C.外部计数脉冲由T0(P3.4)输入D.由外部计数脉冲计数10.8031单片机的定时器T0用作定时方式时是。DA.由内部时钟频率定时,一个时钟周期加1B.由外部计数脉冲计数,一个机器周期加1C.外部定时脉冲由T0(P3.4)输入定时D.由内部时钟频率计数,一个机器周期加111.51单片机的机器周期为2µs,则其晶振频率fosc为MHz。A.1B.2C.6D.1212.定时器T1作定时模式,用方式1,则工作方式控制字为。CA.01HB.05HC.10HD.50H13.定时器T1作计数模式,用方式2,则工作方式控制字为。AA.60HB.02HC.06HD.20H14.定时器T1作定时模式,用方式2,则工作方式控制字为。DA.60HB.02HC.06HD.20H15.21.用定时器T0作计数模式,用方式1(16位),则工作方式控制字为。DA.01HB.02HC.04HD.05H16.22.用定时器T0作定时模式,用方式2,则工作方式控制字为。BA.01HB.02HC.04HD.05H17.启动定时器0开始计数的指令是使TCON的。BA.TF0位置1B.TR0位置1C.TR0位置0D.TR1位置018.启动定时器1开始定时的指令是。BA.TF1位置1B.TR1位置1C.TR0位置0D.TR1位置019.使定时器T0停止计数的指令是。AA.TF0位置1B.TR0位置1C.TR0位置0D.TR1位置020.使定时器T1停止定时的指令是。BA.TF1位置1B.TR1位置0C.TR0位置0D.TR1位置121.当CPU响应定时器T1的中断请求后,程序计数器PC的内容是。DA.0003HB.000BHC.00013HD.001BH22.用定时器T1方式1计数,要求每计满10次产生溢出标志,则TH1、TL1的初始值是A。A.FFH、F6HB.F6H、F6HC.F0H、F0HD.FFH、F0H23.用定时器T1方式2计数,要求每计满100次,向CPU发出中断请求,TH1、TL1的初始值是。AA.9CHB.20HC.64HD.A0H24.单片机定时器溢出标志是。DA.TR1和TR0B.IE1和IE0C.IT1和IT0D.TF1和TF025.51单片机定时器外部中断1和外部中断0的触发方式选择位是。CA.TR1和TR0B.IE1和IE0C.IT1和IT0D.TF1和TF026.定时器T1的溢出标志TF1,若计满数产生溢出时,如不用中断方式而用查询方式,则应。BA.由硬件清零B.由软件清零C.由软件置于D.可不处理27.定时器T0的溢出标志TF0,若计满数产生溢出时,其值为。CA.00HB.FFHC.1D.计数值28.定时器T0的溢出标志TF0,若计满数在CPU响应中断后。AA.由硬件清零B.由软件清零C.A和B都可以D.随机状态29.单片机计数初值的计算中,若设最大计数值为M,对于方式1下的M值为D。A.M=132=8192B.M=82=256C.M=42=16D.M=162=6553630.对定时器控制寄存器TCON中的IT1和IT0位清0后,则外部中断请求信号方式为A。A.低电平有效B.高电平有效C.脉冲上跳沿有效D.脉冲后沿负跳有效31.51单片机定时器内部结构由组成。A、B、D、E、A.TCONB.TMODC.计数器D.T0E.T132.51单片机控制寄存器TCON的作用是ABCE等。A.定时/计数器的启、停控制B.定时器的溢出标志C.外部中断请求标志D.确定中断优先级E.选择外部中断触发方式33.定时器T0作定时用,采用方式1,编程时需有下列步骤ACDE。A.TMOD初始化B.选择电平触发还是边沿触发C.置入计数初值D.启动定时器E.串行计数是否溢出及转移34.定时器T1作定时模式,用方式2,则初始化编程为BD。A.置TMOD为05HB.置TMOD为60HC.置TMOD为02HD.置TH0、TL0相同初值,以后不须重新置数E.置TH0、TL0相同初值,以后须重新置数35.在下列寄存器中,与定时/计数控制无关的是(C)(A)TCON(定时控制寄存器)(B)TMOD(工作方式控制寄存器)(C)SCON(串行控制寄存器)(D)IE(中断允许控制寄存器)36.定时工作方式1和方式0比较,定时工作方式2不具备的特点是(B)(A)计数溢出后能自动重新加载计数初值(B)增加计数器位数(C)提高定时精度(D)适于循环定时和循环计数应用37.振荡频率为12MHz,定时器在工作方式1下最大定时时间为A.8.192msB.65.536msC.0.256msD.16.384ms答案:9.B38.当8051单片机系统的振荡晶体频率为3MHz时,其一个机器周期的时间是D。(A)0.5μS(B)1μS(C)2μS(D)4μS39.下列特殊功能寄存器中可以位寻址的是A。(A)TCON(88H)(B)DPL(82H)(C)TH0(8CH)(D)SBUF(99H)40.定时/计数器T1的工作方式2为(A)位工作方式。A、8B、10C、13D、1641.当单片机的振荡频率为12MHz时,则定时器每计一个内部脉冲的时间为(A)。A、1μsB、2μsC、3μsD、4μs42.定时/计数器T0工作在门控方式时,其门控信号由(A)引脚输入。A、INT0B、INT1C、T0D、T143.中断控制与哪些寄存器有关(D)。A、TCON,SCON,PSW,SPB、TCON,SCON,IE,SPC、TCON,SCON,PSW,IPD、TCON,SCON,IE,IP三、简答题1.定时器作定时和计数时其计数脉冲分别由谁提供?答:作定时器时计数脉冲由片内振荡器输出经12分频后的脉冲提供,作计数时计数脉冲由外部信号通过引脚P3.4和P3.5提供。2.一个定时器的定时时间有限,如何实现两个定时器的串行定时,来实现较长时间的定时?答:方式一,在第一个定时器的中断服务程序里关闭本定时器的中断程序,设置和打开另一个定时器;在另一个定时器的中断服务程序中关闭本定时中断,设置和打开另一个定时器。这种方式的定时时间为两个定时器定时时间的和。方式二,一个作为定时器,在定时中断后产生一个外部计数脉冲(比如由P1.0接INT0产生),另一个定时器工作在计数方式。这样两个定时器的定时时间为一个定时器的定时时间乘以另一个定时器的计数值。3.当定时器T0用于方式3时,应该如何控制定时器T1的启动和关闭?答:由T1(P3.5)口控制定时器T1的启动和关闭。4.定时器/计数器测量某正单脉冲的宽度,采用何种方式可得到最大量程?若时钟频率为6MHz,求允许测量的最大脉冲宽度是多少?答:采用方式1定时工作方式。最大脉冲宽度为131.072ms。5.定时器/计数器T0和T1各有几种工作方式?简述每种工作方式的特点。如何控制定时器/计数器的工作方式?答:T0可以工作于方式0,1,2,3;T1可以工作于方式0,1,2方式0:是13位定时/计数器,由TLX的低5位(TLX的高3位未用)和THX高8位组成。方式1:TLX和THX组成16位定时/计数器。方式2:方式2为自动重装初值的8位定时/计数器。方式3只适用于定时/计数器T0,当T0工作在方式3时,TH0和TL0被分为两个独立的8位计数器。通过设置TMOD中的M1、M0两位来选择工作方式,如下表所示。M1M0工作方式方式说明00方式013位定时/计数器01方式116位定时/计数器10方式2具有自动重装初值的8位定时/计数器11方式3T0为两个独立的8位计数器,T1为波特率发生器6.设单片机的晶振频率fOSC=6MHz,分别讨论定时器/计数器0在各种工作方式下的最长定时时间。答:由fOSC=6MHz可知,一个机器周期T=2us,由于是加1计数,所以最长定时应是计数初值最小时(即为0时)的定时时间。方式0:(213–0)×2us=214us=16384us=16.384ms方式1:(216–0)×2us=217us=131.072ms方式2、3:(28–0)×2us=29us=0.512ms5.简述MCS-51单片机定时/计数器中定时/计数初值的设置方法。设单片机时钟电路的振荡频率oscf为11.0592MHz,则经12分频后得到的机器周期0T为:012121.08511.0592oscTssfMCS-51单片机的定时/计数器T1和T0都是增量计数器,因此不能直接将要计数的值作为初值放入寄存器中,而是将计数的最大值(溢出值)减去实际要计数的值,将差值存入寄存器中。所以定时/计数器计数初值的计算公式如下:2n计数初值实际计数值式中,n为由工作方式决定的定时/计数器位数。在工作方式0下,n取13,1328192;在工作方式1下,n取16,16265536。
本文档为【单片机第7章答案】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
文娇
教师
格式:pdf
大小:225KB
软件:PDF阅读器
页数:0
分类:高中语文
上传时间:2019-07-23
浏览量:1