单片机原理及应用张毅刚习题与解答_第1页
单片机原理及应用张毅刚习题与解答_第2页
单片机原理及应用张毅刚习题与解答_第3页
单片机原理及应用张毅刚习题与解答_第4页
单片机原理及应用张毅刚习题与解答_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

“单片机原理及应用”课程习题与解答参照教材:张毅刚主编,单片机原理及应用,一般高等教育“十五”国家级规划教材,高等教育第一版社,2004年1月第一章1-3:单片机与一般计算机的不一样之处在于其将()()和()三部分集成于一块芯片上。答:CPU、储存器、I/O口1-8:8051与8751的差别是:A、内部数据储存但也数量的不一样B、内部数据储存器的种类不一样C、内部程序储存器的种类不一样D、内部的寄存器的数量不一样答:C第二章2-4:在MCS-51单片机中,假如采纳6MHz晶振,1个机器周期为()。答:2us。析:机器周期为振荡周期的1/6。2-6:内部RAM中,位地点为30H的位,该位所在字节的字节地点为()。答:26H2-7:若A中的内容为63H,那么,P标记位的值为()。答:0析:P为偶校验位,因为A中1的个数为偶数,所以P=0。2-8:判断以下说法能否正确:A、8031的CPU是由RAM和EPROM所构成。B、区分片外程序储存器和片外数据储存器的最靠谱的方法是看其位于地点范围的低端仍是高端。C、在MCS-51中,为使准双向的I/O口工作在输入方式,一定保证它被早先预置为1。D、PC能够当作使程序储存器的地点指针。答:错、错、对、对2-9:8031单片机复位后,R4所对应的储存单元的地点为(),因上电时PSW=()。这时目前的工作寄存器区是()组工作寄存器区。答:04H、00H、02-11:判断以下相关PC和DPTR的结论能否正确?A、DPTR是能够接见的,而PC不可以接见。B、它们都是16位的储存器C、它们都有加1的功能。D、DPTR能够分为两个8位的寄存器使用,但PC不可以。答:对、对、对、对2-13:使用8031芯片刻,需将/EA引脚接()电平,因为其片内无()储存器。答:低、程序2-14:片内RAM低128个单元区分为哪3个主要部分?各部分的主要功能是什么?答:工作寄存器区、位寻址区、数据缓冲区2-15:判断以下说法能否正确A、程序计数器PC不可以为用户编程时直接使用,因为它没有地点。B、内部RAM的位寻址区,只好供位寻址使用,而不可以供字节寻址使用。C、8031共有21个特别功能寄存器,它们的位都是能够用软件设置的,所以,是能够进行位寻址的。答:对、错、错2-16:PC的值是A、目前正在履行指令的前一条指令的地点B、目前正在履行指令的地点C、目前正在履行指令的下一条指令的地点D、控制器中指令寄存器的地点答:C2-17:经过货仓操作实现子程序调用,第一就要把()的内容入栈,以进行断点保护。调用返回时,再进行出栈保护,把保护的断点送回到()。答:PC、PC2-19:MCS-51单片机程序储存器的寻址范围是由程序计数器PC的位数所决定的,因为MCS-51的PC是16位的,所以其寻址的范围为()KB。答:642-20:当MCS-51单片机运转犯错或程序堕入死循环时,怎样来挣脱窘境?答:软件圈套、复位2-21:判断以下说法能否正确?A、PC是1个不行寻址的特别功能寄存器。B、单片机的主频越高,其运算速度越快。C、在MCS-51单片机中,1个机器周期等于1us。D、特别功能寄存器SP内装的是栈顶首地点单元的内容。答:错、对、错、错2-22:假如手中仅有一台示波器,可经过察看哪个引脚的状态,来大概判断MCS-51单片机正在工作?答:ALE析:因为单片机正常工作时,ALE脚输出时钟频次为振荡周期的1/6。第三章3-1:判断以下指令的正误:1)MOV28H,@R22)DECDPTR3)INCDPTR4)CLRR05)CPLR56)MOVR0,R17)PUSHDPTR8)MOVF0,C9)MOVF0,ACC.310)MOVXA,@R111)MOVC,30H12)RLCR0答:错、错、对、错错、错、错、对错、对、对、错3-2:判断以下说法能否正确。A、立刻寻址方式是被操作的数据自己在指令中,而不是它的地点在指令中。B、指令周期是履行一条指令的时间。C、指令中直接给出的操作数称为直接寻址。答:对、对、错3-3:在基址加变址寻址方式中,以()作变址寄存器,以()或()作基址寄存器。答:累加器A,DPTR、PC3-7:指令格式是由()和()所构成,也可能仅由()构成。答:操作码、操作数、操作码3-8:假定累加器A中的内容为30H,履行指令1000H:MOVCA,@A+PC后,把程序储存器()单元的内容送入累加器A中。答:1031H3-9:在MCS-51中,PC和DPTR都用于供给地点,但PC是为接见()储存器供给地址,而DPTR是为接见()储存器供给地点。答:程序、数据3-10:在寄存器间接寻址方式中,其“间接”表此刻指令中寄存器的内容不是操作数,而是操作数的()。答:地点3-11:以下程序段的功能是什么?PUSHAPUSHBPOPAPOPB答:交换A、B的内容3-12:已知程序履行前有A=02H,SP=52H,(51H)=FFH,(52H)=FFH。下述程序履行后:POPDPHPOPDPLMOVDPTR,#4000HRLAMOVB,AMOVCA,@A+DPTRPUSHAMOVA,BINCAMOVCA,@A+DPTRRETORG4000HDB10H,80H,30H,50H,30H,50H请问:A=(),SP=(),(51H)=(),(52H)=(),PC=()。答:A=50H,SP=50H,(51H)=30H,(52H)=50H,PC=5030H3-14:假定A=83H,(R0)=17H,(17H)=34H,履行以下指令:ANLA,#17HORL17H,AXRLA,@R0CPLA后,A的内容为()。答:0CBH3-15:假定A=55H,R3=0AAH,在履行指令ANLA,R3后,A=(),R3=()。答:0、0AAH3-16:假如DPTR=507BH,SP=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行以下指令后:POPDPHPOPDPLPOPSP则:DPH=(),DPL=(),SP=()答:DPH=3CH,DPL=5FH,SP=4FH3-17:假定,SP=60H,A=30H,B=70H,履行以下指令:PUSHAPUSHB后,SP的内容为(),61H单元的内容为(),62H单元的内容为()。答:62H,30H,70H第四章4-6:试编写1个程序,将内部RAM中45H单元的高4位清0,低4地点1。答:MOV

