单片微型计算机C第讲(习题)_第1页
单片微型计算机C第讲(习题)_第2页
单片微型计算机C第讲(习题)_第3页
单片微型计算机C第讲(习题)_第4页
单片微型计算机C第讲(习题)_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、P28 1MCS51单片机的片内集成了哪些功能部件?各个功能部件的主要功能是什么?集成的功能部件和主要功能如表所示。序号部件功能1CPU执行指令,完成指令的功能2RAM程序运行过程中临时数据的存放位置3ROM存放程序和数据表格4中断系统中断的响应、优先级排队、屏蔽、中断服务等功能5定时器/计数器按给定的初值加1计数6串行口完成多机串行通信7并行口P0P3完成并行通信8SFR用于对CPU片内部件进行管理、控制和监视等。P29 5程序存储器的空间里,有5个单元时特殊的,这5个单元对应MCS51单片机的5个中断源的中断入口地址,请写出这些单元的地址,以及对应的中断源。对应的中断源,以及单元的地址如下

2、表所示。中断源入口地址外中断0(INT0)0003H定时器0(T0)000BH外中断1(INT1)0013H定时器1(T1)001BH串行口(UART)0023HP29 12内部RAM中,哪些单元可作为工作寄存器区,哪些单元可以进行位寻址,写出他们的字节地址。单元和所对应的功能如下表所示。功能地址范围第0组功能寄存器区00H07H第1组功能寄存器区08H0FH第2组功能寄存器区10H17H第3组功能寄存器区18H1FH可位寻址单元20H2FHP29 1616.下列说法正确的是_(A)程序计数器PC不能为用户编程时直接使用,因为它没有地址。(B)内部RAM的位寻址区,只能供位寻址使用,而不能供字

3、节寻址使用。(C)8031共有21个特殊功能寄存器,他们的位都是可用软件设置的,因此,是可以进行位寻址的。AP29 1717.PC的值是_(A)当前正在执行指令的前一条指令的地址。(B)当前正在执行指令的地址。(C) 当前正在执行指令的下一条指令的地址。(D) 控制器中指令寄存器的地址。CP53 11、判断以下指令的正误序号指令正误原因1MOV 28H,R2间接寻址只允许通用寄存器的R0和R12DEC DPTR不允许数据指针寄存器做自减1操作3INC DPTRDPTR可做自增操作4CLR R0只允许对累加器A进行清零操作5CPL R5只允许对累加器A进行取反操作6MOV R0,R1不允许通用寄

4、存器之间传值7PUSH DPTR仅允许字节数据入栈或出栈8MOV F0,C允许进位位向直接寻址位传送数据9MOV F0,ACC.3只允许进位位C与直接寻址位之间进行数据传送10MOVX A,R1允许片外RAM的间址方式向累加器传数11MOV C,30H允许进位位C与直接寻址位之间进行数据传送12RLC R0只允许对累加器A进行移位操作P53 1111.下列程序段的功能是什么_PUSH ACCPUSH BPOP ACCPOP B实现累加器A与寄存器B值互换的操作30H70H栈底XX HXX+1HXX+2HSP PUSH ACC PUSH B POP ACC POP BSPSP ACC=70H B

5、=30H设执行指令前,(A)=30H,(B)=70H P53 1212、已知程序执行前有A=02H,SP=52H,(51H)=FFH,(52H)=FFH。执行下列程序后,请问A、SP、(51H)、(52H),PC的值各为多少? POP DPHPOP DPLMOV DPTR,#4000HRL AMOV B,AMOVC A,A+DPTRPUSH ACCMOV A,BINC AMOVC A,A+DPTRPUSH ACCRETORG 4000HDB 10H,80H,30H,50H,30H,50H POP DPHPOP DPLMOV DPTR,#4000HRL AMOV B,AMOVC A,A+DPTR

