• 422.50 KB
  • 2022-04-29 14:05:46 发布

单片机原理及应用综合习题及答案.doc

  • 49页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'综合习题一一、填空题1、单片机的发展大致可分为           个阶段。2、单片机与普通计算机的不同之处在于其将       、       和       3部分集成于一块芯片之上。3、单片机的存储器设计采用哈佛结构,它的特点是           。4、CPU主要由      器和      器组成。CPU中的        用来处理位操作。5、第四代计算机所采用的主要器件是                 。6、MCS-51系列单片机中,片内无ROM的机型是          ,有4KBROM的机型是         ,而有4KBEPROM的机型是              。7、—32的补码为        B,补码11011010B代表的真值为        D。8、原码数DFH=         D,原码数6EH=         D。9、100的补码=        H,—100的补码=          H。10、在8031单片机内部,其RAM高端128个字节的地址空间称为      区,但其中仅有        个字节有实际意义。11、通常单片机上电复位时PC=         H、SP=       H、通用寄存器则采用第        组,这一组寄存器的地址范围是从      H~       H。12、若PSW为18H,则选取的是第          组通用寄存器。13、8031单片机复位后R4所对应的存储单元地址为       H,因上电时PSW=    H。14、若A中数据为63H,那么PSW的最低位(即奇偶位P)为         。15、在微机系统中,CPU是按照        来确定程序的执行顺序的。16、堆栈遵循      的数据存储原则,针对堆栈的两种操作为    和     。17、在8031单片机中,使用P2、P0、口传送        信号,且使用了P0口来传送         、信号,这里采用的是       技术。18、使用8031单片机时需将EA引脚接       电平,因为其片内无    存储器,8031片外可直接寻址的存储空间达          KB。19、8位机中的被码数80H和7FH的真值分别为        和        。20、配合实现“程序存储自动执行”的寄存器是         ,对其操作的一个特别之处是          。21、MCS-51单片机PC的长度为         位;SP的长度为         位,数据指针DPTR的长度为       位。二、单选题1、电子计算机技术在半个世纪中虽有很大进步,但至今其运行仍遵循着一位科学家提出的基本原理。这位科学家是:(  )(A)牛顿    (B)爱国斯坦      (C)爱迪生   (D)冯·诺伊曼2、用晶体管作为电子器件制成的计算机属于:(  )(A)第一代    (B)第二代      (C)第三代        (D)第四代3、通常所说的主机是指:(  )(A)运算器和控制器            (B)CPU和磁盘存储器(C)CPU和主存                (D)硬件和软件4、计算机能直接识别的语言是:(  )(A)汇编语言                  (B)自然语言(C)机器语言                  (D)高级语言5、在CPU中,控制器的功能是:(  )(A)进行逻辑运算                   (B)进行算术运算(C)分析指令并发出相应的控制信号    (D)只控制CPU的工作6、所谓“裸机”是指:(  )(A)单片机                    (B)单板机(C)只装备操作系统的计算机    (D)不装备任何软件的计算机7、下列数据中有可能是八进制数的是:(  )(A)764          (B)238          (C)396        (D)7898、下列4种不同进制的无符号数中最小的数是:(  )(A)11011001B       (B)37O(八进制数)  (C)75   (D)2AH9、PC是:(  )(A)一根硬件信号线  (B)一个可由用户直接读写的8位RAM寄存器(C)一个不可寻址地特殊功能寄存器   (D)一个能自动加1计数的ROM存储单元10、在CPU内部贩映程序运行状态或反映运算结果的一些特征寄存器是:(  )(A)PC             (B)PSW     (C)A    (D)SP三、判断说明题1、在微机性能指标中,CPU的主频越高,其运算速度越快。(  )2、微型计算机与一般计算机的主要区别是体积小、重量轻、耗电少、价格便宜。(  )3、在MCS-51系统中,一个机器周期等于1us。    (    )4、所有的十进制小数都能准确地转换为二进制小数。  (    )5、调用子程序及返回与堆栈有关。  (    )6、PC可以看做是指令存储区的地址指针。 (    )7、SP内装的是栈顶首址的内容。   (    )8、如果指令系统中不给用户提供PUSH、POP指令的话,则设立堆栈毫无意义。  (    )9、在MCS-51系统中,PUSH、POP动作每次仅处理一个字节。10、所有计算机系统的堆栈都是向地址高端逐渐生长的,即均为“向上生成”堆栈。  (  )四、简答题1、请叙述微处理器μP、微机μC和微机系统μCS三者之间的区别。2、单片机与其他常见微机(如PC机)有什么不同?它有什么独特优点?3、堆栈区与一般的数据存储区有何异同?其重要作用是什么?4、如果程序中要用到两组工作寄存器,试问SP的初值应如何设定? 习题一 答案一、填空题1、三;2、CPU、存储器、I/O;3、将程序存储空间和数据存储空间在物理上分开;4、运算器、控制器、布尔处理器;5、中大规模以上集成电路;6、8031、8051、8751;7、11100000、-38;8、-63、110;9、64、9C;10、特殊功能寄存器区或SFR、21;11、0000、07、0、00—07;12、3(从第0组排起);13、04、00;14、0; 15、程序计数器PC;16、先进后出(或后进先出)、PUSH、POP;17、地址、数据、总线复用;18、低、程序、128(因程序和数据空间均可达64KB);19、-128、127;20、PC、每取完一字节指令后PC内容会自动加1;21、16、8、16。二、单选题1、D 2、B  3、C  4、C  5、C  6、D 7、A  8、B  9、C  10、B三、判断说明题1.错误,并非所有计算机系统的堆栈都向上生成,有的计算机系统设计为向下生成。2.正确(主频即做一次加法或寄存器间传送的时间,主频越高,运算速度越快。)3.错误。微型计算机的最大不同时;运算器和控制器集成在一块集成电路芯片上。4.错误。若晶振频率变化,则机器周期也将变化,只有在fosc=12MHZ的情况下机器周期才会等于1us。 5.错误。十进制小数不一定能准确地转换为二进制小数,例如1/7。   6.正确。    7.正确。  8.错误。SP内装的是栈顶地址本身。   9.错误。即使没有PUSH、POP指令,也要设立堆栈以完成子程调用及中断调用等功能。  10.正确。四、简答题1、运算器、控制器合称为中央处理单元(CPU)或处理器;若这两部分集成在同一块集成电路硅片上,则称为微处理器(uP)或MPU。微机 uC包括微处理器uP之外,还含有存储器和I/O接口。微机系统ucs除包括微机uC硬件之外,还包含系统软件和应用软件。2、主要有三点不同:一是CPU、存储器和I/O接口这几部分集成在一片芯片上;二是存储器设计采用了哈佛结构,将程序存储器和数据存储器在物理上分开;三是供位处理和位控制的资源丰富、I/O接口完善。优点:①集成度高、价格低廉,性能/价格比高;②程序存储器和数据存储器在物理上分开,可使程序不受干扰,抗干扰能力强;③布尔处理能力强,适于工业控制。            3、堆栈区与一般存储区相同之处是:它们都属于存储器的一部分,都能存放数据。其主要不同之处是对数据的存取规则有异:一般存储区使用随机读/写规则,而堆栈使用先进后出(或后进先出)规则。堆栈采用这种特殊规则后,可以圆满完成子程序调用或中断调用,多级子程序嵌套等功能。当然,堆栈区内的存储单元也可以使用随机读/写指令,但在那种情况下已经不把该单元当做堆栈看待了。4、这要看程序中用到的是哪两组通用寄存器。如果是第0~1组,即要占用片内RAM的00H~0FH单元,那么就要将上电或复位时自动生成的SP=07H的状态,用指令改设为0FH。若程序中用到的是第2~3组,则SP应被改设为1FH。 习题二一、填空题1、指令格式由          和        这两部分组成。2、寻址方式分为对         的寻址和对           的寻址两大类。3、访问8031片处数据存储器采用的是        寻址方式。4、设A=55H,R5=AAH,则执行ANLA,R5指令后的结果是A         ,R5=          。5、判断并填写下列指令的字节数:指令类型字节数 指令类型字节数 MOVCA,@A+DPTR MOVdir,#data MVOX@RO,A CLRbit MOV@Rī,A MOVA,#data MOVRn,A PUSHdirect ZNCDPTR MOVdir1,dir2 6、计算机的主机包括    A   。指令由  B   解释。设某条指令中的操作数(或操作数地址)部分为x,地址为x的主存单元内容为y,地址为y的主存单元内容主z。如果用直接寻址方式。参与操作的数据为   C    ;如果用立即寻址方式,参与操作的数据为 D ;如果用间接寻址方式,参与操作的数据为 E 。供选择的答案:A:①运算器和控制器 ②CPU和磁盘存储器  ③硬件和软件 ④CPU   和主存B:①编译程序   ②解释程序  ③控制器   ④运算器C~E:①x      ②x+y      ③y    ④y+Z     ⑤Z    ⑥x+z7、一般情况下,指令由 A 和操作数地址码两部分组成。利用堆栈进行运算的指令可以不设置 B 。浮点运算指令对用于 C 的计算机是十分必要的,而十进制运算指令对有大量I/O数据的用于  D  的计算机更为合适。移位指令属于 E 类指令。供选择的答案A、B:①指令码     ②地址码    ③操作码      ④校验码C、D:①事务处理   ②科学计算  ③工业控制    ④辅助教学E:  ①输入/输出   ②传送      ③运算        ④控制请选择并填写答案:A为     、B为    、C为     、D为      、E为    。二、判断下列指令是否合乎规定(合乎规定在题后打“√”,不合乎规定的打 “×”。)1、MOVR0,R1      (    )2、DECDPTR        (    )3、CPL30H          (    )4、CPLR5           (     )5、RLCR0           (     )6、MOVA,@R3        (     )7、MOVXA,@R1       (      )8、PUSHDPTR         (     )9、MOVPC,#2000H     (    )10、MOVA,30H        (    )11、MOVC,30H         (     )12、MOVF0,C        (   )13、MOVF0,ACC.3     (   )14、CPLF0             (   )三、简答题1、什么是指令?什么是指令系统?2、举例说明MCS-51指令系统中的任意5种寻址方式。3、简述MOVX和MOVC指令的异同之处。四、阅读并分析程序(根据各题具体要求填写答案)1、以下程序段执行后,A=         ,(30H)=        。MOV30H,#0AVHMOVA,#0D6HMOVR0,#30HMOVR2,#5EHANLA,R2ORL A,@R0SWAPACPLAXRLA,#0FEHORL30H,A2、以下程序段执行后, (40H)=         ,   (41H)=         。CLRCMOVA,#56HSUBBA,#0F8HMOV40H,AMOVA,#78HSUBBA,#0EHMOV41H,A3、设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A、R0和内部RAM中50H,51H单元的内容为何值?MOVA,59HMOVR0,AMOVA,#00HMOV@R0,AMOVA,#25HMOV51H,AMOV52H,#70H4、设堆栈指针SP中的内容为60H,内部RAM中30H和31H单元的内容分别为24H和10H,执行下列程序段后,61H,62H,30H,31H,DPTR及SP中的内容将有何变化?PUSH30HPUSH31HPOPDPLPOPDPH MOV30H,#00HMOV31H,#0FFH5、设A=40H,R1=23H,(40H)=05H。执行下列两条指令后,累加器A和R1以及内部RAM中40H单元的内容各为何值?XCHA,R1XCHDA,@R1五、简单编程题1、试编写一个程序,将内部RAM中45H单元的高4位清0。低4位置1。2、试编写一个拼字程序(例如将05H和06H拼为56H),设原始数据放在片外数据区的7001H单元和7002H单元中,按顺序拼装后的单字节数放入7002H。习题二 答案一、填空题1、操作码、操作数或操作数地址;2、指令、数据;3、寄存器间接;4、4、0、AAH;5、如下表:指令类型字节数 指令类型字节数MOVCA,@A+DPTR1MOVdir,#data3MOVX@R0,A1CLRbit2SETBC1MOVA,#data2MOVRn,A1PUSHdirect2INCDPTR1MOVdir1,dir23 6、A=④、B=③、C=③、D=①、E=⑤7、A=③、B=②、C=②、D=①、E=③二、判断下列指令是否合乎规定,且说明理由1、×,通用寄存器间不能互传。  2、×,指令系统中没有提供这条指令。3、√。  4、×,CPL对字节类地址的操作只允许A。   5、×,循环移位只能对A操作。   6、×,这种间接寻址方式只允许用R0或R1。   7、√。8、×,16位数据无法一次送入堆栈。   9、×,PC是不可寻址的SFR。  10、√。11、√。   12、√。    13、×,普通位地址内容不能互传。   14、√。三、简答题1、指令是控制计算机进行某种操作的命令;指令系统是指一台计算机中所有指令的集合。2、5种寻址方式举例如下:立即寻址:MOVA,#20H直接寻址:MOVA,20H寄存器寻址:MOVA,R0寄存器间接寻址:MOVXA,@DPTR变址寻址:MOVC A,@A+DPTR3、MOVX和MOVC指令的相同之处;都是数据传送类指令。不同之处:MOVX是在A累加器与片外数据存储器之间双向传送数据的指令;而MOVC则是将程序存储器中内容读入A累加器的指令。四、阅读并分析程序1、A=6EH(30H)=EEH2、(40H)=5EH、(41H)=69H    3、A=25H、R0=50H、(50H)=00H、(51H)=25H    4、(61H)=24H、(62H)=10H、(30H)=00H、(31H)=FFH、DP、TR=2410H、SP=60H    5、A=25H、R1=40H、(40H)=03H五、简单编程1、方法1:用交换指令MOVA,#0FHXCHA,45H方法2:用传送指令MOV45H;#0FH2、设7001H单元放置的是高位数据,7002H单元放置的是低位数据,两个原始数据都不超过0FH。则程序段如下:MOVDPTR,#7001HMOVXA,@DPTRSWAPAINCDPTRMOVXA,@DPTRORLA,BMOVX@DPTR,A 习题三 一、简答题1、MCS-51指令集中有无“程序结束”指令?上机调试时怎样实现“程序结束”功能?2、简述转移指令AJMPtarget、SJMPshort—lable、LJMPtarget及JMP@A+DPTR的应用场合.二、阅读并分析程序(根据各题具体要求填写答案)1、已知程序执行前有(40H)=88H,问:①程序执行后(40H)=        。②归纳出该子程序完成的是何种功能。MOVA,40HJNBACC.7,GOCPLAINCAMOV40H,AGO:RET2、阅读程序并回答问题。设:R0=20H、R1=25H、(20H)=80H、(21H)=90H、(22H)=A0H、(25H)=A0H、(26H)=6FH、(27H)=76H,程序如下:CLRCMOVR2,#3LOOP:MOVA,@R0ADDCA,@R1MOV@R0,AINCR0INCR1DJNZR2,LOOPJNCNEXTMOV@R0, #01HSJMP$NEXT: DECR0SJMP$程序执行后:(20H)=       (21H)=       (22H)=        (23H)=       Cy=            A=            R0=           R1=        3、试用箭头标明如下程序段的执行路线,简要说明理由,并填写程序执行后的结果(已知A=0AH)。ADDA,#0F4HJBOV,GOEJNBACC.7,GOPCPLASETB20H.0RETGOP:CLR20H.0RETGOE:MOVA,#0FFHRET程序执行后:A=        H,20H.0=        。4、请填写程序执行结果。已知执行前有A=02H、SP=40H、(41H)=FFH、(42H)=FFH,程序如下:POPCPHPOPDPLMOVDPTR,#3000HRLA MOVB,AMOVCA,@A+DPTRPUSHACCMOVA,BINCAMOVCA,@A+DPTRPUSHACCRETORG3000HDB10H,80H,30H,80H,50H,80H,程序执行后:A=        H、SP=       H、(42H)=        H、PC=       H?5、下述程序执行后,请问SP=           A=         B=      ?     MOVSP,#40H     MOVA,#30H     LCALLSUBRADDA,#10HBACK:MOVB,AL1:  SJMPL1SUBR:POPDPHPOPDPLMOVDPTR,#AGIPUSHDPLPUSHDPHRET 6、计算下面子程序中指令的偏移量和程序执行的时间(系统晶振频率12MHZ)。7B0F         MOVR3,#15  ;1M7CFFDL1:   MOVR4,#255 ;1M8B90 DL2:   MOVP1, R3    ;2MDC           DJNZR4,DL2  ;2MDB           DJNZR3,DL1  ;2M22           RET          ;2M三、编写程序题1、将片外数据存储器中7000H—70FFH单元全部清零。2、用移位指令编写双字节数据从高向低循环右移4位的子程序,设高8位数据在B寄存器中,低8位在A累加器中。3、将10个单字节无符号数升序排序,排序前后的数据均置于内部RAM的50H—59H单元内。习题三 答案一、简答题1、没有这样的指令。但实现“程序结束”至少可以借助4种办法:①用原地踏步指令SJMP$死循环。②在最后一条指令后面设断点,用断点执行方式运行程序。③用单步方式执行程序。④在末条指令之后附加一条LJMP监控显示器程序首地址或LJMP0000H,返回监控状态。2、它们都是程序无条件转移指令,其结果都是改变了PC的内容;但它们寻址过程和应用场合却有所区别:①LJMP指令是直接将指令中的16位地址数据送入PC,可在64KB程序存储空间内随意转移(转移范围为64KB)。②AJMP指令是将指令中包含的11位地址数据送入PC的低11位,可在该指令附近的当前2KB程序存储空间内转移。③SJMP指令是将指令中的8位数据与PC值相加后再送入PC,转移范围小,只能在该指令的前128字节和后127字节内转移(以该指令后一条指令为参照点)。④JMP@A+DPTR指令是将A内容与DPTR内容右对齐相加后,再送入PC中,与LJMP相似,也可以转移64KB的程序空间。在选用时,凡转移地址超过当前地址2KB的,只能用LJMP指令;凡转移地址在当前地址—128—+127字节之间的,可以选用SJMP指令,其余范围可选取用AJMP指令。如果要实现“条件不同,则转移地址不同”的功能,用JMP@A+DPTR指令将是最佳选择。二、阅读并分析程序1、①(40H)=78H。②该子程序的功能是对③ (40H)内的单字节符号数求补码。注:若只说出是“先取反而后加1”,但无法归纳为对符号数求补码时,扣一半分。2、(20H)=20H、(21H)=00H、(22H)=17H、(23H)=01H、Cy=1、A=17H、R0=23H、R1=28H。3、ADDA,#0F4H↓JBOV,GOE       ;无溢出,不转移↓JNBACC.7,GOP          ;ACC.7=1,不转移↓CPLA↓INCA↓SETB20H.0↓ RETGOP:CLR20H.0     RETGOE:MOVA,#0FFH     RETZ程序执行后:A=02H、20H.0=14、A=80H、SP=40H、(41H)=50H、(42H)=80H、PC=8050H。5、SP=40H、a=30H、b=30H。6、机器码填空为:FC和F8时间计算:1个机器周期在12MHZ晶振下的时间是1us.         程序总机器周期数=1+{1+(2+2)×255+2}×15}+2=15348         所以该程序执行时间为15.438ms。三、编写程序1、方法1:用DPTR作为地址指针       MOVDPTR,#7000H       CLRA       MOVR0,ALOOP:MOVX@DPTR,A       INCDPTR       DJNZR0,LOOP       ;还可以用GJNEA,DPL,LOOP(因为A=0)       SJMP $ 方法2:P2预先锁存高8位地址,用R0作为地址指针MOVP2,#70HCLRAMOVR0,ALOOP:MOVX@R0,ADJNZR0,LOOPSJMP  $2、   PUSH6FH             ;保护现场PUSHPSWMOV6FH,#4           ;从高向低右移4次计数器LOOP:MOVC,ACC.0  ;C被A的最低位刷新,送入高8位的最高位XCHA,B             ;高低8位寄存器互换RRCA                ;高8位先右移,最低拉进入C中XCHA,B                ;高低8位寄存器还原RRCA                                      ;低8位右移,C补进最高位DJNZ6FH,LOOP                    ;若右移不足4次,继续循环移位POPPSW                                  ;恢复现场POP6FHRET3、方法1  程序中用到的有关寄存器含义如下:R0存放数据块的地址指针,R2存放每轮比较次数,R3是每轮中的比较次数计数器。F0=PSW、4作为有无交换的标志位。CLRF0MOVR2,#0AHLOOP2:  MOVR0,#50H          MOV03H,02H              ;即R3←R2LOOP1:  MOVA,@R0          INCR0          CJNEA,B,$+3          JCNEXT          MOV@R0,A          DECR0          SETBF0EXT:     DJNZR3,LOOP1          JNBF0,DONE          CLRR0          DJNZR2,LOOP2DONE:    SJMP$方法2          CLRF0               ;清交换标志          MOVR7,#9         ;设置外循环计数器OUTSID: MOVR0,#50H        ;R0指向数据区          MOVR6,07HINSIDE:  MOVA,@R0          ;取一数据到A          INCR0          MOVB,@R0            ;取下一步单元数据到B           CJNEA,B,$+3           ;A≥@R0?          JCNEXCHG              ;小于不交换          XCHA,@R0             ;大于交换          DECR0          MOV@R0,A          INCR0          SETBF0                   ;置交换标志NEXCHG:DJNZR6,INSIDE          ;内循环结束?          DECR7                    ;下次的内循环少一次          JBCF0,OUTSID             ;交换发生继续外循环,并清交换标志          SJMP$                     ;未交换结束循环习题四一、填空题1、计算机对输入/输出设备的控制方式主要有三种。其中, A 方式硬件设计最简单,但要占用不少CPU的运行时间; B 方式的硬件线路最复杂,但可大大提高数据传送效率;而 C 方式则介于上述两者之间。A—C:①先进先出   ②后进先出  ③直接存储器访问 ④程序查询  ⑤高速缓存  ⑥系统总线  ⑦程序中断  ⑧逐行扫描请选择并填写答案: A=           B=           C=        2、I/O端口与外部设备之间传送的信息可分为      类。3、MCS—51单片机系列有      个中断源。上电复位时,同级中断的优先级从高至低为      、     、      、       、和       ,若IP=00010100B,优先级别最高者为       、最低者为       。4、在MCS— 51单片机系统中,当某中断源发出中断请求,单片机予以响应时,它必须处于     和     两级开中断状态。5、中断请求信号有       触发和     触发两种触发方式。6、MCS—51单片机8031中有      个       位的定时器/计数器,可以被设定的工作方式有       种。7、若系统晶振频率为12MHz,则TO工作于定时和计数方式时最高(计数)信号频率分别为       kHz和       kHz。8、欲对300个外部事件计数,可以选用定时/计数器T1的模式   或模式    。9、在串行通信中采用偶校验,若传送的数据为0A5H,则其奇偶校验位应为  (用“0”、“1”表示)。10、在异步通信中若每个字符由11位组成,串行口每秒传送250个字符,则对应波特率为        。二、判断说明题(判错者请说明理由)1、输入/输出设备必须通过I/O接口才能接到系统总线上和主机进行信息交换。2、MCS—51系统中的P0—P3四个端口中,只有P1才是真正的I/O接口。3、为使准双向的I/O口工作在输入方式,必须保证它被预先置为“1”。4、P1口最低位上接入了打印机的BUSY信号,则查看该信号的指令是MOVC,P1.0。5、DMA方式在传送过程中,地址修改、字节计数等操作完全由硬件电路来实现。三、单项选择题(从四个备选答案中选出一个正确答案,并将其代号写在括号内)1、外部中断1固定对应的中断入口地址为(  )。 A、0003H        B、000BH       C、0013H       D、001BH2、各中断源发出的中断请求信号,都会标记在MCS—51系统中的(  )。 A、TMOD        B、TCON/SCON      C、IE         D、IP3、MCS—51单片机可分为两个优先级别。各中断源的优先级别设定是利用寄存器(  )。 A、IE            B、IP       C、TCON         D、SCON4、MCS—51的并行I/O口信息有两种读取方法,一种是读引脚,还有一种是(     )。 A、读锁存        B、读数据       C、读A累加器      D、读CPU5、MCS—51的并行I/O口读-改-写操作,是针对该口的(   )。 A、引脚          B、片选信号    C、地址线           D、内部锁存器6、以下指令中,属于单纯读引脚的指令是(      )。 A、MOVP1,A B、ORLP1,#0FH C、MOVC,P1.5 D、DJNZP1,short—lable7、(    )不属于微型机引入中断技术后的好处。 A、分时操作    B、实时处理     C、故障处理     D、高速传送数据8、(  )并非单片机系统响应中断的必要条件。 A、TCON或SCON寄存器内的有关中断标志位置为1B、IE中断允许寄存器内的有关中断允许位置1C、优先级寄存器内的有关位置1D、当前一条指令执行完四、简答题1、程序查询方式与程序中断方式有何异同之处?2、MOVP1,#0FFH这条指令应当理解为输出全“1”到P1口呢,还是理解为从P1口读引脚的预备动作?3、MCS—51单片机响应中断的典型时间为多少?在哪些情况下CPU将推迟对中断申请的响应? 4、单片机系统中的定时和计数功能有何区别?分别适用于什么场合?简述其工作原理。5、串行数据传送的主要优点和用途是什么?五、写出完整源程序利用8031单片机的P1.0端持续产生如图4—1所示的方波,系统晶振频率为12MHz。要求软件时方法或定时器方法完成此题要求。图4—1  第五题图六、设计程序请设计一个由单片机控制的大会发言限时器,例如限时15分钟。具体要求是:当发言者开始讲话时,主持人手动按下“开始”键(无锁按钮),15分钟后由微机控制发出提示信号(提示信号可自行设定)。假定单片机晶振频率选用6MHz,另可提供1Hz稳频脉冲源,请画出电路示意图,并用中断方式完成本题的程序设计。  习题四 答案一、填空题1、A=④、B=③、C=⑦。   2、3。     3、5,外部中断0、定时器0、外部中断1、定时器1和串行口;外部中断1、定时器1。 4、源允许、总允许。   5、电平、边沿。   6、2、16、4。   7、1000、500。   8、0、1。  9、0。   10、2750。 二、判断说明题1、正确。2、错误。P0—P3都是真正的I/O口,只是当片外需要扩展存储器或其他外设时,其中3个才复用为三总线。3、正确。4、正确 此时要求读引脚。5、正确。三、单项选择题1、C  2、B  3、B   4、A  5、D  6、C  7、D 8、C四、简答题1、相同之处:都是由CPU通过程序来传送数据,都需要借助CPU工作;不同之处:直接程序传送(包括无条件传送和查询式I/O传送)方式对接口电路的要求很简单,但对传送信息的时间要求很严格,且占用了CPU的大量时间,效率低下。而中断传送方式可大大提高CPU利用率、允许多个外设并行工作,但硬件线路稍复杂。2、这要看P1口所接下来何种外设,也要看程序中的上下文,不能断然理解为前者或后者。若所接外设为单纯输出设备,则理解为送出全“1”信号;若所接外设为单纯输入设备,则理解为读并口数据之前的预备动作;若所接外设为输入/输出双向传输设备,则要根据程序流程及该指令之前的程序意图去理解。3、典型(也是最短)时间为3个机器周期。若出现以下情况将推迟对中断申请的响应:1)正在执行的中断服务级别很高(或同级);2)浊当前指令的最后一个M(机器)周期;3)若当前指令是RETI或是对IP、IE寄存器的操作指令,则不能马上响应,还会顺延一条指令。4、“定时”功能是对片内稳频脉冲(是晶振频率的1/12)的计数,从计数开始到计满溢出为止,可以由计数值×稳频脉冲周期值来得到一个准确的时间值;而“计数”功能则是对单片机引脚上的外来随机脉冲进行计数,一般情况下难以折算为精确进间。定时功能适用于需要准确计量一段时间的场合;而计数功能适用于对外部事件的计数。在单片机内,定时和计数的实现都是借助一个加1计数器,工作原理基本一样,只是定时方式下计数脉冲为f ose/12,计数方式下的计数脉冲由单片机外引脚(T0或T1)来输入。5、串行数据传送是将数据按bit逐位进行传送的方式。其主要优点是所需的传送线根数不(单向传送只需一根数据线、双向仅需两根),对于远距离数据传送的情况,采用串行方式是比较经济的。所以串行方式主要用于计算机与远程终端之间的数据传送,也很适于经公众电话网连接的计算机之间的通信,另外在某些场合,串行接口也可以代替并行接口来控制外设,以节省软硬件资源、简化线路。五、写出完整源程序方法1:用软件定时方式,可以通过调用20ms延时子程序来实现。程序如下:START:SETBP1.0LCALL    DELAY20  ;让P1.0脚上高电平延时20msCPL        P1.0LCALL      DELAY20   ;让P1.0脚上低电平延时40msLCALL       DELAY20SJMP         STARTDELAY20: CPLRS1MOVR6,#20LOOP1:   MOV   R7,#249LOOP2:    MOPNOPDJNZ     R7,LOOP2DJNZ     R6,LOOP1CPL      RS1RET方法2:用定时器T0实现20ms定时,然后配以编码控制方式。AJMP     MAINORG0BHMOV   TH0,#0B1HMOV   TL0,#0E0HRLC     AMOV    P1.0,CRETIMAIN:    MOVTMOD,#00000001B  ;选用T0定时,方式1,内触发MOVTH0,#0B1H        ;定时20msMOVTL0,#0E0HSETB   EA             ;T0开中断SETBET0CLRCMOVA,#10010010B       ;编码值,A与C拼接形成100100100SETBTR0                 ;定时器开始工作SJMP$六、设计程序可利用8031内部定时器对片餐的1s脉冲源计数900次,从而达到15分种定时。用查询方式等待手动“开始”信号,有信号来,则计数器开始工作。当计数900次满时,发出中断请求信号,此时让指示灯亮(可安排P1.0引脚控制灯的亮/灭)。硬件电路示意图如附图1所示:                       附图1  题六图控制程序如下:AJMPSTART ORG0BHCLRTR0          ;停止计数/计时CLREA           ;关中断SETBP1.0         ;指示灯亮RETISTART:CLRP1.0          ;指示灯灭MOVTMOD,#00000101B  ;选用T0计数,方式1,内触发MOVTH0,#0FCH           ;计数900次MOVTL0,#7CHSETBP1.7                  ;为输入先预置“1”JNBP1.7,$                 ;等待“开始”按钮的下降沿到来JBP1.7,$SETBTR0                  ;开始计数(实际上是计时)SETNEA                   ;T0开中断SETBET0SJMP $ 习题五一、填空题1、CPU寻址外设端口地址的方法有      编址和      编址两种。2、当8051的RST端上保持      个机器周期以上的低电平时,8051即发生复位。3、若系统晶振频率为6MHz,则时钟周期为       μs,机器周期为      μs,最短和最长的指令周期分别为      μs和       μs。4、若单片机的晶振频率fose=8MHz,则执行一条MULAB指令所需时间为   μs。5、当单片机的型号为8031/8032时,其芯片引线EA一定要接      电平。6、CPU与内存或I/O接口相连的系统总线通常由      、     、     等三种信号线组成。7、MCS—51机中扩展I/O口占用片外      存储器的地址空间。8、MCS—51单片机访问片外存储器时利用      信号锁存来自     口的低八位地址信号。9、12根地址线可选     个存储单元,32KB存储单元需要       根地址线。10、若LED为共阳极接法(即负逻辑控制),则提示符P的七段代码值应当为    H。11、用并行口扩展一个有32只按键的行列式键盘,最少需要     根I/O线。12、欲增加8KB×8位的RAM区,请问选用Intel2114(1KB×4位)需购   片;若改用Inte16116(2KB×8位)需购     片,若改用Inte16264(1KB×8位)需购  片。13、三态缓冲寄存器的“三态”是指       态、       态和     态。 14、74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最我可以选中       块芯片。15、74LS273通常用来作简单    接口扩展;而74LS244则常用来作简单   接口扩展。二、判断说明题(判错者请说明理由)1、若外设控制器中的寄存器和主存单元统一用主存地址编址,那么在计算机的指令系统中可以不设专门的I/O指令。2、通常每个外部设备都有一个端口寄存器与主机交换信息,因此,主机只能用一个惟一地址来访问一个外部设备。3、8031单片机的有效复位电平是低电平。4、在MCS—51系统中,一个机器周期等于2μs。5、锁存器、三态缓冲寄存器等简单芯片中没有命令寄存和状态寄存等功能。6、89C51的最小应用系统中需要地址锁存器来进行数据总线和地址总线低8位的分离。三、单项选择题1、CPU寻址外设端口地址的方法有两种,一种是统一编址,还有一种是(   )。A、混合编址    B、动态编址      C、独立编址      D、变址编址2、访问片外数据存储器时,不起作用的信号是(      )A、RD          B、WR            C、PSEN        D、ALE3、下列四条叙述中,有错误的一条是(     )A、16根地址的寻址空间可达1MB  B、内存储器的存储单元是按字节编址的C、CPU中用于存放地址的寄存器称为地址寄存器D、地址总线上传送的只能是地址信息4、20根地址线的寻址范围可达(   ) A、512KB        B、1024KB       C、640KB      D、4096KB四、简答题1、有哪几种方法能使单片机复位?复位后寄存器的状态如何?复位对内部RAM有何影响?2、MCS—51单片机扩展系统中,为什么P0口要接一个8位的锁存器,而P2口却不接?3、MCS—51引线中有多少I/O引线?它们和单片机对外的地址总线和数据总线有什么关系?简述8031单片机中P0、P1、P2和P3口的主要作用。五、硬件设计题将8031芯片外扩一片2764EPROM组成最小单片机系统。①、地址线、数据线至少各需多少根?②、详细画出该最小系统的连接图。③、指出连接后该EPROM的地址范围。六、综合设计题用89C51最小系统构成一个七段显示器(共阴极)的控制电路,要求实现:①、外框6段依次发光,成顺时针旋转状,且任意时刻仅有一段发光。②、由一个手动开关K控制旋转速度,可选择段切换时间为0.2s或0.5s。请画出与七段显示器及手动开关K有关的控制电路,列出程序流程,编写程序并加注释(延时100ms的子程序D100MS为已知条件可调用)。 习题五 答案一、填空题1、统一、独立。2、两。3、0.33、2、2、8。   4、6。    5、低。6、数据、地址、控制。   7、数据。   8、ALE、P0     9、212(或4KB)、15。      10、0CH或8CH。     11、12。      12、16、4、4。    13、低电平、高电平、高阻。      14、8。     15、输出、输入二、判断说明题1、正确。2、错误。通常一个外部设备有数据、状态等多个端口寄存器与主机交换信息,因此,主机不一定只用一个惟一地址来访问一个外部设备。3、错误。应该是2个机器周期以上的高电平。4、错误。若晶振频率变化,则机器周期也将变化,只有在fosc=6MHz的情况下机器周期才会等于2us。5、正确。   6、错误。89C51内部含有程序存储器,其最小系统不用外扩任何存储器或I/O接口,因此地址锁存器可以不要,此时P0—P3口全部可以用作普通I/O口。三、单项选择题1、C        2、C        3、A            4、B四、简答题1、MCS— 51单片机有上电自动复位和按钮复位两种方法使单片机复位。复位主要是把PC初始化为0000H,使单片机从程序存储器的0000H单元开始执行程序。此外,复位还对其他一些特殊功能寄存器有影响,其影响是除SP=07H,P0—P3四个锁存器均为FFH外,其他所有的寄存器均为0。复位不影响内部RAM的状态(包括通用寄存器Rn).2、由P0口的位结构可知,MCS—51单片机在进行外部寻址时,P0口的8根引线是低8位地址和8位数据的复用线。P0口首先将低8位的地址发送出去,然后再传送数据,因此要用锁存器将先送出的低8位地址锁存。而P2口输出的是地址或P2.x的状态,是地址还是P2.x的状态由其内部自动控制,执行指令MOVXA,@DPTR或者指令MOVX@DPTR,A时,P2口输出的是高8位地址;其他情况下,P2口输出的是P2.x的状态。所以,MCS—51单片机扩展系统中,P0口要接一个8位的锁存器,而P2口却不接。3、共有32根I/O引线,其中部分引线在单片机有外扩对象时,将代替地址总线和数据总线(还有控制总线)的功能。这32根I/O引线均匀分布于P0、P1、P2和P3口。若没有单片机外扩要求,则4个并行口都是纯粹的I/O口;但是,当单片机有外扩任务时,则P0口将作为8位数据总线,P2和P0口将作为16位地址总线,P3口的一部分将作为读/写等控制总线信号,此时只有P1口保留作为单纯的I/O口。五、硬件设计题①因为2764芯片是8KB×8的EPROM,所以很显然,数据线需要8根,连往片内的地址线需要13根;又因为最小系统只需外扩一片程序存储器,所以供片选用的地址线顶多只需1根(也可直接将片选信号接地);合计需要地址线13—14根,本题选用14根。② ③该EPROM地址范围是0000H—1FFFH。六、综合设计题硬件电路如图所示:对开关K的识别拟采用查询方式,设开关K已配有硬件防抖电路,且开关K切换后至少会维持0.5s以上,程序如下:START:MOVA,#01HLOOP:MOVP1,A             ;当前段亮(从a段开始)SETBP1.7                ;为输入接口预置“1”JBP1.7,LOOP2             ;若KB为高电平,每段显示0.2s(即200ms)ACALLD100MS           ;若KB为低电平,每段显示0.5s(即500ms)ACALLD100MSACALLD100MSLOOP2:ACALLD100MSACALLD100MSRLA                      ;准备让下一段亮,其段灭CJNEA,#40H,START     ;当6段显示完,再从头开始SJMPLOOP习题六一、填空题1、存储器的主要功能是存储        和       。2、半导体存储器的最重要的两个指标是        和        。3、若你正在编辑某个文件,突然断电,则计算机中      类型存储器中的信息全部丢失,且通电后也不能自动恢复。4、8051在物理结构上有   个存储空间,它们分别是   、   、   、    ,但是逻辑结构上只有      个存储空间,它们分别是     、    、和    。5、MCS—51单片机的外部存储器分为    和     两部分,要将这两部分合二为一使用时,需用     和      两个控制信号相    后产生的信号对存储器进行选通。6、32KBRAM的首地址若为2000H,则末地址为                 。7、一个8路数据选择器有           个选择输入器。8、起止范围为0000H~3FFFH的存储器容量为          KB。9、已知RAM芯片6116(2KB×8位)的内部存储单元排列为128行×16列,请问所采用的内部双译码行输入地址线为        根,列输入地址线为      根,该片共占用        根地址线。10、已知RAM芯片6116(2KB×8W位)有24条外引脚,请问应分配        个引脚给地址线,分配       个引脚给数据线,再分配2个引脚给电源和地线外,剩余的      个引脚应该分配给              。11、一个2输入二进制译码器,共有             个输出。12、通常计算机的存储器是一个由Cache、主存和辅存构成的三级存储器系统。辅存储器一般可由磁盘、磁带和光盘等存储设备组成。Cache和主存一般是一种A存储器、磁带则是一种 B 存储设备。在各种辅存中,除去 C 外,大多是便于脱卸和携带的。Cache存储器一般采用 D 半导体芯片,大中型机的主存一般由E半导体芯片组成。供选择的答案:A、B:①随机存取  ②相联存取  ③只读存取  ④顺序存取 ⑤先进先出存取C:  ①软盘      ②CK-ROM  ③磁带      ④硬盘D、E:①ROM     ②PROM    ③EPROM   ④DRAM    ⑤SRAM请填写:A=         B=           C=           D=          E=     13、计算机硬件由 A 等五部分组成,其中,存储器以可分为 B 和 C 。计算机正在运行的程序和数据放在 B 中。程序由指令组成,指令一般由 D 表示。中央处理器中的 E 指明要执行的指令所在 B 单元的地址。供选择的答案A:①运算器、控制器、存储器、显示器和键盘 ②中央处理器、控制器、存储器、软盘和硬盘③运算器、控制器、存储器、输入设备和输出设备④中央处理器、运算器、存储器、终端和打印机B、C:①寄存器②主存③硬盘④辅存⑤软盘 ⑥磁带 ⑦CD-ROM ⑧CacheD:①操作码 ②地址码 ③控制码  ④操作码和地址码  ⑤操作码和控制码E:①指令译码器 ②程序计数器 ③指令寄存器  ④程序状态字寄存器请填写:A=         B=           C=           D=          E=     14、同一计算机系统中有多种不同的存储器,如主存、5.25英寸软盘、3.5英寸软盘、硬盘、磁带和CD-ROM等,各自起了不同的作用。有些存储介质可以随机替换,方便携带,如 A 。各种存储器容量不同,如在目前流行的微型计算机上,B的容量依次从小到大。各种存储器的存取速度也不同,如对 C 的存取速度就依次由快到慢。I/O设备和主机间的数据传送可通过D或E端口实现,其中远距离的数据通信一般通过E端口来实现的。供选择的答案A~C:①CD-ROM、硬盘、磁带和主存②主存、硬盘、3.5英寸软盘和磁带③磁带、5.25英寸软盘、3.5英寸软盘和CD~ROM④3.5英寸软盘、5.25英寸软盘、磁带和主存⑤5.25英寸软盘、3.5英寸软盘、主存和硬盘⑥主存、CD-ROM、3.5英寸软盘和硬盘D、E:①同步  ②异步  ③单工 ④并行 ⑤双工 ⑥串行请填写:A=         B=           C=           D=          E=      二、单项选择题1、主存储器系统中使用Cache的目的是(    )。(A)增加主存容量                  (B)存放常用的系统程序(C)存放固化的软件                (D)提高CPU存取主存的速度2、MCS-51系列单片机外扩存储器芯片时,4个I/O口中用作数据总线的是(    )。(A)P0口和P2口    (B)P0口      (C)P2口和P3口     (D)P2口3、计算机工作时,能写入也能读出的半导体存储器是(     )。(A)RAM       (B)ROM        (C)磁盘       (D)磁带4、区分片外程序存储器和数据存储器的最可靠方法是(    )。(A)看其芯片型号是RAM还是ROM(B)其位于地址范围的低端还是高端(C)其离MCS-51芯片的远近(D)看其是被RD信号连接还是被PSEN信号连接三、判断说明题(判错请说明理由)1、EPROM中存放的信息在计算机执行程序时只能读,且断电后仍能保持原有的信息。   (   )2、ROM是只读存储器,在通用计算机中执行的用户程序和数据是经常变更的,因此通用计算机中只用RAM,不用ROM。(   )3、可以通过将系统软件中常用部分固化的办法来提高计算机的性能。(    )4、CPU由RAM和ROM两部分组成。(    )5、RAM是非易失性的存储器,即使电源关断,其内容也不会丢失。(   )6、动态RAM组成的存储器,必须进行周期性刷新,否则存放内容就会丢失。刷新对于用户是透明的。(   ) 四、简答题MCS-51单片机可以外接64KB的片外程序存储器和64KB的片外数据存储器。这两种片外存储器共处同一地址空间而不会发生总线冲突,主要依靠单片机外引脚上的哪些信号来区分?五、硬件设计题1、设计用2716芯片为单片机扩展4KROM的电路图。要求地址为0000H~0FFFH。2、使用89C51芯片外扩一片E2PROM2864,要求2864兼作程序存储器和数据存储器,且首地址为8000H。要求:(1)画出该应用系统的硬件连接图。(2)确定2864芯片的末地址。 习题六 答案一、填空题1、指令、数据。2、存储容量、存取速度。    3、RAM。    4、片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器、3、片内片外统一编址的64KB程序存储器、片内256B的数据存储器、片外64KB的数据存储器。  5、程序、数据、PESN、RD、与(请注意是负逻辑)。   6、9FFFH。7、3。      8、16。        9、7、4、11。     10、11、8、3、CEOEWE(或片选、输出允许和写允许)。     11、4。  12、A=①、B=④、C=④、D=⑤、E=④。   13、A=③、B=②、C=④、D=④、E=②。     14、A=③、B=⑤、C=②、D=④、E=⑥。二、单项选择题1、D        2、B         3、A         4、D三、判断说明题1、正确。2、错误。ROM也可以存放用户的数据信息。     3、正确。   4、错误。CPU是由控制器和运算器两部分组成。       5、错误,RAM是随机存取存储器,电源关断,其内容会丢失。6、正确。四、简答题片外程序存储器靠单片机引脚上的PSEN信号访问;片外数据存储器则靠RD或WR信号访问。所以,即使地址相同,但只要“读”信号不相同,仍然可以惟一选中对应的存储器空间,不会混乱。另外,当8051的EA信号接地时,一上电就会转向片外ROM(程序存储器)取指令;而EA=1时,则会先访问内部ROM,等PC超过1000H后才转向片外ROM。五、硬件设计题1、 2、(1)电路图如下所示:(2)2864为8KB的存储器,如果首地址为8000H,则其末地址为9FFFH。  习题七一、填空题1、8255可编程芯片通常作为                                扩展之用;  8253可编程芯片通常作为                                扩展之用;  8155可编程芯片通常作为                                扩展之用;  8279可编程芯片通常作为                                扩展之用;2、若用8255或8155来扩展一个有36只按键的行列式键盘,最少需要       根I/O线。3、MCS-51单片机的51子系列含有       个       位的定时器;  MCS-51单片机的53子系列含有       个       位的定时器;  8253芯片中有       个       位的定时器;  8155芯片中有       个       位的定时器;  8279芯片中有       个       位的定时器;。4、用一片8279最多可扩展64只按键和         只七段显示器。5、8279芯片中的16字节显示缓冲区,其数据应该送待显字符的             码。 二、判断说明题(判错者请说明理)1、凡是可编程并行接口芯片,都一定含有三个独立端口。(    )2、MCS-51单片机片内定时器T0、T1无法实现硬件直接级联,而8253定时器则可以实现。3、8255芯片可以用来实现双机并行通信,而8155芯片则不行。(   )4、串行口没有对应的可编程外围接口芯片。(    )5、“接口芯片初始化”的含义,是向控制字寄存器写入与该芯片工作方式有关的一串控制信息。6、设置显示缓冲区的目的是为了存放供显示的数字或字符。三、简答题1、对扩展并行口的输入输出操作和对片内P1口的输入输出操作有何不同?2、并行接口的扩展有好几种方法,请问在什么情况下采用8155芯片扩展较为合适?3、8279芯片内的主要部件有哪些?它的主要优点(或特色)是什么?四、编程题编程对8255进行初始化,使其A口按方式0输入,B口按方式样输出,C口上半部按方式0输出,C口下半部按方式1输入。五、设计题1、MCS-51单片机要扩展一片8255,画出电路图并写出地址分布。2、设计将RAM缓冲区30H、31H的内容经串行口由两片74LS164并行输出的硬件电路和子程序 习题七 答案一、填空题1、并行接口、定时器、并行接口计数器和存储器、键盘/显示控制器。     2、12。3、2、16、3、16、3、16、1、14、1、5。     4、64、16。   5、七段代码。二、判断说明题1、错误。可编程并行接口芯片,所含端口数可以不相同。2、正确、因为片内定时器T0和T1没有“溢出”引脚,而8253芯片却配备了这类引脚。3、错误。凡是8位以上并行接口芯片,都可以实现并行通信。4、错误。串行口也有对应的可编程外围接口芯片,例如8250、8251芯片。5、正确。6、正确。三、简答题1、虽然P1口和扩展并行口都是I/O接口,但它们之间是有差别的:(1)位置不同:P1口的锁存器位于片内SFR区,仅用片内8位地址就可选通;而凡是外扩的并行口,都位于片外数据存储空间(统一编址),一般要用片外16位地址信号来选通;特别是可编程I/O芯片,往往一片要占用好几个16位地址。(2)读写操作不同,对P1口的操作属于片内寄存器寻址方式,用MOV指令或位寻址方式完成;而扩展并行口一定要借助单片机引脚上的读/写信号(RD/WR)才能起作用,这样就必须使用MOVX指令。(3)片内的P1口是准双向口,所以在输入(读引脚)操作之前一定要先置“1”;而扩展并行口要么用简单I/O芯片,不附加任何预置动作,要么选用可编程芯片,进行复杂得多的初始化编程工作。若一定要与可编程芯片类比,则MOVP1,#0FFH指令可视为对P1口设置的“输入方式控制字”。2、若某单片机系统既需要扩展一定数量的并行I/O口(不超过16— 22位,)又需要扩展少量RAM(不超过256字节),还需要扩展一个定时器(不超过14位计数长度)的时候,选用8155芯片最为经济实用。选用8155芯片的另一个好处是,若不再扩展其他功能,则还可以省去地址锁存器芯片74LS273。3、8279芯片内含有输入缓冲器(用于接收键盘或传感器状态)和输出锁存器(用于控制16个LED的位选和段选),译码/编码器等,自带5位定时器和扫描电路,还有16个数据缓冲寄存器和8字节的RAM队列。它的最大特色是,片内自带定时器和扫描电路,可以独立完成对键盘的循环扫描以及对七段显示器的循环显示,完全不占用CPU时间,其设计特点是只用一个扫描电路就完成了对键盘的扫描和对七段显示器的扫描,让两种操作同步进行。四、阅读题设8255控制口地址为7FFFH,按本题要求控制字为:10010101B。编程如下:MOV DPTR,#7FFFH ;控制寄存器地址送DPTRMOV A,#95H ;控制字送AMOVX @DPTR,A   ;方式控制字送控制寄存器五、设计题1、8255A可以直接与MCS-51单片机进行接口,其连接图如图所示。8255A的A0、A1分别接地址总线的A0、A1,片选端接P2.7口,因此8255APA口地址为7FFCH、PB口地址为7FFDH、PC口地址为7FFEH、控制口地址为7FFFH。   2、74LS164是8位并行输出串行移位寄存器,由两片74LS164扩展两个并行输出口的路如图所示,图中串行口的数据通过RXD(P3.0)引脚加到第一个74LSl64的输入端,该74LS164的最后一位输出又作为第二个74LS164的输入。串行口输出移位时钟通过TXD(P3.1)引脚加到74LSl64时钟端,作为同步移位脉冲,其波特率固定为fosc/12。P1.2用作复位脉冲,可在需要时清除两个74LS164的数据,也可以将74LSl64的清零端直接接高电平。将RAM缓冲区30H、31H的内容经串行口由两片74LS164并行输出的子程序如下:START:MOV R7,#02H ;设置要发送的字节数MOV R0,#30H ;设置数据地址指针MOV SCON,#00H;设定串行口方式SEND:MOV A,@R0 ;取出一数MOV SBUF,A ;启动串行口发送WAIT:JNB TI,WAIT ;一帧数据未发送完,等待CLR TI;发送守毕,清零标志位INC  R0  ;修改数据指针DJNZ R7,SEND ;字节数未发送完,继续RET ;子程序返回 习题八一、填空题1、A/D转换器的作用是将          量转为        量;D/A转换器的作用是将         量转为        量。2、A/D转换器的两个最重要指标是            和           。3、不带输入数据锁存器的D/A转换器,CPU必须通过        器件与件D/A转换器传送数据。无三态输出功能的A/D转换器,应当通过         器件与CPU传送数据。4、从输入模拟量到输出稳定的数字量的时间间隔是A/D转换器的技术指标之一,称为           。5、若某8位D/A转换器的输出满刻度电压为+5V,则该D/A转换器的分辨率 为                 V。二、判断说明题(判错请说明理由)1、当输入全为“1”时,输出电压与理想值之间的误差,称为D/A转换器的满刻度误差。(   )2、当输出全为“1”时,输入电压与理想输入量之差,称为A/D转换器的满刻度误差。(   )3、输出的数字量变化一个相邻的值所对应的输入模拟量的变化值称为D/A转换器的分辨率。(    )4、输出模拟量的最小变化量称为A/D转换器的分辨率。5、“转换速度”这一指标仅适用于A/D转换器,D/A转换器可以忽略不计转换时间。6、“数字量”与“开关量”的含义没有什么区别。7、D/A转换器可以直接与单片机的三总线相连。8、ADC0809可以利用“转换结束”信号EOC向CPU发出中断请求。三、简答题1、单片机用于外界过程控制中,为何要进行A/D、D/A转换?2、数字通道接口和模拟通道接口的主要区别有哪些?3、请分析A/D转换器产生量化误差的原因。具有8位分辨率的A/D转换器,当输入0~5V电压时,其最大量化误差是多少?4、A/D转换接口中采样保持电路的作用是什么?省略采样保持电路的前提条件是什么?四、分析题拟将A/D和D/A转换器用于数字音频技术。例如先把人的声音写入EPROM芯片,然后在需要时送到喇叭上播放。试分析实现该功能的设计思路(画出方框图)和技术要点。 五、设计题根据图8-1所示单缓冲方式的D/A转换接口电路,试编写两个程序,分别使DAC0832输出负向锯齿波和15个正向阶梯波。  习题八 答案一、填空题1、模拟、数字、数字、模拟。    2、转换速度、转换精度(或分辨率)。 3、锁存或寄存、三态。4、转换速度。    5、5/255≈0.0196V(或19.6mV)。二、判断说明题1、正确。   2、正确。     3、错误。这是A/D转换器分辨率的定义。 4、错误。这是D/A转换器分辨率的定义。     5、不一定。D/A的转换时间忽略与否,要看器件指标与微机系统指令执行速度的相对快慢。   6、错误,有区别。“开关量”仅仅是布尔量(1bit),而数字量常为8bit以上。   7、不一定。片内带锁存的D/A转换器才可以直接与单片机的3总线相连。   8、正确。三、简答题1、微型计算机只能处理数字形式的信息,但是在实际工程中大量遇到的是连续变化的物理量。例如温度、压力、流量、光通量、位移量以及连续变化的电压、电流等。对于非电信号的物理量,必须先由传感器(transducer)进行检测,并且转换为电信号,然后经过放大器放大为0~5V电平的模拟量。所以必须加接模拟通道接口,以实现模拟量和数字量之间的转换。A/D(模/数)转换就是把输入的模拟量变为数字量,供微型计算机处理;而D/A(数/模)转换就是将微型计算机处理后的数字量转换为模拟量输出。2、区别1:数字接口的输入和输出均为数字量,而模拟接口的输入和输出却必有一方为模拟量。区别2:模拟通道接口电路包含两部分:除了数字量和模拟量的转换电路之外,还必须配备数字通道接口。但数字通道就没这么复杂。之所以在模拟通道接口中还要配备数字通道接口,是因为纯粹的A/D转换器和D/A转换器的输入/输出信号是动态变化的,无法与单片机的时序匹配。3、因为A/D转换器的输入是连续信号,而输出是离散信号(数字量)。当输入的模拟信号变化很微小时,输出的数字量却不敏感,仍然保持不变。对于8位A/D转换器,实际满量程电压变5V,则其量化单位(LSB)为5/255≈0.0196v,考虑到A/D转换时会进行4舍5入处理,所以最大量化误差为±1/2LSB,即0.0098V或9.8mV。4、A/D转换接口中“采样保持电路”的作用是:能把一个时间连续的信号变换为时间离散的信号,并将采样信号保持一段时间。 当外接模拟信号的变化速度相对于A/D转换速度来说足够慢,在转换期间内可视为直流信号的情况下,可以省略采样保持电路。四、分析题技术路线:让人声通过话筒输入到A/D转换器,转为数字量后进入单片机,写入E-PROM芯片保存。需要播放时,可将EPTOM中的数字信息经D/A转换器变为模拟音频输出到喇叭上。示意图如图所示。          技术要点为:①逼真度,这涉及到采样保持电路、转换频率、分辨率等。②信息容量,涉及到单片机的数据存储器以及EPTOM能保存多长时间的信息。与逼真度指标相互矛盾,需要协调。五、设计题根据所给电路图可做出如下分析:①DAC0832的片选信号只用到地址线A0,且两级缓冲器同时有效,都由单片机的WR信号控制。这时控制动作就变得十分简单,任何时候,只要将A0置“0”并附加片外的“写”动作即可启动DAC工作。②由于DAC转换速度快于一条指令的执行速度,所以不必考虑等待转换完毕的时间。输出负向锯齿波的程序为:MOVR0,#FEH       ;设定能让A0=0的DAC地址MOVA,#0FFH       ;从最高数字量开始转换LOOP: MOVX@R0,A;让A0=0且WR有效,送出数字量,启动DAC工作DECA                  ;数字量递减,形成负向波形LCALLDELAY    ;适当延时 SJMPLOOP          ;循环往复,产生一系列的负向锯齿波DELAY:……                ;略RET15个正向阶梯波,即将00H—FFH分为16个等级,以形成15个台队。此时数字递增幅度要加大为每次增16(或10H),对应程序为:MOV    R0,#FEH       ;设定能让A0=0的DAC地址CLR    A             ;数字量单元置初值UP:   MOVX   @R0,A ;让A0=0且WR有效,送出数字量,启动DAC工作ADD    A,#10H        ;每次转换的数字量增加10H,形成大台阶LCALL  DELAY          ;适当延时SJMP       UP         ;循环往复,产生一系列大阶梯波DELAY:……                        ;(略)RET'