单片机原理应用课后答案(第二版)张毅刚彭喜元高等教育出版社_第1页
单片机原理应用课后答案(第二版)张毅刚彭喜元高等教育出版社_第2页
单片机原理应用课后答案(第二版)张毅刚彭喜元高等教育出版社_第3页
单片机原理应用课后答案(第二版)张毅刚彭喜元高等教育出版社_第4页
单片机原理应用课后答案(第二版)张毅刚彭喜元高等教育出版社_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

第1章单片机概括之宇文皓月创作参照答案1.答:微控制器,嵌入式控制器2.答:CPU、储存器、I/O口、总线3.答:C4.答:B5.答:微办理器、微办理机和CPU它们都是中央办理器的分歧称呼,微办理器芯片自己不是计算机。而微计算机、单片机它们都是一个完好的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。嵌入式办理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微办理器。目前多把嵌入式办理器多指嵌入式微办理器,比如ARM7、ARM9等。嵌入式微办理器相当于通用计算机中的CPU。与单片机对比,单片机自己(或略加扩展)就是一个小的计算机系统,可独立运转,拥有完好的功能。而嵌入式微办理器只是相当于单片机中的中央办理器。为了知足嵌入式应用的特别要求,嵌入式微办理器固然在功能上和尺度微办理器基本是相同的,但在工作温度、抗电磁扰乱、靠谱性等方面一般都做了各样增强。6.答:MCS-51系列单片机的基本型芯片分别:8031、8051和8071。它们的不一样是在片内程序储存器上。8031无片内程序储存器、8051片内有4K字节的程序储存器ROM,而8751片内有集成有4K字节的程序储存器EPROM。·1·7.答:因为MCS-51系列单片机中的“MCS”是Intel企业生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核构造、指令系统兼容的单片机。8.答:相当于MCS-51系列中的87C51,只可是是AT89S51芯片内的4K字节Flash储存器取代了87C51片内的4K字节的EPROM。9.单片机体积小、价钱低且易于掌握和普及,很简单嵌入到各样通用目的的系统中,实现各样方式的检测和控制。单片机在嵌入式办理器市场据有率最高,最大特色是价钱低,体积小。DSP是一种特别善于于高速实现各样数字信号办理运算(如数字滤波、FFT、频谱剖析等)的嵌入式办理器。因为对其硬件构造和指令进行了特别设计,使其能够高速达成各样复杂的数字信号办理算法。宽泛地用于通信、网络通信、数字图像办理,电机控制系统,生物信息辨别终端,及时语音压解系统等。这种智能化算法一般都是运算量较大,特别是向量运算、指针线性寻址等许多,而这些正是DSP的长地方在。与单片机相比,DSP拥有的实现高速运算的硬件构造及指令和多总线,DSP办理的算法的复杂度和大的数据办理流量以及片内集成的多种功能零件更是单片机不可企及的。嵌入式微办理器的基础是通用计算机中的CPU,它的地点总线数目较多能扩展较大的储存器空间,所以可配置及时多任务操控系统(RTOS)。RTOS是嵌入式应用软件的基础和开发平台。正因为嵌入式微办理器能运行及时多任务操控系统,所以能够办理复杂的系统管理任务和办理工作。所以,宽泛地应用在挪动计算平台、媒体手机、工业控制和商业领域(例如,智能工控设施、ATM机等)、电子商务平台、信息家电(机顶盒、数·2·字电视)以及军事上的应用。10.广义上讲,凡是系统中嵌入了“嵌入式办理器”,如单片机、DSP、嵌入式微办理器,都称其为“嵌入式系统”。但多半人把“嵌入”嵌入式微办理器的系统,称为“嵌入式系统”。目前“嵌入式系统”还没有一个严格和威望的定义。目古人们所说的“嵌入式系统”,多指后者。第2章AT89S51单片机的硬件构造参照答案1.答:AT89S51单片机的片内都集成了以下功能零件:(1)1个微办理器(CPU);(2)128个数据储存器(RAM)单元;(3)4KFlash程序储存器;(4)4个8位可编程并行I/O口(P0口、P1口、P2口、P3口);5)1个全双工串行口;(6)2个16位准时器/计数器;(7)1个看门狗准时器;(8)一此中止系统,5此中止源,2个优先级;(9)25个特别功能存放器(SFR),(10)1个看门狗准时器。2.答:当EA脚为高电平常,单片机读片内程序储存器(4K字节Flash)中的内容,但在PC值高出0FFFH(即高出4K字节地点范围)时,将自动转向读外面程序储存器内的程序;当EA脚为低电平常,单片机只对外面程序储存器的地点为0000H~FFFFH中的内容进行读操控,单片机不睬会片内的4K字节的Flash程序储存器。3.答:2μs4.答:1个机器周期等于12个时钟振荡周期。·3·答:64K程序储存器空间中有5个特别单元分别对应于5此中止源的中止服务程序进口地点,见下表:表5此中止源的中止进口地点进口地点中止源0003H外面中止0(INT0)000BH准时器0(T0)0013H外面中止1(INT1)001BH准时器1(T1)0023H串行口6.答:28H;88H。7.答:50H;88H。8.答:P标志位的值为0。9.答:(A)错;(B)错;(C)对;(D)对。10.答:04H;00H;0组。11.答:(A)对;(B)对;(C)错;(D)对。答:字节地点00H-1FH的单元可作为工作存放器区。13.答:(A)错;(B)错;(C)错;(D)错。14.答:(C)。答:PC;PC。16.答:64K字节。17.P0口每位可驱动8个LSTTL输入,而P1、P2、P3口的每一位的驱动能力,只有P0口的一半。当P0口的某位为高电平常,可供给A的电流;当P0口的某位为低电平(0.45V)时,可供给3.2mA的灌电流,如低电平同意提升,灌电流可相应加大。所以,任何一个口要想获取较大的驱动能力,只好用低电平输出。·4·18.答:按下复位按钮。答:(A)对;(B)对;(C)错;(D)错。答:(A)对;(B)对;(C)对;(D)错。第3章AT89S51的指令系统参照答案1.答:(1)错(2)错(3)对(4)错(5)错(6)错(7)错(8)对(9)错(10)对(11)对(12)错。2.答:(A)对(B)对(C)错(D)错。3.答:A,PC,DPTR。4.答:只好使用直接寻址方式。5.答:操控码,操控数,操控码。6.答:1031H。7.答:程序,数据。8.答:地点。9.答:A的内容与B的内容交换。10.答:(A)=50H,(SP)=50H,(51H)=30H,(52H)=50H,PC)=5030H11.答:(A)ANLA,#87HB)ANLA,#0C3HC)ORLA,#0CH12.答:(A)=0CBH。13.答:(A)=00H,(R3)=0AAH。14.答:(DPH)=3CH,(DPL)=5FH,(SP)=50H·5·15.答:(SP)=62H,(61H)=30H,(62H)=70H。16.答:MOVR7,APUSHAccMOVA,BMOVX@DPTR,A17.答:(D)。18.答:(C)。19.答:基本型的51子系列单片机,因为其片内RAM的地点范围为00H—7FH,而80H—FFH为特别功能存放器区,而对特别功能存放器寻址,只能使用直接寻址方式。对片内RAM寻址,当使用存放器间接寻址是采纳R0或R1作为间接寻址的,所以R0或R1的内容不克不及高出7FH。增强型的52子系列单片机,片内RAM的地点范围为00H—FFH,所以作为间接寻址存放器的R0或R1的内容就不受限制。第4章AT89S51汇编语言程序的设计与调试参照答案1.答:伪指令是程序员发给汇编程序的命令,只有在汇编前的源程序中才有伪指令,即在汇编过程中的用来控制汇编过程的命令。所谓“伪”是表此刻汇编后,伪指令没有相应的机器代码发生。常常使用伪指令及其功能以下:ORG(ORiGin)汇编开端地点命令;END(ENDofassembly)汇编停止命令;EQU(EQUate)标号赋值命令;DB(DefineByte)定义数据字节命令;DW(DefineWord)定义数据字命令;DS(DefineStorage)定义存储区命令;BIT位定义命令·6·2.答:手工汇编:经过查指令的机器代码表(表3-2),逐一把助记符指令“翻译”成机器代码,再进行调试和运转。这种人工查表“翻译”指令的方法称为“手工汇编”。机器汇编:借助于微型计算机上的软件(汇编程序)来取代手工汇编。经过在微机上运转汇编程序,把汇编语言源程序翻译成机器代码。反汇编:将二进制的机器码程序翻译成汇编语言源程序的过程称为“反汇编”。3.答:从1000H开始的各相关储存单元的内容(16进制)以下:4D41494E123430000070787FE4F6D8FD758107024.在编写子程序时应注意以下问题:1)子程序的第一条指令前一定有标号。2)主程序调用子程序,有以下两便条程序调用指令:绝对换用指令ACALLaddr11。被调用的子程序的首地点与绝对换用指令的下一条指令的高5位地点相同,即只好在同一个2KB区内。②长调用指令LCALLaddr16。addr16为直接调用的目的地点,被调用的子程序可搁置在64KB程序储存器区的随意地点。3)子程序构造中一定用到货仓,用来珍爱断点和现场珍爱。4)子程序返回时,一定以RET指令结束。5)子程序能够嵌套,但要注意货仓的矛盾。5.答:参照程序以下:·7·MOVA,45HANLA,#0FHORLA,#0FHMOV45H,A6.答:A=80H,SP=40H,(41H)=50H,(42H)=80H,PC=8050H7.答:参照程序以下:START:MOVR0,#30HMOVR2,#20HLOOP:MOVA,@R0CJNEA,#0AAH,NEXTMOV51H,#01HLJMPEXITNEXT:INCR0DJNZR2,LOOPMOV51H,#00HEXIT:RET8.答:参照程序以下:START:MOV41H,#0MOVR0,#20HMOVR2,#20HLOOP:MOVA,@R0JNZNEXTINC41H·8·NEXT:INCR0DJNZR2,LOOPRET9.答:参照程序以下:ORG0100HMOVR2,#20H要比较的数据字节数MOVA,#21HMOVR1,ADECR2MOVA,@R1LOOP:MOVR3,ADECR1CLRCSUBBA,@R1JNCLOOP1MOVA,@R1SJMPLOOP2LOOP1:MOVA,R3LOOP2:DJNZR2,LOOPMOV@R0,ARET10.答:(1)SP=SP+1=61H(61H)=PC的低字节=03H·9·SP=SP+1=62H(62H)=PC的高字节=20H2)PC=3456H3)能够4)2KB=2048Byte11.答:可对程序做以下改正:ORG0100HDEL:MOVR7,#200DEL1:MOVR6,#123;将本来的立刻数125改为123DEL2:DJNZR6,DEL2NOP;增添的指令DJNZR7,DEL1RET程序改正后的延不时间为:1+(1+123*2+1+2)*200+2=50003us=50.003ms第5章AT89S51的中止系统参照答案1.答:0013H;001BH2.答:串行口中止;外面中止13.答:RETI指令在返回的同时除去相应的优先级触发器,以同意下次中止,而RET指令则没有这个操控。除了这一点两条指令分歧外,其余操控都相同。4.答:D5.答:在一个单调中止的系统里,AT89S51单片机对外面中止恳求·10·的响应时间老是在3~8个机器周期之间。在下述三种状况下,AT89S51将推延对外面中止恳求的响应:1)AT89S51正在办理同级或更高优先级的中止。2)所查问的机器周期不是目前正在履行指令的最后一个机器周期。(3)正在履行的指令是RETI或是接见IE或IP的指令。假如存在上述三种状况之一,AT89S51将抛弃中止查问结果,将推延对外面中止恳求的响应。6.答:D7.答:PC、PC、程序储存器8.答:参照程序段以下:SETBIT1SETBEX1SETBEA9.答:(A)10.答:一此中止源的中止恳求被响应,一定知足以下需要条件:1)总中止同意开关接通,即IE存放器中的中止总同意位EA=1。2)该中止源发出中止恳求,即该中止源对应的中止恳求标志为“1”。3)该中止源的中止同意位=1,即该中止被同意。4)无同级或更高级中止正在被服务。11.答:(A)、(C)、(D)12.答:拜会电路如图5-10,参照程序以下:·11·ORG0000HLJMPMAINORG0013HLJMPINT_EX1ORG0030HMAIN:CLRIT0;采纳电平触发,低电平有效中止SETBEX1;同意外面中止1SETBEA;拔出一段用户程序WAIT:MOVPCON,#01H;单片机进入休眠方式等候中止NOPLJMPWAIT;以下为外面中止1服务子程序INT_EX1:JBP1.2,NEXT1;判断是不是3号中止LJMPINT_IR3;跳转到3号中止办理程序NEXT1:JBP1.1,NEXT2;判断是不是2号中止LJMPINT_IR2;跳转到2号中止办理程序NEXT2:LJMPINT_IR1;跳转到1号中止办理程序ORG1000HINT_IR3:相应中止办理程序RETI;中止返回ORG1100H·12·INT_IR2:相应中止办理程序RETI;中止返回ORG1200HINT_IR1:相应中止办理程序RETI;中止返回第6章AT89S51的准时/计数器参照答案1.答:(A)对;(B)错;(C)错;(D)错;2.答:因为机器周期:所以准时器/计数器工作方式0下,其最大准不时间为相同能够求得方式1下的最大准不时间为262.144ms;方式2下的最大准不时间为1024ms。3.答:准时/计数器作准不时,其计数脉冲由系统振荡器发生的内部时钟信号12分频后供给。准不时间与时钟频次和准时初值相关。4.答:因为确认1次负跳变要花2个机器周期,即24个振荡周期,因别的部输入的计数脉冲的最高频次为系统振荡器频次的1/24。5.答:准时器/计数器T0在计数和准时工作达成后,均采纳中止方式工作。除了第一次计数工作方式设置在主程序达成外,后边的准时或计数工作方式分别在中止程序达成,用一标志位辨别下一轮准时器/计数器T0的工作方式。参照程序以下:ORG0000HLJMPMAINORG000BHLJMPIT0P·13·MAIN:MOVTMOD,#06H;准时器/计数器T0为计数方式2MOVTL0,#156;计数100个脉冲的初值赋值MOVTH0,#156SETBGATE;翻开计数门SETBTR0;启动T0,开始计数SETBET0;同意T0中止SETBEA;CPU开中止CLRF0;设置下一轮为准时方式的标志位WAIT:AJMPWAITIT0P:CLREA;CPU关中止JBF0,COUNT;F0=1,转计数方式设置MOVTMOD,#00H;准时器/计数器T0为准时方式0MOVTH0,#0FEH;准时1ms初值赋值MOVTL0,#0CHSETBEARETICOUNT:MOVTMOD,#06HMOVTL0,#156SETBEARETI答:准时器/计数器的工作方式2拥有自动恢复初值的特色,合用于精准准时,比方波特率的发生。答:依据题意,从P1.0输出的矩形脉冲的高低电平的时间为10:1,则高低电平的时间分别为363.63μs和36.37μs。假如系统采纳6MHz晶振的话,Tcy=2μs,所以高低电平输出取整,则约为364μs和36·14·s。参照程序以下:ORG0000HLJMPMAINORG000BHLJMPIT0PMAIN:MOVTMOD,#02H;准时器/计数器T0为准时方式2MOVTL0,#4AH;准时364μs初值赋值SETBTR0;启动T0,开始计数SETBET0;同意T0中止SETBEA;CPU开中止SETBP1.0WAIT:AJMPWAITIT0P:CLREACLRP1.0;关中止MOVR0,#9DLY:DJNZR0,DLY;延时36μsMOVTL0,#4AH;准时364μs初值赋值SETBP1.0SETBEARETI答:方法1,在第一个准时器的中止程序里封闭本准时器的中止程序,设置和翻开另一个准时器;在另一个准时器的中止程序中封闭本准时中止,设置和翻开另一个准时器。这种方式的准不时间为两个准时器准不时间的和。方法2,一个作为准时器,在准时中止后发生一个外面计数脉冲(比·15·方由P1.0接INT0发生),另一个准时器工作在计数方式。这样两个准时器的准不时间为一个准时器的准不时间乘以另一个准时器的计数值。答:由T1(P3.5)口控拟订时器T1的启动和封闭。10.答:采纳方式1准时工作方式。最大脉冲宽度为131.072ms。答:将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:INCR2RETI答:THx与TLx(x=0,1)是由特别功能存放器构成的计数器,其内容能够随时用指令改正,改正后的新值是立刻刷新。但在读THx、TLx·16·的值时,应当先读THx值,后读TLx,再读THx。若两次读得THx相同,则可确立读得的内容正确。若前后两次读得的THx有改正,再重复上述过程。第7章AT89S51的串行口参照答案1.答:方式1。2.答:相等的。3.答:A.对;B.对;C.错;D.对;E.对。4.答:C5.答:C6.答:当接收方检测到RXD端从1到0的跳变时就启动检测器,接收的值是3次连续采样,取此中2次相同的值,以确认是不是真实的开端位的开始,这样能较好地除去扰乱惹起的影响,以担保靠谱无误的开始接受数据。7.答:串行口有4种工作方式:方式0、方式1、方式2、方式3;有3种帧格式,方式2和3拥有相同的帧格式;方式0的发送和接收都以fosc/12为固定波特率,方式1的波特率=2SMOD×准时器T1的溢出率/32方式2的波特率=2SMOD×fosc/64方式3的波特率=2SMOD×准时器T1的溢出率/328.答:字符“B”的ASCII码为“42H”,帧格式以下:9.答:因为准时器/计数器在方式2下,初值能够自动重装,这样在做串口波特率发生器设置时,就防备了履行重装参数的指令所带来的时间·17·偏差。设准时器T1方式2的初值为X,计算初值X可采纳以下公式:波特率=2SMODfosc3212(256X)10.答:经计算,计数初值为FAH,初始化程序以下:ANLTMOD,#0F0H;障蔽高4位ORLTMOD,#20H;控制字MOVTH1,#0FAH;写入计数初值MOVTL1,#0FAHMOVSCON,#40H11.答:见7.3节的介绍。12.答:见小节的介绍13.答:串口每秒钟传递的字符为:1800/60=30个字符/秒所以波特率为:30个字符/秒×10位/个字符=300b/s14.答:串行口的方式0为同步移位存放器输入输出方式,常常使用于外接移位存放器,以扩展并行I/O口,一般不用于两个MCS-51之间的串行通信。该方式以fosc/12的固定波特率从低为位到高位发送或接受数据。15.答:直接以TTL电平串行传输数据的方式的弊端是传输距离短,抗扰乱能力差。所以在串行传输距离较远时,常采纳RS-232C、RS-422A和RS-485尺度串行接口。主假如对传输的电信号不断改良,如RS-232C传输距离只有几十米远,与直接以TTL电平串行传输对比,采纳了负逻辑,增大“0”、“1”信号的电平差。而RS-422A和RS-485都采纳了差分信号传输,抗扰乱能力强,距离可达1000多米。RS-422A为全双工,·18·RS-485为半双工。第8章AT89S51单片机扩展储存器的设计参照答案1.答:程序、数据。2.答:80H。3.答:片选。4.答:16KB。5.答:程序、数据。6.答:2K,14。7.答:0FFFH。8.答:(D)9.答:此题主要观察对外面储存器的读、写操控,只需记着正确使用MOVX指令便可以了。编程思路:第一读取2001H的值,保存在存放器A中,将存放器A的高四位和低四位交换,再障蔽掉低四位而后将存放器A的值保存到30H中,而后再读取2002H的值,保存在存放器A中,障蔽掉高四位,而后将存放器A的值与30H进行或运算,将运算后的结果保存在2002H中。ORG0000HMAIN:MOVDPTR,#2001H;设置数据指针的初值MOVXA,@DPTR;读取2001H的值·19·SWAPAANLA,#0F0H;障蔽掉低四位MOV30H,A;保存AINCDPTR;指针指向下一个MOVXA,@DPTR;读取2002H的值ANLA,#0FH;障蔽掉高四位ORLA,30H;进行拼装MOVX@DPTR,A;保存到2002HEND10.答:此题主要观察对外面数据块的写操控;编程时只需注意循环次数和MOVX指令的使用便可以了。ORG0000HMAIN:MOVA,#0;送预置数给AMOVR0,#0FFH;设置循环次数·20·MOVDPTR,#4000H;设置数据指针的初值LOOP:MOVX@DPTR,A;目前单元清零INCDPTR;指向下一个单元DJNZR0,LOOP;能否结束END11.答:因为控制信号线的分歧:外扩的RAM芯片既能读出又能写入,所以往常都有读写控制引脚,记为OE*和WE*。外扩RAM的读、写控制引脚分别与AT89S51的RD*和WR*引脚相连。外扩的EPROM在正常使用中只好读出,不克不及写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为OE*,该引脚与AT89S51单片机的PSEN*相连。12.答:图中采纳了译码法。4片地点分别为0000H-3FFFH、4000H-7FFFH、8000H-BFFFH、C000H-FFFFH。13.答:1)拜会图8-20或图8-21,去掉一片2764。2)指出该应用系统程序储存器空间和数据储存器空间各自的地点范围。14.答:·21·1)A组跨接端子的内部正确连线图2)B组跨接端子的内部正确连线图注意:答案不独一,还有其余连结方法,也可知足题目要求。第9章AT89S51扩展I/O接口的设计参照答案1.答:A)错,81C55拥有地点锁存功能;B)错,在81C55芯片中,引脚IO/M*、A2、A1、A0决定端口地点和RAM单元编址;C)错,82C55不拥有三态缓冲器;(D)错,82C55的B口只好够设置成方式0和方式1。2.答:I/O端口简称I/O口,常指I/O接口电路中拥有端口地点的寄存器或缓冲器。I/O接口是指单片机与外设间的I/O接口芯片;I/O接口功能:(1)实现和分歧外设的速度般配;(2)输出数据缓存;(3)输入数据三态缓冲。3.答:3种传递方式:(1)同步传递方式:同步传递又称为有条件传递。当外设速度可与单片机速度对比较时,常常采纳同步传递方式。(2)查问传递方式:查问传递方式又称为有条件传递,也称异步传递。单片机经过查问得悉外设准备好后,再进行数据传递。异步传递的优点是通用性好,硬件连线和查问程序十分简单,可是效率不高。(3)中止传递方式:中止传递方式是利用AT89S51自己的中止功能和I/O接口的中止功能来实现I./O数据的传递。单片机只有在外设准备好后,发出数据传递请求,才中止主程序,而进入与外设进行数据传递的中止服务程序,进行数·22·据的传递。中止服务达成后又返回主程序持续履行。所以,中止方式可大大提升工作效率。4.答:两种。(1)独立编址方式:独立编址方式就是I/O地点空间和储存器地点空间分开编址。独立编址的优点是I/O地点空间和储存器地点空间互相独立,界线分明。但却需要设置一套特意的读写I/O的指令和控制信号。(2)一致编址方式:这种方式是把I/O端口的存放器与数据储存器单元相同对待,一致进行编址。一致编址的优点是不需要特意的I/O指令,直接使用接见数据储存器的指令进行I/O操控。AT89S51单片机使用的是I/O和外面数据储存器RAM一致编址的方式。5.答:82C55经过写入控制字存放器的控制字的最高位来进行判断,最高位为1时,为方式控制字,最高位为0时,为C口按地点位/复位控制字。6.答:此题主要观察对82C55的C口的操控。其方式控制字的最高位为0时,低四位控装置对C口置复位。由题目可知方式控制存放器的地址为7FFFH。ORG0100HMAIN:MOVDPTR,#7FFFH;控制字存放器地点7FFFH送DPTRMOVA,#0EH;将PC7置0MOVX@DPTR,AMOVA,#09H;将PC4置1MOVX@DPTR,AEND7.答:当外设输入一个数据并送到PA7-PA0上时,输入设施自动在·23·选通输入线STBA向82C55发送一个低电平选通信号,则把PA7-PA0上输入的数据存入PA口的输入数据缓冲/锁存器;而后使输入缓冲器输出线IBFA酿成高电平,以通知输入设施,82C55的PA口已收到它送来的输入数据。82C55检测到联系线STB由低电平酿成了高电平、IBF为1状态和中AA断同意触发器INTEA为1时,使输出线INTRA(PC3)酿成高电平,向AT89S51发出中止恳求。(INTEA的状态可由用户经过对PC4的置位/复位来控制。AT89S51响应中止后,能够经过中止服务程序从PA口的输入数据缓冲/锁存器读取外设发来的输入数据。当输入数据被CPU读走后,82C55取消INTR上的中止恳求,并使IBF变为低电平,以通知输入外设AA能够送下一个输入数据。8.答:81C55的端口有以下几种:命令/状态存放器、PA口、PB口、PC口、计数器的高8位存放器与低8位存放器以及RAM单元。引脚IO/M,A2、A1、A0决定端口地点。TIMERIN是计数脉冲输入引脚,输入脉冲的上跳沿用于对81C55片内的14位计数器减1。TIMEROUT为计数器输出引脚。当14位计数器减为0时便可以在该引线上输出脉冲或方波,输出的信号的波形与所选的计数器工作方式相关。9.答:电路图能够参照图9-10,PA口每一位接二极管的正极,二极管的负极接地。PB口每1位接一开关和上拉电阻,开关另一端直接接地。这样只需要将读到的PB口的值送给PA口便可以知足题目要求了。ORG0100HMIAN:MOVA,#10000010B;设置PA口方式0输出,PB口方式0输入MOVDPTR,#0FF7FH;控制口地点送DPTRMOVX@DPTR,A;送方式控制字MOVDPTR,#0FF7DH;PB口地点送DPTR·24·MOVXA,@DPTR;读入开关信息MOVDPTR,#0FF7CH;PA口地点送DPTRMOVX@DPTR,A;PA口的内容送PB口点亮相应的二极管END10.答:81C55计数器的初值范围是:3FFFH-2H。当频次为4MHz,初值为3FFFH时,最大准不时间为:0.004096S11.答:将1MHz的脉冲改变为10ms的方波,实质上就是分频。分频前后频次之比为100: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第10章AT89S51与键盘、显示器、拨盘、打印机的接口设计参照答案1.答:A.MAX7219是专用显示器芯片,不用于键盘;B.错:CH451芯片也可用于控制键盘;C.对:BUSY信号可作为查问信号或中止恳求·25·信号使用,但此时信号ACK不用;E.错:LED数码管的字型码是能够变的,比如表10-1中的“a”段对应段码字节的最高位。“dp”段对应段码字节的最低位,字型码就改变了。答:在按键的闭合和断开过程中,因为开关的机械特征,致使了按键颤动的发生。假如不用除按键的机械颤动,按键的状态读取将有可能出现错误。除去按键颤动一般是采纳软件或硬件去抖。软件去抖的原理:在第一次检测到有键按下时,该键所对应的行线是为低电平,履行一端延时10ms的子程序后,确认该行线电平能否仍旧为低电平,假如仍为低电平,则确以为该行的确有键按下。答:静态显示时,数据是分开送到每一位LED上的。而动向显示则是数据是同时送到每一个LED上,再依据位选线来确立是哪一位LED被显示。静态显示亮度很高,但口线占用许多。动向显示口线占用较少,合适用在显示位数许多的场合。答:80H(共阴极);7FH(共阳极)。答:按键设置内行、列线交点上,行、列线分别连结到按键开关的两头。行线经过上拉电阻接到+5V上,无按键按下时,行线处于高电平状态,而当有按键按下时,行线电平状态将由与此行线相连的列线的电平决定。列线的电平假如为低,则行线电平为低;列线的电平假如为高,则行线的电平亦为高。将行、列线信号配合起来并做合适的办理,才华确立闭合键的地点。答:先对P1口高四位送低电平,读取P1口低四位的值;再对P1口低四位送低电平,读取P1口高四位的值,将两次读到的值组合在一同就获取了按键的特色码,在依据特色码查找键值。·26·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;找到,取次序码·27·RETKEYIN3:CJNEA,#0FFH,KEYIN2;未完,再查RET;已查完,未找到,以未按键办理KEYCOD:DB0E7H,0EBH,0EDH,0EEH;特色码表DB0D7H,0DBH,0DDH,0DEHDB0B7H,0BBH,0BDH,0BEHDB77H,7BH,7DH,7EH答:(1)编程扫描方式:当单片机安闲时,才调用键盘扫描子程序,频频的扫描键盘,等候用户从键盘上输入命令或数据,来响应键盘的输入恳求。(2)准时扫描工作方式:单片机对键盘的扫描也可用准时扫描方式,即每隔必定的时间对键盘扫描一次。(3)中止工作方式:只有在键盘有键按下时,才履行键盘扫描程序并履行该按键功能程序,如果无键按下,单片机将不睬睬键盘。8.答:DB0-DB7:数据线,单向传输,由单片机输入给打印机。STB(STROBE):数据选通信号。在该信号的上涨沿,数据线上的8位并行数据被打印机读入机内锁存。BUSY:打印机忙状态信号。当该信号有效(高电平)时,示意打印机正忙于办理数据。此时,单片机不得使STB信号有效,向打印机送入新的数据。ACK:打印机的应答信号。低电平有效,注明打印机已取走数据线上的数据。ERR:犯错信号。当送入打印机的命令格式犯错时,打印机立刻打印1行犯错信息,提示犯错。在打印犯错信息以前。该信号线出现一个负脉冲,脉冲宽度为30us。单片机与打印机相连时,分为直接相连(图10-27)和经过扩展的并·28·行I/O口82C55连结(图10-28)。直接相连时(图10-27),打印机在输入电路中有锁存器,在输出电路中有三态门控制,。没有读、写信号,只有握手线STB、BUSY(或ACK),用一根地点线来控制写选通信号STB和读取BUSY引脚状态。图10-28所示为经过扩展的并行I/O口82C55连接的打印机接口电路。采纳查问法,即经过读与82C55的PC0脚的相连的BUSY状态,来判葬送给打印机的一个字节的数据能否办理完成。也可用中止法(BUSY直接与单片机的INT0引脚相连)。9.答:本程序采纳外面中止来进行数据打印,先打印一个数据,当BUSY线从高电平酿成低电平常,在打印下一个数据ORG0000HLJMPMAINORG0003HLJMPINORG0030HMAIN:SETBEX0;同意外面中止SETBIT0SETBEAMOVR0,#7FH;控制口地点MOVA,#81H;控制字MOVX@R0,AMOVR1,#20H;数据区首地点MOVR2,#19;计数器MOVA,@R1;打印内容·29·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:RETI第11章AT89S51单片机与D/A变换器、A/D变换器的接口参照答案1.答:由运算放大器构成的I/V变换电路·30·2.答:同步3.答:(1)错,D/A变换器也要考虑“变换速度”或“变换时间”问题,即成即刻间(变换时间);(2)对;(3)错,是D/A变换器的分辨率;(4)对。答:D/A变换器的主要技术指标以下:分辨率:D/A变换器的分辨率指输入的单位数字量改正惹起的模拟量输出的改正,是对输入量改正敏感程度的描绘。成即刻间:成即刻间是描绘D/A变换速度快慢的一个参数,用于标明变换速度。其值为从输入数字量到输出达到终位偏差±(1/2)GB(最低有效位)时所需的时间。变换精度:理想状况下,精度与分辨率基本一致,位数越多精度越高。严格讲精度与分辨率其实不完好一致。只需位数相同,分辨率则相同.但相同位数的分歧变换器精度会有所分歧。当DAC为二进制12位,满量程输出电压为5V时,分辨率为1.22mV答:A/D变换器的两个最重要指标:(1)变换时间和变换速率--变换时间A/D达成一次变换所需要的时间。变换时间的倒数为变换速率。(2)分辨率--A/D变换器的分辨率习惯上用输出二进制位数或BCD码位数示意。答:量化偏差是因为有限位数字且对模拟量进行量化而惹起的;最大的量化偏差为0.195%;答:目前应用较宽泛的主要有以下几种种类:逐次逼近式变换器、双积分式变换器、∑-△式A/D变换器。逐次逼近型A/D变换器:在精度、速度和价钱上都适中,是最常常使用的A/D变换器件。双积分·31·A/D变换器:拥有精度高、抗扰乱性好、价钱便宜等优点,但变换速度慢,最近几年来在单片机应用领域中也获取宽泛应用。∑-△式A/D变换器:拥有积分式与逐次逼近式ADC的两重优点,它对工业现场的串模扰乱拥有较强的克制能力,不亚于双积分ADC,它比双积分ADC有较高的变换速度。与逐次逼近式ADC对比,有较高的信噪比,分辨率高,线性度好,不需要采样坚持电路。答:对DAC来说,分辨率反应了输出模拟电压的最小改正量。而关于ADC来说,分辨率示意输出数字量改正一个相邻数码所需输入模拟电压的改正量。量化偏差是由ADC的有限分辨率而惹起的偏差,但量化偏差只合用于ADC,不合用于DAC。精度与分辨率基本一致,位数越多精度越高。严格讲精度与分辨率其实不完好一致。只需位数相同,分辨率则相同。但相同位数的分歧变换器,精度可能会有所分歧,比如因为制造工艺的分歧。9答:接口电路可拜会图11-20。参照程序以下:MAIN:MOVR0,#20HMOVR1,#00HMOVR2,#00HMOVR3,#50MOVR8,#08HLOOP:MOVDPTR,#7FF8HLOOP1:MOVX@DPTR,AMOVR6,#0AH·32·DELAY:NOPNOPNOPDJNZR6,DELAYMOVXA,@DPTRINCDPTRMOVR2,DPLMOVDPH,R0MOVDPL,R1MOVX@DPTR,AINCDPTRMOVR0,DPHMOVR1,DPLMOVDPH,#7FHMOVDPL,R2DJNZR7,LOOP1LCALLDELAY1M;延时1分钟(子程序此外编写)DJNZR3,LOOP第12章单片机的串行扩展技术参照答案1.答:系统连结简单:I2C总线系统的基本构造如图12-7。I2C总线系统直接与拥有I2C总线接口的各样扩展器件(如储存器、I/O芯片、·33·A/D、D/A、键盘、显示器、日历/时钟)连结。I2C总线对各器件寻址采纳纯软件的寻址方法,无需片选线的连结,这样就大大简化了总线数目,系统各零件之间的连结只需两条线。数据传输速率较高:在尺度I2C一般模式下,数据的传输速率为100kbit/s,高速模式下可达400kbit/s。2.答:I2C总线的开端信号和停止信号都由主机发出,在开端信号发生后,总线就处于占用状态;在停止信号发生后,总线就处于安闲状态。由图12-9见开端信号和停止信号的规定。1)开端信号(S)。在SCL线为高电平时期,SDA线由高电平向低电平的改正示意开端信号,只有在开端信号此后,其余命令才有效。2)停止信号(P)。在SCL线为高电平时期,SDA线由低电平向高电平的改正示意停止信号。跟着停止信号的出现,所有外面操控都结束。3.答:不论I2C总线上的数据传输方向由寻址字节中的数据传输方向位规定:寻址字节器件地点引脚地点方向位DA3DA2DA1DA0A2A1A0R/WR/W=1,示意主机接收(读)。R/W=0,示意主机发送(写)。4.答:单片机对I2C总线中的器件寻址采纳软件寻址,主机在发送完开端信号后,立刻发送寻址字节来寻址被控的从机,寻址字节格式如题所示。7位从机地点即为“DA3、DA2、DA1、DA0”和“A2、A1、A0”。此中“DA3、DA2、DA1、DA0”为器件地点,是外头器件固有的地点编码,器件出厂时就已经给定。“A2、A1、A0”为引脚地点,由器件引脚A2、A1、A0在电路中接高电平或接地决定(见图12-12)。·34·5.答:I2C总线数据传递时,传递的字节数(数据帧)没有限制,每一字节一定为8位长。数据传递时,先传递最高位,每一个被传字节后边都须跟1位应答位(一帧数据共9位),如图12-10。I2C总线在传递每一字节数据后都须有应答信号A,A信号在第9个时钟位上出现,A信号对应的时钟由主机发生。这时发方须在该时钟位上使SDA线处于高电平,以便收方在这一位上送出低电平的应答信号A。因为某原由收方分歧错误主机寻址信号应答时,比如接收方正在进行其余办理而没法接收总线上的数据时,一定开释总线,将数据线置为高电平,而由主机发生一个停止信号以结束总线的数据传递。当主机接收来自从机的数据时,接收到最后一个数据字节后,一定给从机发送一个非应答信号(A),使从机开释数据总线,以便主机发送一个停止信号,进而结束数据的传递。6.答:依据下边的数据传递格式:S从机地点0A数据A/ASr从机地点r1A数据AP挨次调用依据上述数据传递格式的小节中的各子程序。第13章AT89S51单片机的应用设计与调试参照答案1.答:A.错;B.错;C.对;D.错(最小系统不克不及直接测量模拟信号)。2.答:用户样机是以AT89S51单片机为核心的应用系统,没有对单片机中的程序进行检错调试的手段,也没法发现程序运转中的设计硬件的问题,也没法进行软件的开发(如编写、汇编、调试程序等),所以,一定借助某种开发工具---仿真开发系统所供给的开发手段来解决上述问题。·35·3.答:仿真开发系统由哪几部分构成?目前国内大多使用通用机的仿真开发系统。主要由PC机、在线仿真器构成,有的还包括实用于程序烧录的编程器,在加上与上述配套的编写软件、仿真调试软件,程序烧录软件等。别的还有独立型仿真器。该类仿真器采纳模块化构造,配有分歧外设,如外存板、打印机、键盘/显示器等,用户可依据需要采用。特别在工业现场进行程序仿真调试时,常常没有PC机的支持,这时使用独立型仿真器也可进行仿真调试工作,只可是要输入机器码,稍显麻烦一些。至于软件仿真开发工具Proteus软件是一种完好用软件手段对单片机应用系统进行仿真开发的。软件仿真开发工具与用户样机在硬件上无任何联系。不克不及进行用户样机硬件部分的诊疗与及时在线仿真。4.答:调试过程见图13-13,4个步伐。(1)输入用户源程序:用户使用编写软件源程序输入到PC机中,并保存在磁盘上。2)汇编并检查语法错误:在PC机上,利用汇编程序对用户源程序进行汇编,直至语法错误所有纠正为止。3)动向在线调试:对用户的源程序进行调试。要先把在线仿真器的仿真插头拔出用户样机的单片机插座中(图13-12),进行在线仿真调试,利用仿真开发系统供给单步、设置断点等调试手段,来进行系统的调试。纠正软件逻辑上的问题,或清除硬件上的故障。(4)将调试完成的用户程序经过程序烧写器,固化在程序储存器中。5.答:因为软件仿真开发工具Proteus软件是一种完好用软件手段对·36·单片机应用系统进行仿真开发的。不克不及进行用户样机硬件部分的诊疗与及时在线仿真。所以在系统的开发中,一般是先用Proteus仿真软件设计出系统的硬件电路,编写程序,而后在Proteus环境下仿真调试经过。而后依据仿真的结果,达成实质的硬件设计。再将仿真经过的程序烧录到编程器中,而后装置到用户样机硬件板上去察看运转结果,假如有问题,再连结硬件仿真器去剖析、调试。6.答:在每块印刷电路板的电源输入端跨接的电容应为一个10~100μF的大容量电解电容(如体积同意,电容量大一些更好)和一个0.01~0.1μF的非电解电容。用于去除扰乱中的高频扰乱和低频扰乱,并接大电容为了去掉低频扰乱成分,并接小电容为了去掉高频扰乱部分。7.答:光电耦合的主要优点是能有效克制尖峰脉冲以及各样噪声干扰,进而使过程通道上的信噪比大大提升。因为在工业现场的数据采集或及时控制中,过程通道的输入输出信号线和控制线多,且长度达几百米或几千米,所以不可防备地将扰乱引入单片机系统。除去或减弱过程通道的扰乱主要采纳光电隔绝技术。所谓光电隔绝采纳光电耦合器能够将单片机与前向、后向以及其余部分切断电路的联系,能有效地防备扰乱从过程通道进入单片机(见图13-14)。8.答:关于单片机应用系统中的拥有较大电感量的元件或设施,诸如继电器、电动机、电磁阀等。当电感回路的电流被切断时,会发生很大的反电势而形成噪声扰乱。这种反电势甚至可能击穿电路中晶体管之类的器件,反电势形成的噪声扰乱能发生电磁场,对单片机应用系统中的其余电路发生扰乱。假如经过电感线圈的是直流电流,可采纳以下举措加以抑制:·37·(1)可在线圈两头并联二极管和稳压管,如图(a)所示。图(a)由二极管和稳压管构成的反电势克制电路图(b)由电阻和二级管构成的反电势克制电路。在稳固工作时,并联支路被二极管D阻断而不起作用;当三极管T由通道变为截止时,在电感线圈两头发生反电势e。此电势可在并联支路中流通,所以e的幅值被限制在稳压管DZ的工作电压范围以内,并被很快耗费掉,进而克制了反电势的扰乱。使用时DZ的工作电压应选择得比外加电源高些。假如留意压管换为电阻,相同能够达到克制反电势的目的,如图b)所示,所以也合用于直流驱动线圈的电路。在这个电路中,电阻的阻值范围能够从几欧姆到几十欧姆。阻值太小,反电势衰减得慢;而阻值太大又会增大反电势的幅值。2)反电势克制电路也可由电阻和电容构成,如图(c)所示。适入选择R、C图(c)由电阻和电容构成的克制电路参数,也能获取较好的耗能成效。这种电路不只合用于沟通驱动的线圈,也合用于直流驱动的线圈。3)反电势克制电路不但能够接在线圈的两头,也能够接在开关的两头,比如继电器,接触器等零件在操控时,开关会发生较大的火花,必须利用RC电路加以汲取,如图(d),一般R取1~2KΩ,C取2.2~4.7μF。图(d)接在开关的两头的反电势克制电路9.答:数字地往常有很大的噪声并且电平的跳跃会造成很大的电流·38·尖峰,对模拟地有较大的影响,会惹起模拟电路发生偏差。所以正确的接法是,一定将所有的模拟地和数字地分别相连,而后模拟(公共)地与数字(公共)地仅在一点上相连结,且地线应尽量加粗,如图13-17。在ADC和DAC电路中,特别要注意地线的正确连结,不然会惹起ADC和DAC变换结果的禁止确。因为ADC、DAC芯片都供给了相应独立的模拟地和数字地引脚,必定要把模拟地引脚和数字地引脚尽可能短的相连。而后再与模拟地尽可能短的连结。10.答:1)电源去耦已经在第6题中介绍,就是在印刷电路板的电源输入端跨接退耦电容。跨接的电容应为一个10~100μF的大容量电解电容(如体积同意,电容量大一些更好)和一个0.01~0.1μF的非电解电容。(2)集成

温馨提示

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

评论

0/150

提交评论