6、PUSH ACCMOV A,BINC AMOVC A,A+DPTRPUSH ACCRETORG 4000HDB 10H,80H,30H,50H,30H,50H 02HAFFH栈底50H51H52HFFHFFHSPDPHDPLFFHPCSPSP40H00H04H04HB10HROM4000H80H4001H30H4002H50H4003H30H4004H50H4005H30H30H04H05H50H50H50H30H解答:A、SP、(51H)、(52H),PC的值各为多少?P54 1515.假设A=55H,R3=0AAH,在执行指令ANL A,R5后,A=_,R3=_。0AAH0101 0101

7、1010 1010AND0000 000000HP79 7 该题与P53第12题程序相同,仅数据略有差异,可参考其分析过程求其结果。 A=80H SP=40H (41H)=50H (42H)=80H PC=8050HP80 1010.试编写程序,查找在内部RAM的20H40H单元中出现00H这一数据的次数。并将查找的结果存入41H单元。20H?H?H21H内部RAM40H?H00H?=INC A查找下一个单元P80 1010.试编写程序,查找在内部RAM的20H40H单元中出现00H这一数据的次数。并将查找的结果存入41H单元。CLR AMOV R0,#20HCJNE R0,#00H,NEXT

8、INC AINC R0CJNE R0,#41H,LOOPMOV 41H,ALOOP:NEXT:SJMP $ENDP95 7 中断查询确认后,在下列单片机的运行情况中,能立即进行响应的是( )A.当前正在进行高优先级中断处理;B.当前正在执行RETI指令C.当前指令时DIV指令,且正处于取指令的机器周期D.当前指令时MOV A,R3DP95 8 8031单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把_的内容压入堆栈,已进行断点保护,然后把长调用指令的16地址送_,使程序转向_中的中断地址区。PCPCROM中断向量表P95 9 编写出外部中断1为跳沿触发的中断初始化程序。

9、 76543210TCONTF1TR1 TF0TR0IE1IT1IE0IT0字节地址:88H中断源入口地址外中断0(INT0)0003H定时器0(T0)000BH外中断1(INT1)0013H定时器1(T1)001BH串行口(UART)0023HORG 0000H SJMP $LJMP MAIN INT1:ORG 0013H RETILJMP INT1 ENDORG 0100HMAIN:SETB IT1;边沿触发 SETB EX1;开中断 SETB EA P112 1 如果采用的晶振的频率为12MHZ,定时器/计数器工作在方式0、1、2下,其最大的定时时间各为多少?p 晶振频率为12MHZ,则

10、机器周期为1us;p 方式0最大定时时间:1us*213=8192us=8.192msp 方式1最大定时时间:1us*216=65536us=65.536msp 方式2最大定时时间:1us*28=256us=0.256msP112 3 定时器/计数器做计数器模式使用时,对外界计数频率有何限制。 由于在计数的模式下,需要两个机器周期来确定一个负跳变,即需要24个振荡周期,故输入的计数脉冲的最高频率为振荡频率的1/24。P112 6 编写程序,要求使用T0,采用方式2定时,在P1.0输出周期为400us、占空比为10:1的矩形脉冲。 分析:所谓占空比,指输出脉冲中高低电平所占时间的比例。周期为40

11、0us,则高电平所占时间为363.64us,低电平为36.36us。 设系统晶振为6MHZ,机器周期频率为2us,则低电平计数值为18,高电平计数值为182。 低电平计数值太小,可考虑在中断处理程序中采用软件延时的方式。P112 6 编写程序,要求使用T0,采用方式2定时,在P1.0输出周期为400us、占空比为10:1的矩形脉冲。定时输出中断关中断,软件延时装入初值,重启中断忽略中断处理的延时,不允许T0自动重装程序 ORG 0000H LJMP MAIN ORG 000BH LJMP IT0INTMAIN:MOV TMOD,#02H MOV TL0,#4AH;定时364us初值 76543

12、210TMODGATEC/#TM1M0GATEC/#TM1M0字节地址:89HT1方式字段T0方式字段SETB TR0SETB ET0SETB EASETB P1.0SJMP $;等待计数值满程序IT0INT:CLR EA;关中断 CLR P1.0;置低电平 MOV R0,#9DLY:DJNZ R0,DLY;延时36us(9*2*2) MOV TL0,#4AH SETB P1.0 SETB EA;开中断 RETI ENDP131 3 帧格式为1个起始位、8个数据位和1个停止位的异步串行通信方式是方式_。 方式0为移位寄存器方式 方式1为不带校验位的异步通信方式 方式2和方式3的帧格式在方式1的