A,45HANL

A,#0FHORL

A,#0FHMOV

45H,A4-7:已知程序履行前有A=02H,SP=42H,(41H)=FFH,(42H)=FFH。下述程序履行后:POPDPHPOPDPLMOVDPTR,#3000HRLAMOVB,AMOVCA,@A+DPTRPUSHAMOVA,BINCAMOVCA,@A+DPTRPUSHARETORG3000HDB10H,80H,30H,80H,50H,80H请问:A=(),SP=(),(51H)=(),(52H)=(),PC=()。答:A=80H,SP=40H,(51H)=50H,(52H)=80H,PC=8050H4-8:计算下边子程序中指令的偏移量和程序履行的时间(晶振频次为12MHz)。MOVR3,#15H;1个机器周期DL1:MOVR4,#255;1个机器周期DL2:MOVP1,R3;2个机器周期DJNZR4,DL2;2个机器周期DJNZR3,DL1;2个机器周期RET;2个机器周期答:15348us析:((2+2)×255+1+2)×15+1+2=15348us4-9:假定A=83H,(R0)=17H,(17H)=34H,履行以下指令:ANLA,#17HORL17H,AXRLA,@R0CPLA后,A的内容为()。答:0CBH4-10:试编写程序,查找在内部RAM的30H~50H单元中能否有0AAH这一数据。如有,则将51H单元置为“01H”;若未找到,则将51H单元置为“00H”。答:START:MOVR0,#30HMOVR2,#20HLOOP:MOVA,@R0CJNEA,#0AAH,NEXTMOV51H,#01HLJMPEXITNEXT:INCR0DJNZR2,LOOPMOV51H,#00HEXIT:RET4-11:试编写程序,查找在内部RAM的20H~40H单元中出现“00H”这一数据的次数。并将查找到的结果存入41H单元。答:START:MOV41H,#0MOVR0,#20HMOVR2,#20HLOOP:MOVA,@R0JNZNEXTINC41HNEXT:INCR0DJNZR2,LOOPRET4-12:若SP=60H,标号LABEL所在的地点为3456H。LCALL指令的地点为2000H,执行指令以下:2000HLCALLLABEL后,货仓指针SP和货仓内容发生了什么变化?PC的值等于什么?假如将指令LCALL直接换成ACALL能否能够?假如换成ACALL指令,可调用的地点范围是什么?答:1)SP=SP+1=61H(61H)=PC的低字节=03HSP=SP+1=62H(62H)=PC的高字节=20H2)PC=3456H3)能够4)2KB=2048Byte第五章5-4:外面中止1所对应的中止进口地点为()H。答:0013H5-5:以下说法错误的选项是:A、各中止发出的中止恳求信号,都会标记在MCS-51系统的IE寄存器中。B、各中止发出的中止恳求信号,都会标记在MCS-51系统的TMOD寄存器中。C、各中止发出的中止恳求信号,都会标记在MCS-51系统的IP寄存器中。D、各中止发出的中止恳求信号,都会标记在MCS-51系统的TCON与SCON寄存器中。答:ABC5-7:中止查问确认后,在以下各种8031单片机运转状况中,能立刻进行响应的是:A、目前正在履行高优先级中止办理B、目前正在履行RETI指令C、目前指令是DIV指令,且正处于取指令的机器周期D、目前指令是MOVA,R3答:D5-8:8031单片机响应中止后,产生长调用指令LCALL,履行该指令的过程包含:第一把()的内容压入货仓,以进行断点保护,而后把长调用指令的16位地点送(),使程序履行转向()中的中止地点区。答:PC、PC、程序储存器5-9:编写出外面中止1为跳沿触发的中止初始化程序。答:SETBIT1SETBEX1SETBEA5-10:在MCS-51中,需要外加电路实现中止撤掉的是:A、准时中止B、脉冲方式的外面中止C、外面串行中止D、电平方式的外面中止答:D5-12:以下说法正确的选项是:A、同一级其余中止恳求准时间的先后次序响应。B、同一时间同一级其余多中止恳求,将形成堵塞,系统没法响应。C、低优先级中止恳求不可以中止高优先级中止恳求,可是高优先级中止恳求能中止低优先级中止恳求。D、同级中止不可以嵌套。答:ACD5-13:中止服务子程序返回指令RETI和一般子程序返回指令RET有什么差别?答:RETI指令在返回的同时除去相应的优先级触发器,以同意下次中止5-14:某系统有3个外面中止源1、2、3,当某一中止源变为低电平常,便要求CPU进行办理,它们的优先办理序次由高到低挨次为3、2、1,中止办理程序的进口地点分别为1000H,1100H,1200H。试编写主程序及中止服务程序(转至相应的中止办理程序的入口即可)。答:若仅在/INT0引脚接3个外面中止源,电路如图5-10(P115)ORG0000HLJMPMAINORG0003HLJMPINT_EX0ORG0030HMAIN:CLRIT0;采纳低电平有效中止SETBEX0;同不测面中止0SETBEA插入用户程序WAIT:MOVPCON,#01H;单片机进入休眠方式等候中止NOPLJMPWAIT;以下为外面中止0服务子程序INT_EX0:JNBP1.0,NEXT1;判断是不是1号中止LJMPINT_IR1;跳转到1号中止办理程序NEXT1:JNBP1.1,NEXT2;判断是不是2号中止LJMPINT_IR2;跳转到2号中止办理程序NEXT2:LJMPINT_IR3;跳转到3号中止办理程序ORG1000HINT_IR1:;插入相应中止办理程序RETI;中止返回ORG1100HINT_IR2:;插入相应中止办理程序RETI;中止返回ORG1200HINT_IR3:;插入相应中止办理程序RETI;中止返回第六章MCS-51的准时/计数器1.假如采纳晶振的频次为3MHz,准时器/计数器工作方式0、1、2下,其最大的准不时间为多少?解答:因为机器周期12124(s),Tcy3106fOSC所以准时器/计数器工作方式0下,其最大准不时间为TMAX213TC21341068.192(ms);相同能够求得方式1下的最大准不时间为262.144ms;方式2下的最大准不时间为1024ms。2.准时/计数器用作准时器时,其计数脉冲由谁供给?准不时间与哪些要素相关?答:准时/计数器作准不时,其计数脉冲由系统振荡器产生的内部时钟信号12分频后供给。准不时间与时钟频次和准时初值相关。3.准时/计数器用作准时器时,对外界计数频次有何限制?答:因为确认1次负跳变要花2个机器周期,即24个振荡周期,因其余部输入的计数脉冲的最高频次为系统振荡器频次的1/24。4.采纳准时器/计数器T0对外面脉冲入行计数,每计数100个脉冲后,T0转为准时工作方式。准时1ms后,又转为计数方式,这样循环不只。假定MCS-51单片机的晶体振荡器的频次为6MHz,请使用方式1实现,要求编写出程序。解答:准时器/计数器T0在计数和准时工作达成后,均采纳中止方式工作。除了第一次计数工作方式设置在主程序达成外,后边的准时或计数工作方式分别在中止程序达成,用一标记位辨别下一轮准时器/计数器T0的工作方式。编写程序以下:ORG0000HLJMPMAINORG000BHLJMPIT0PMAIN:MOVTMOD,#06H;准时器/计数器T0为计数方式2MOVTL0,#156;计数100个脉冲的初值赋值MOVTH0,#156SETBGATE;翻开计数门SETBTR0;启动T0,开始计数SETBET0;同意T0中止SETBEA;CPU开中止CLRF0;设置下一轮为准时方式的标记位WAIT:AJMPWAITIT0P:CLREA;关中止JBF0,COUNT;F0=1,转计数方式设置MOVTMOD,#00H;准时器/计数器T0为准时方式0MOVTH0,#0FEH;准时1ms初值赋值MOVTL0,#0CHSETBEARETICOUNT:MOVTMOD,#06HMOVTL0,#156SETBEARETI准时器/计数器的工作方式2有什么特色?合用于哪些应用处合?答:准时器/计数器的工作方式2拥有自动恢复初值的特色,合用于精准准时,比方波特率的产生。编写程序,要求使用T0,采纳方式2准时,在P1.0输出周期为400μs,占空比为10:1的矩形脉冲。解答:依据题意,从P1.0输出的矩形脉冲的高低电平的时间为10:1,则高低电平的时间分别为363.63μs和36.37μs。假如系统采纳6MHz晶振的话,Tcy2s,所以高低电平输出取整,则约为364μs和36μs。编写程序以下:ORG0000HLJMPMAINORG000BHLJMPIT0PMAIN:MOVTMOD,#02H;准时器/计数器T0为准时方式2MOVTL0,#4AH;准时364μs初值赋值SETBTR0;启动T0,开始计数SETBET0;同意T0中止SETBEA;CPU开中止SETBP1.0WAIT:AJMPWAITIT0P:CLREACLRP1.0;关中止MOVR0,#9DLY:DJNZR0,DLY;延时26μsMOVTL0,#4AH;准时364μs初值赋值SETBP1.0SETBEARETI一个准时器的准不时间有限,怎样实现两个准时器的串行准时,来实现较长时间的准时?答:方式一,在第一个准时器的中止程序里封闭本准时器的中止程序,设置和翻开另一个准时器;在另一个准时器的中止程序中封闭本准时中止,设置和翻开另一个准时器。这类方式的准不时间为两个准时器准不时间的和。方式二,一个作为准时器,在准时中止后产生一个外面计数脉冲(比方由P1.0接INT0产生),另一个准时器工作在计数方式。这样两个准时器的准不时间为一个准时器的准时时间乘以另一个准时器的计数值。当准时器T0用于方式3时,应当怎样控拟订时器T1的启动和封闭?答:由T1(P3.5)口控拟订时器T1的启动和封闭。准时器/计数器丈量某正单脉冲的宽度,采纳何种方式可获得最大批程?若时钟频次为6MHz,求同意丈量的最大脉冲宽度是多少?答:采纳方式1准时工作方式。最大脉冲宽度为131.072ms。编写一段程序,功能要求为:当P1.0引脚的电公正跳变时,对P1.1的输入脉冲入行计数;当P1.2引脚的电平负跳变时,停止计数,并将计数值写入R0、R1(高位存R1,低位存R0)。解答:将P1.1的输入脉冲接入INT0,即便用T0计数器达成对P1.1口的脉冲计数。编写程序以下:ORG0000HLJMPMAINORG000BHLJMPIT0PMAIN:JNBP1.0,MAINMOVTMOD,#05H;准时器/计数器T0为计数方式1SETBTR0;启动T0,开始计数SETBET0;同意T0中止SETBEA;CPU开中止WAIT:JBP1.2,WAITCLREACLRTR0MOVR1,TH0MOVR0,TL0AJMP$IT0P:INCR2RETITHX与TLX(X=0,1)是一般寄存器仍是计数器?其内容能够随时用指令改正吗?改正后的新值是立刻刷新仍是等目前计数器计满后才能刷新?答:THX与TLX(X=0,1)是由特别功能寄存器构成的计数器,其内容能够随时用指令改正,改正后的新值是立刻刷新。但在读THX、TLX的值时,应当先读THX值,后读TLX,再读THX。若两次读得THX相同,则可确立读得的内容正确。若前后两次读得的THX有变化,再重复上述过程。判断以下的说法能否正确?特别功能寄存器SCON,与准时器/计数器的控制没关。(对)特别功能寄存器TCON,与准时器/计数器的控制没关。(错)(3)特别功能寄存器IE,与准时器/计数器的控制没关。(错)特别功能寄存器TMOD,与准时器/计数器的控制没关。(错)第七章MCS-51的串行口1.串行数据传递的主要长处和用途是什么?答:串行数据传递的主要长处是硬件接口简单,接口端口少(2个)。主要用于多个单片机系统之间的数据通信。2.简述串行口接收和发送数据的过程。答:以方式一为例。发送:数据位由TXT端输出,发送1帧信息为10为,当CPU履行1条数据写发送缓冲器SBUF的指令,就启动发送。发送开始时,内部发送控制信号/SEND变为有效,将开端位想TXD输出,今后,每经过1个TX时钟周期,便产生1个移位脉冲,并由TXD输出1个数据位。8位数据位所有完成后,置1中止标记位TI,而后/SEND信号无效。接收:当检测到开端位的负跳变时,则开始接收。接受时,准时控制信号有2种,一种是位检测器采样脉冲,它的频次是RX时钟的16倍。也就是在1位数据时期,有16个采样脉冲,以波特率的16倍的速率采样RXD引脚状态,当采样到RXD端从1到0的跳变时就启动检测器,接收的值是3次连续采样,取此中2次相同的值,以确认是不是真正的开端位的开始,这样能较好地除去扰乱惹起的影响,以保证靠谱无误的开始接受数据。3.帧格式为1个开端位,8个数据位和1个停止位的异步串行通信方式是方式(1)。4.串行口有几种工作方式?有几种帧格式?各种工作方式的波特率怎样确立?答:串行口有3种工作方式:方式0、方式1、方式2、方式3;有3种帧格式,方式2和3拥有相同的帧格式;方式0的发送和接收都以fosc/12为固定波特率,方式1的波特率=2SMOD/32×准时器T1的溢出率方式2的波特率=2SMOD/64×fosc方式3的波特率=2SMOD/32×准时器T1的溢出率5.假定串行口串行发送的字符格式为1个开端位,8个数据位,1个奇校验位,1个停止位,请画出传递字符“A”的帧格式。开端位01000000校验位停止位6.判断以下说法能否正确:1)串行口通信的第9数据位的功能可由用户定义。(对)2)发送数据的第9数据位的内容在SCON寄存器的TB8位早先准备好的。(对)3)串行通信发送时,指令把TB8位的状态送入发送SBUF。(错)4)串行通信接收到的第9位数据送SCON寄存器的RB8中保留。(对)5)串行口方式1的波特率是可变的,经过准时器/计数器T1的溢出设定。(对)7.经过串行口发送或接收数据时,在程序中应使用:(选(3))1)MOVC指令(2)MOVX指令(3)MOV指令(4)XCHD指令8.为何准时器/计数器T1用做串行口波特率发生器时,采纳方式2?若已知时钟频次、通信波特率,怎样计算其初值?解答:因为准时器/计数器在方式2下,初值能够自动重装,这样在做串口波特率发生器设置时,就防止了重装参数的操作。已知时钟频次、通信波特率,依据公式:2SMODfOSC,计算出初波特率=12(256X)32值。9.串行口工作方式1的波特率是:(3)1)固定的,为fOSC/32。2)固定的,为fOSC/16。3)可变的,经过准时器/计数器T1的溢出率设定。4)固定的,为fOSC/64。10.在串行通信中,收发两方对波特率的设定应当是(相等)的。11.若晶体振荡器为11.0592MHz,串行口工作于方式1,波特率为4800b/s,写出用T1作为波特率发生器的方式控制字和计数初值。解答:初值计算:查阅P148表7-2可得,FAH控制字:ANLTMOD,#0F0HORLTMOD,#20HMOVTH1,#0FAHMOVTL1,#0FAHMOVSCON,#40H12.简述利用串行口进行多机通信的原理。解答:参照P146页。13.使用8031的串行口按工作方式1进行串行数据通信,假定波特率为2400b/s,以中止方式传递数据,请编写全双工通信程序。解答:略14.使用8031的串行口按工作方式3进行串行数据通信,假定波特率为1200b/s,第9数据位作奇偶校验位,以中止方式传递数据,请编写通信程序。解答:略15.某8031串行口,传递数据的帧格式为1个开端位(0),7个数据位,1个偶校验位和1个停止位(1)构成。当该串行口每分钟传递1800个字符时,试计算出波特率。解答:串口每秒钟传递的字符为:1800/60=30个字符/秒所以波特率为:30个字符/秒×10位/个字符=300b/s16.为何MCS-51串行口的方式0帧格式没有开端位(0)和停止位(1)?解答:串行口的方式0为同步移位寄存器输入输出方式,常用于外接移位寄存器,以扩展并行I/O口,一般不用于两个MCS-51之间的串行通信。该方式以fosc/12的固定波特率从低为位到高位发送或接受数据。第八章习题解答1.单片机储存器的主要功能是储存(程序)和(数据)。2.试编写一个程序(比如将05H和06H拼为56H),设原始数据放在片外数据区2001H单元和2002H单元中,按次序拼装后的单字节数放入2002H。解:此题主要观察了对外面储存器的读、写操作,同学们只需记着正确使用MOVX指令就能够了。编程思路:第一读取2001H的值,保留在寄存器A中,将寄存器A的高四位和低四位交换,再障蔽掉低四位而后将寄存器A的值保留到30H中,而后再读取2002H的值,保留在寄存器A中,障蔽掉高四位,而后将寄存器A的值与30H进行或运算,将运算后的结果保留在2002H中。ORG0000HMAIN:MOVDPTR,#2001H;设置数据指针的初值MOVXA,@DPTR;读取2001H的值SWAPAANLA,#0F0H;障蔽掉低四位MOV30H,A;保留AINCDPTR;指针指向下一个MOVXA,@DPTR;读取2002H的值ANLA,#0FH;障蔽掉高四位ORLA,30H;进行拼装MOVX@DPTR,A;保留到2002HEND3.假定外面数据储存器2000H单元的内容为80H,履行以下指令后:MOVP2,#20HMOVR0,#00HMOVXA,@R0累加器A中的内容为(80H)。4.编写程序,将外面数据储存器中的4000H—40FFH单元所有清零。解:此题主要观察了对外面数据块的写操作;编程时只需注意循环次数和MOVX指令的使用就能够了。ORG0000HMAIN:MOVA,#0;送预置数给AMOVR0,#0FFH;设置循环次数MOVDPTR,#4000H;设置数据指针的初值LOOP:MOVX@DPTR,A;目前单元清零INCDPTR;指向下一个单元DJNZR0,LOOP;能否结束END5.在MCS-51单片机系统中,外接程序储存器和数据储存器共16位地点线和8位数据线,为何不会发生矛盾?解:因为控制信号线的不一样:外扩的RAM芯片既能读出又能写入,所以往常都有读写控制引脚,记为OE和WE。外扩RAM的读、写控制引脚分别与MCS-51的RD和WR引脚相连。外扩的EPROM在正常使用中只好读出,不可以写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为OE,该引脚与MCS-51单片机的PSEN相连。6.区分MCS-51单片机片外程序储存器和片外数据储存器的最靠谱的方法是:1)看其位于地点范围的低端仍是高段2)看其离MCS-51芯片的远近3)看其芯片的型号是ROM仍是RAM4)看其是与RD信号连结仍是与PSEN信号连结解:此题的答案是3,4。7.在储存器扩展中,不论是线选法仍是译码法,最后都是为了扩展芯片的(片选)端供给信号。8.请写出图8-18中4片程序储存器27128各自所占的地点空间。解:图中采纳了译码法。4片地点分别为0000H-3FFFH、4000H-7FFFH、8000H-BFFFH、C000H-FFFFH。9.起止范围为0000H-3FFFH的储存器的容量是(16)KB。解:此题属于知识题,在第十一题时将有解答。10.在MCS-51中,PC和DPTR都用于供给地点,但PC是为了接见(程序)储存器供给地址,而DPTR是为接见(数据)储存器供给地点。11.11根地点线可选(2KB)个储存单元,16KB储存单元需要(14)根地点线。解:经过总结所学知识,我们获得以下几个信息:2KB的储存器需要11根地点线,地点为0000H-07FFH;4KB的储存器需要12根地点线,地点为0000H-0FFFH;8KB的储存器需要13根地点线,地点为0000H-1FFFH;16KB的储存器需要14根地点线,地点为0000H-3FFFH;32KB的储存器需要15根地点线,地点为0000H-7FFFH;64KB的储存器需要16根地点线,地点为0000H-FFFFH(以上储存器的首地点均默以为0000H)。12.32KBRAM储存器的首地点若为2000H,则末地点为(9FFF)H。解:由上题总结得出,32KBRAM储存器的大小为0000H-7FFFH,所以只需在后边加上2000H即获得正确答案。13.现有8031单片机、74LS373锁存器、1片2764EPROM和2片6116RAM,请使用他们组成一个单片机系统,要求:1)画出硬件电路连线图,并标明主要引脚;2)指出该应用系统程序储存器空间和数据储存器空间各自的地点范围。解:(1)电路图以下所示:2)2764的地点为C000H-DFFFH;第一个6116的地点为A000H-A7FFH;第二个6116的地点为6000H-67FFH;事实上,因为采纳的是线选法,致使了地点不连续,地点空间利用不充分。建议在实质工作中要详细状况详细剖析。在两种地点分派中选一种较好的来应用。14.使用89C51芯片外扩一片E2PROM2864,要求2864兼作程序储存器和数据储存器,且首地点为8000H。要求:1)确立2864芯片的末地点;2)画出2864片选端的地点译码电路;3)画出该应用系统的硬件连结图。解:(1)2864为8KB的储存器,假如首地点为8000H,则其末地点为9FFFH,原因参照第题;2)电路图以下所示:3)电路图以下所示:第九章习题解答1.I/O接口和I/O端口有什么差别?I/O接口的功能是什么?解:I/O端口简称I/O口,常指I/O接口电路中拥有端口地点的寄存器或缓冲器。I/O接口是指单片机与外设间的I/O接口芯片。I/O接口功能:一.实现和不一样外设的速度般配;二.输出数据缓存;三.输入数据三态缓冲。2.常用的I/O接口编址有哪两种方式?它们各有什么特色?MCS-51的I/O端口编址采纳的是哪一种方式?解:一.独立编址方式:独立编址方式就是I/O地点空间和储存器地点空间分开编址。独立编址的长处是I/O地点空间和储存器地点空间互相独立,界线分明。可是,却需要设置一套特意的读写I/O的指令和控制信号。二.一致编址方式:这类编址方式是把I/O端口的寄存器与数据储存器单元相同对待,一致进行编址。一致编址的长处是不需要特意的I/O指令,直接使用接见数据储存器的指令进行I/O操作,简单、方便且功能强盛。MCS-51单片机使用的是I/O和外面数据储存器RAM一致编址的方式。3.I/O数据传递有哪几种传递方式?分别在哪些场合下使用?解:一.同步传递方式:同步传递又称为有条件传递。当外设速度可与单片机速度对比较时,常常采纳同步传递方式,最典型的同步传递就是单片机和外面数据储存器之间的数据传送。二.查问传递方式:查问传递方式又称为有条件传递,也称异步传递。单片机经过查问得悉外设准备好后,再进行数据传递。异步传递的长处是通用性好,硬件连线和查问程序十分简单,可是效率不高。为了提升单片机的工作效率,往常采纳中止方式。三.中止传递方式:中止传递方式是利用MCS-51自己的中止功能和I/O接口的中止功能来实现I./O数据的传递。单片机只有在外设准备好后,发出数据传递恳求,才中止主程序,而进入与外设进行数据传递的中止服务程序,进行数据的传递。中止服务达成后又返回主程序持续执行。所以,采纳中止方式能够大大提升单片机的工作效率。4.编写程序,采纳8255A的C口按地点位/复位控制字,将PC7置0,PC4置1,(已知8255A各端口的地点为7FFCH-7FFFH)。解:此题主要观察对8255A的C口的操作。其方式控制字的高位为0时,低四位对C口进行置位。由题目我们获得了方式控制字的地点为7FFFH。ORG0000HMAIN:MOVDPTR,#7FFFH;控制字寄存器地点送DPTRMOVA,#0EH;将PC7置0MOVX@DPTR,AMOVA,#09H;将PC4置1MOVX@DPTR,AEND5.8255A的方式控制字和C口按地点位/复位控制字都能够写入8255A的同一控制寄存器,8255A是怎样区分这两个控制字的?解:8255A经过它们的最高位来进行判断,最高位为1时,这时8255A以为这是方式控制字,不然以为是C口按地点位/复位控制字6.由图9-6来说明8255A的A口在方式1的选通输入方式下的工作过程。解:当外设输入一个数据并送到PA7-PA0上时,输入设施自动在选通输入线STBA向8255A发送一个低电平选通信号。8255A收到选通信号后:第一把PA7-PA0上输入的数据存入A口的输入数据缓冲/锁存器;而后使输入缓冲器输出线IBFA变为高电平,以通知输入设施,8255A的A口已收到它送来的输入数据。8255A检测到联系线STBA由低电平变成了高电平、IBFA为1状态和中止同意触发器INTEA为1时,使输出线INTRA(PC3)变为高电平,向8031发出中止恳求。(INTEA的状态可由用户经过对PC4的置位/复位来控制。8031相应中止后,能够经过中止服务程序从A口的输入数据缓冲/锁存器读取外设发来的输入数据。当输入数据被CPU读走后,8255A撤掉INTRA上的中止恳求,并使IBFA变为低电平,以通知输入外设能够送下一个输入数据。7.8155H的端口都有哪些?哪些引脚决定端口的地点?引脚TIMERIN和TIMEROUT的作用是什么?解:8155H的端口有以下几种:命令/状态寄存器、A口、B口、C口、计数器和RAM单元。引脚IO/M、A2、A1、A0决定端口地点。TIMERIN是计数器输入线,输入的脉冲上跳沿用于对8155H片内的14位计数器减一。TIMEROUT为计数器输入线。当14位计数器减为0时就能够在该引线上输出脉冲或方波,输出的信号的形状与所选的计数器工作方式相关。8.判断以下说法能否正确,为何?1)因为8155H不拥有地点锁存功能,所以在与8031的接口电路中一定加地点锁存器。2)在8155H芯片中,决定端口和RAM单元编址的信号线是AD7-AD0和WR。(3)8255A拥有三态缓冲器,所以能够直接挂在系统的数据总线上。4)8255A的B口能够设置成方式2。解:(1)8155H拥有地点锁存功能;2)引脚IO/M、A2、A1、A0决定端口地点和RAM单元编址;3)8255A不拥有三态缓冲器;4)8255A的B口只好够设置成方式0和方式1。9.现有一片8031,扩展了一片8255A,若把8255A的B口用做输入,B口的每一位接一个开关,A口用作输出,每一位接一个发光二极管,请画出电路原理图,并编写出B口某一位接高电平常,A口相应位发光二极管被点亮的程序。解:因为电路图比较简单,在这里就画了,大家能够参照图9-10,A口每一位接二极管的正极,二极管的负极接低。B口每一位接一开关,开关直接接地。这样我们只需要将读到的B口的值送给A口就能够知足题目要求了。ORG0000HMIAN:MOVA,#10000010B;A口出,B口入MOVDPTR,#0FF7FH;控制地点送DPTRMOVX@DPTR,A;送方式控制字MOVDPTR,#0FF7DH;B口地点送DPTRMOVXA,@DPTR;读开关信息MOVDPTR,#0FF7CH;A口地点送DPTRMOVX@DPTR,A;将信息反溃到二极管END10.假定8155H的TIMERIN引脚输入的频次为4MHz?问8155H的最大准不时间是多少?解:8155H记数器的初值范围是:3FFFH-2H。当频次为4MHz,初值为3FFFH时,最大准不时间为:16383/4E+6=0.00409575S11.MCS-51的并行接口的扩展有多种方式,在什么状况下,采纳扩展8155H比较适合?什么状况下,采纳扩展8255A比较适合?解:8255A拥有3个8位的并行I/O口,3种工作方式,可经过编程改变其功能,因此使用灵巧方便,通用性强,可作为单片机与多种外头设施连结时的中间接口电路。8155H芯片内包含有256B的RAM储存器(静态),2个可编程的八位并行口PA和PB,1个可编程的6位并行口PC,以及1个14位减法准时器/计数器。所以它常常用于单片机的外头接口芯片。12.假定8155H的TIMERIN引脚输入的脉冲频次为1MHz,请编写出在8155H的TIMEROUT引脚上输出周期为10ms的方波的程序。解:将1MHz的脉冲改变为10ms的方波,这就让我们想到了在数字电路里面学到的分频器。计算得出分频前后频次之比为10000:1,这样我们只需将准时器初值设置为64H便可以了。(假定I/O口地点为7F00H-7F05H)START:MOVDPTR,#7F04H;指针指向准时器低8位MOVA,#64H;送初值给AMOVX@DPTR,A;初值送给低8位INCDPTR;指向高8位MOVA,#40H;准时器方波输出MOVX@DPTE,AMOVDPTR,#7F00H;指向命令/状态口MOVA,#0C2H;设定控制字MOVX@DPTE,A;启动准时器END第十章习题解答为何要除去按键的机械颤动?除去按键的机械颤动的方法有哪几种?原理是什么?解:在按键的闭合和断开过程中,因为开关的机械特征,致使了按键颤动的产生。假如不除去按键的机械颤动,按键的状态读取将有可能出现错误。除去按键颤动一般是采纳软件或硬件去抖。软件去抖的原理:在第一次检测到有键按下时,该键所对应的航线是为低电平,履行一端延时10ms的子程序后,确认该行线电平能否仍旧为低电平,假如仍为低电平,则确以为该行的确有键按下。判断以下说法能否正确?1)8279是一个用于键盘和LED(LCD)显示器的专用芯片。2)在单片机与微型打印机的接口中,打印机的BUSY信号可作为查问信号或中止恳求信号使用。(3)为给予扫描发方式工作的8*8键盘供给接口电路,在接口电路中只需要供给2个输进口和1个输出口。4)LED的字型码是固定不变的。解:(1)正确;2)正确3)错误4)错误3.LED的静态显示方式于动向显示方式有何差别?各有什么优弊端?解:静态显示时,数据是分开送到每一位LED上的。而动向显示则是数据是送到每一个LED上,再依据位选线来确立是哪一位LED被显示。静态显示亮度很高,但口线占用许多。动态显示则好一点,适合用在显示位数许多的场合。写出表10-1中仅显示小数点“.”的段码。解:80H(共阴极);7FH(共阳极)说明矩阵式键盘按键按下的辨别原理。解:按键设置内行、列线交点上,行、列线分别连结到按键开关的两头。行线经过上拉电阻接到+5V上,无按键按下时,行线处于高电平状态,而当有按键按下时,行线电平状态将由与此行线相连的列线的电平决定。列线的电平假如为低,则行线电平为低;列线的电平假如为高,则行线的电平亦为高。将行、列线信号配合起来并做适合的办理,才能确立闭合键的地点。关于图10-11的键盘,采纳线反转法原理来编写辨别某一按键按下并获得其键号的程序。解:先对P1口高四位送低电平,读取P1口低四位的值;再对P1口低四位送低电平,读取P1口高四位的值,将两次读到的值组合在一同就获得了按键的特色码,在依据特色码查找键值。KEYIN:MOVP1,#0FH;反转读键MOVA,P1ANLA,#0FHMOVB,AMOVP1,#0F0HMOVA,P1ANLA,#0F0HORLA,BCJNEA,#0FFH,KEYIN1RET;未按键KEYIN1:MOVB,A;暂存特色码MOVDPTR,#KEYCOD;指向码表MOVR3,#0FFH;次序码初始化KEYIN2:INCR3MOVA,R3MOVCA,@A+DPTRCJNEA,B,KEYIN3MOVA,R3;找到,取次序码RETKEYIN3:CJNEA,#0FFH,KEYIN2;未完,再查RET;已查完,未找到,以未按键办理KEYCOD:DB0E7H,0EBH,0EDH,0EEHDB0D7H,0DBH,0DDH,0DEHDB0B7H,0BBH,0BDH,0BEHDB77H,7BH,7DH,7EH键盘有哪3种工作方式,它们各自的工作原理及特色是什么?解:一.编程扫描方式:当单片机安闲时,才调用键盘扫描子程序,频频的扫描键盘,等待用户从键盘上输入命令或数据,来响应键盘的输入恳求。二.准时扫描工作方式:单片机对键盘的扫描也可用准时扫描方式,即每隔必定的时间对键盘扫描一次。三.中止工作方式:只有在键盘有键按下时,才履行键盘扫描程序并履行该按键功能程序,假如无键按下,单片机将不搭理键盘。依据图10-14的电路,编写在6个LED显示器上轮番显示“1,2,3,4,5,6”的显示程序。解:本电路图采纳的是动向显示。程序以下DIR:MOVR0,#79H;从79H开始里面寄存着MOVR3,#01H;1,2,3,4,5,6MOVA,R3LD0:MOVDPTR,#7F01H;位选码MOV@DPTR,AINCDPTRMOVA,@R0ADDA,#0DHMOVCA,@A+PC;取到笔形码DIR1:MOVX@DPTR,A;送出显示ACALLDL1MSINCROMOVR3JBACC.5,LD1;能否到最右侧的LEDRLAMOVR3,A;保留位选码AJMPLD0LD1:RETDSEG:DB3FH,06H,5BH,4FH,66H,6DH,7DH;0,1,2,3,4,5,6DL1MS:MOVR7,#02HDL:MOVR6,#0FFHDL6:DJNZR6,DL6DJNZR7,DLRET依据图10-17的接口电路编写在8个LED上轮番显示“1,2,3,4,5,6,7,8”的显示程序,比较一下与上一题显示程序的差别。解:本电路图采纳的是静态显示。程序以下:DIR:SETBP3.3;同意显示MOVSCON,#0;工作方式一MOVDPTR,#TAB;笔形码MOVR7,#08H;初值为8CALLOUT;8DECR7CALLOUT;7DECR7CALLOUT;6DECR7CALLOUT;5DECR7CALLOUT;4DECR7CALLOUT;3DECR7CALLOUT;2DECR7;1OUT:MOVA,R7MOVCA,@A+DPTR;找到对应的笔形码MOVSBUF,A;送出显示JNBTI,$CLRTIRETTAB:DB0COH,0F9H,0A4H,0B0H,99H;0,1,2,3,4DB92H,B2H,0F8H,80H;5,6,7,810.8279中扫描计数器有两种工作方式,这2种工作方式各应用在什么场合?解:按编码方式工作时,计数器作二进制计数。4位计数状态从扫描线SL0-SL3输出,经外面译码器4线-16线译码后,为键盘和显示器供给16中取1的扫描线。按译码方式工作时,扫描计数器的最低2位在8279内部被译码后,从SL0-SL3输出,为键盘和显示器直接供给了4中取1的扫描线。11.简述TpuP-40A/16A微型打印机的Centronics接口的主要信号线的功能。与MCS-51单片机相连结时,怎样连结这几条控制线?解:DB0-DB7:数据线,单向传输,由单片机输入给打印机。STB(STROBE):数据选通信号。在该信号的上涨沿,数据线上的8位并行数据被打印机读入机内锁存。BUSY:打印机忙状态信号。当该信号有效(高电平)时,表示打印机正忙于办理数据。此时,单片机不得使STB信号有效,向打印机送入新的数据。ACK:打印机的应答信号。低电平有效,表示打印机已取走数据线上的数据。ERR:犯错信号。当送入打印机的命令格式犯错时,打印机立刻打印1行犯错信息,提示犯错。在打印犯错信息以前。该信号线出现一个负脉冲,脉冲宽度为30us。用一根地点线来控制写选通信号STB和读取BUSY引脚状态。12.假如把图10-30中打印机的BUSY线断开,而后与8031的INTO线相接,请简述电路的工作原理并编写把以20H为开端地点的连续20个内存单元中的内容输出打印的程序。解:本程序采纳外面中止来进行数据打印,先打印一个数据,当BUSY线从高电平变为低电平常,在打印下一个数据ORG0000HLJMPMAINORG0003HLJMPINORG0030HMAIN:SETBEX0;同不测面中止SETBIT0SETBEAMOVR0,#7FH;控制口地点MOVA,#81H;控制字MOVX@R0,AMOVR1,#20H;数据区首地点MOVR2,#19;计数器MOVA,@R1;打印内容MOVR0,#7CH;A口地点MOVX@R0,AMOVR0,#7FHMOVA,#0EHMOVX@RO,A;PC7=0MOVA,#0FHMOVX@R0,A;PC7=1SJMP$IN:DJNZR2,EX;20个数据都结束了吗?INCR1;指向下一个数据MOVA,@R1MOVR0,#7CHMOVX@R0,AMOVR0,#7FHMOVA,#0EHMOVX@RO,AMOVA,#0FHMOVX@R0,AEX:RETI13.依据图10-14,8155H与32键的键盘相连结,编写程序实现以下功能:用8155H的定时器准时,每隔1S读1次键,并将其读入的键值存入片内RAM中30H开始的单元中。解:14.采纳8279芯片的键盘/显示器接口方案,与本章介绍的其余键盘/显示器的接口方案相比,有什么特色?解:8279芯片的拥有不停扫描,自动消抖,自动辨别出闭合的键并获得键号,能对双键或键同时按下进行办理。第11章1、由运算放大器构成的电流/电压变换电路2、D/A变换器的主要指标以下:分辨率D/A变换器的分辨率指输入的单位数字量变化惹起的模拟量输出的变化,是对输入量变化敏感程度的描绘。成即刻间成即刻间是描绘D/A变换速度快慢的一个参数,用于表示变换速度。其值为从输入数字量到输出达到终位偏差±(1/2)GB(最低有效位)时所需的时间。变换精度理想状况下,精度与分辨率基本一致,位数越多精度越高。严格讲精度与分辨率其实不完整一致。只需位数相同,分辨率则相同.但相同位数的不一样变换器精度会有所不同。当DAC为二进制12位,满量程输出电压为5V时,分辨率为1.22mV3、DAC用作程控放大器,其电压放大倍数可由CPU经过程序设定。由图可见,需要放大的电压Vin和反应输入端Rfb相接。运算放大器输出Vout还作为DAC的基准电压VREF,数字量由CPU送来,其余以下图。DAC0832内部Iout一边和T型电阻网络相连,另一边又经过反应电阻Rfb和Vin相通,可得以下方程组:解上述方程组可得选R=R6,则上式变为所以,从最后式子可知,输出电压的放大倍数受B控制。4、同步Vout256VinB5、二种方式单缓冲方式。其特色是DAC0832内部的两个数据缓冲器有一个处于直通方式,另一个处于受MCS—51控制的锁存方式。合用于只有一路模拟量输出,或虽是多路模拟量输出但其实不要求多路输出同步的状况下。双缓冲方式。其特色是数字量的输入锁存和D/A变换输出是分两步达成的。合用于在多路D/A变换中,要求同步进行D/A变换输出的状况下。6、A/D变换器的两个最重要指标:变换时间和变换速率变换时间A/D达成一次变换所需要的时间。变换时间的倒数为变换速率。(2)分辨率A/D变换器的分辨率习惯上用输出二进制位数或BCD码位数表示。7、量化偏差是因为有限位数字且对模拟量进行量化而惹起的;0.195%;8、目前应用较宽泛的主要有以下几种种类:逐次迫近式变换器、双积分式变换器、∑—△式A/D变换器和V/F变换器。逐次迫近型A/D变换器:在精度、速度和价钱上都适中,是最常用的A/D变换器件。双积分A/D变换器:拥有精度高、抗扰乱性好、价钱便宜等长处,但变换速度慢,最近几年来在单片机应用领域中也获得宽泛应用。∑—△式A/D变换器:它拥有积分式与逐次迫近式ADC的两重长处,它对工业现场的串模扰乱拥有较强的克制能力,不亚于双积分ADC,它比双积分ADC有较高的变换速度。与逐次迫近式ADC对比,有较高的信噪比,分辨率高,线性度好,不需要采样保持电路。9、对DAC来说,分辨率反应了输出模拟电压的最小变化量。而关于ADC来说,分辨率表示输出数字量变化一个相邻数码所需输入模拟电压的变化量。量化偏差是由ADC的有限分辨率而惹起的偏差,但量化偏差只合用于ADC,不合用于DAC。精度与分辨率基本一致,位数越多精度越高。严格讲精度与分辨率其实不完整一致。只需位数相同,分辨率则相同,但相同位数的不一样变换器精度会有所不一样。10、程序以下:MAIN:MOVR0,#20HMOVR1,#00HMOVR2,#00HMOVR3,#50MOVR8,#08HLOOP:MOVDPTR,#7FF8HLOOP1:MOVX@DPTR,AMOVR6,#0AHDELAY:NOPNOPNOPDJNZR6,DELAYMOVXA,@DPTRINCDPTRMOVR2,DPLMOVDPH,R0MOVDPL,R1MOVX@DPTR,AINCDPTRMOVR0,DPHMOVR1,DPLMOVDPH,#7FHMOVDPL,R2DJNZR7,LOOP1LCALLDELAY1M;延时1分钟DJNZR3,LOOP11、程序以下:MIAN:MOVR1,#10MOVR2,#40HMOVR0,#7CHMOVX

@R0,ALOOP:

NOPLOOP1:

NOPJB

P3.2,LOOP1MOVX

A,@R0MOVINC

@R2,AR2MOV

R0,#7DHMOVX

A,@R0MOVINC

@R2,AR2DJNZ

R1,LOOP12、(A)×(B)√(C)×(D)√第12章1、P0口的每位可驱动8个LSTTL输人,P1、P2、P3口的每一位只好驱动4个LSTTL输人;低电平;2、在MCS—51单片机应用系统中.当需用单片机控制各种各种的高压、大电流负载,这些大功率负载如电动机、电磁铁、继电器、灯泡等,则不可以用单片机的I/O线来直接驱动.而一定经过各种驱动电路和开关电路来驱动。其余,为了隔绝和抗扰乱,有时需加接光电耦合器。3、常用的开关型驱动器件有光电耦合器、继电器、晶闸管、功率MOS管、集成功率电子开关、固态继电器等。4、常用电子开关有功率MOS管、晶闸管、集成功宰电子开关、固态继电器等等;电子开关器件的通病是存在通态压降

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论