13、基础上增加了1位校验位。1P131 11 在晶体振荡器为11.0592MHZ,串行口工作于方式1,波特率为4800bit/s,写出用T1作为波特率发生器的方式控制字和计数初值。 分析: 串口在方式1下,其波特率为2SMOD/32*T1溢出率 T1作为波特率发生器,应该工作在方式2,才能持续不断的发出方波。 12/fosc*(256-TL1)为其计数周期,倒数即为溢出率。溢出时间P131 11 在晶体振荡器为11.0592MHZ,串行口工作于方式1,波特率为4800bit/s,写出用T1作为波特率发生器的方式控制字和计数初值。 取SMOD=0,代入数据,有 TL1=256-11.0592*106

14、/(32*12*4800)=256-6=250 将其转换成十六进制250=255-5=111-101=0FAH波特率1123222561foscTLSMODP131 11 在晶体振荡器为11.0592MHZ,串行口工作于方式1,波特率为4800bit/s,写出用T1作为波特率发生器的方式控制字和计数初值。 T1的方式控制字TMOD=0010,0000B 初值为0FAH 76543210TMODGATEC/#TM1M0GATEC/#TM1M0字节地址:89H 76543210SCONSM0SM1SM2RENTB8 RB8TIRI字节地址:98H综合举例1RS1 RS0 = 10时,R7所对应的R

15、AM地址为( )。28051内部有( )字节ROM,( )字节RAM。3 LJMP指令跳转空间最大可达到( ) 字节。4欲使P2口的低3位输出1,其它位不变,应执行指令( )58051有( )个中断源,( )个中断优先级。6定时器/计数器T0是( )(加或减)计数的。7串行口方式3发送的第9位数据要事先写入( )寄存器的第( )位。17H4K12864KORL P2,#07H52加 76543210SCONSM0SM1SM2RENTB8RB8TIRI字节地址:98HSCON3综合举例1计算机的硬件组成部分不包括( )。 ACPU B存储器C主板 DI/O设备2将1110 0110B转换成十六进

16、制数为( )。 A73H B74HCE6H DF6H3以下指令中,不正确的指令是( )。AMOV R0, R1 BMOV P1, #0FHCANL B, #0FH DDJNZ P1, relCCA综合举例4串行口工作在方式1,波特率为9600,则每秒钟可传送( )个字节A960 B1200C2400 D96005下列中断,需要软件与硬件共同作用才可以清除中断标志的是( ) A定时器中断 B边沿触发的外部中断 C串行口中断D电平触发的外部中断68051的晶振频率为12MHz时,T0的最大定时时间是( )。A256 us B1024 usC8192 us D65536 usADD综合举例7位地址2

17、0H位于字节地址( )。 A03H B04H C23H D24H8在中断服务程序中,至少应有一条( )。A传送指令 B中断返回指令C加法指令 D转移指令9在CPU内部,反映程序运行状态或反映运算结果的特征寄存器是( )。 APSW BPC CA DSPDBA综合举例1( ) 8051中所有的特殊功能寄存器都可以位寻址。2( ) RET与RETI指令对堆栈的操作不同。 3( )指令MOV A, R0的源操作数是采用寄存器间接寻址方式4( ) 8051单片机的复位信号是低电平有效。5( ) 字节数多的指令不一定执行时间长。6( ) PC中存放的是正在执行指令的下一条指令的地址。7( ) T0在使用前和溢出后,必须用软件对其赋初值才能正常工作。8( ) 8051串行口的接收缓冲器是只读的。综合举例说明下面程序段的功能PROG:CLR CMOV R0,#40H MOV R1,#50H MOV R2,#04H LOOP1:MOV A,R0 ADDC A,R1 MOV R0,AINC

温馨提示

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

评论

0/150

提交评论