题库(单片机本科_题库)_第1页
题库(单片机本科_题库)_第2页
题库(单片机本科_题库)_第3页
题库(单片机本科_题库)_第4页
题库(单片机本科_题库)_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、1、堆栈指针 SP 的作用是( ) 。A 指示堆栈的栈底 B 指示堆栈的栈顶 C 指示下一条将要执行指令的地址 D 指示中断返回的地址【答案】:B2、下列指令中,不影响堆栈指针的指令是() 。A RET B JB bit,relC LCALL addr16 D RETI【答案】:B3、定时器 T1 的中断入口地址是(1) ,从该地址开始一般可(2) 。A 0003H B 000BH C 001BH D 0013H E 连续存放中断服务程序 F 存放转移指令【答案答案】:(1)C (2)F4、定时器 T0 的溢出标志 TF0,在 CPU 响应中断后( ) 。A 由软件清零 B 由硬件清零 C 随

2、机状态 D AB 都可以【答案答案】:B5、在进行串行通信时,若两机的发送与接收可以同时进行,则称为( ) 。A 半双工传送 B 单工传送 C 双工传送 D 全双工传送【答案答案】:D6、扩展存储器时要加锁存器 373,其作用是( ) 。A 锁存寻址单元的低八位地址 B 锁存寻址单元的数据C 锁存寻址单元的高八位地址 D 锁存相关的控制和选择信号【答案】:A7、8031 定时/计数器共有四种操作模式,并由 TMOD 寄存器中 M1 M0 的状态决定,当 M1 M0 的状态为 00 时,定时/计数器被设定为( )A13 位定时/计数器 B16 位定时/计数器C自动重装 8 位定时/计数器 DT0

3、 为 2 个独立的 8 位定时/计数器,T1 停止工作【答案答案】:A8、下列说法正确的是:( )A各中断发出的中断请求信号,都会标记在 MCS51 系统的 IE 寄存器中。B各中断发出的中断请求信号,都会标记在 MCS51 系统的 TMOD 寄存器中。C各中断发出的中断请求信号,都会标记在 MCS51 系统的 IP 寄存器中。D各中断发出的中断请求信号,都会标记在 MCS51 系统的 TCON 与 SCON 寄存器中。 【答案答案】:D9、PC 的值是( )A当前正在执行指令的前一条指令的地址B当前正在执行指令的地址C当前正在执行指令的下一条指令的地址 D控制器中指令寄存器的地址【答案答案】

4、:C10、MCS-51 单片机在访问外部数据存储器时,其地址指针可采用( )A.DPTR B.PC C.PSW D.SP【答案答案】:A11、MCS-51 单片机在正常运行程序时 RST/VPD 引脚应为( )A.高电平 B.低电平 C.脉冲输入 D.高阻态【答案答案】:B12、8051 单片机有 ( )中断源。A.3 个 B.4 个 C.5 个 D.6 个【答案答案】:C13、要用传送指令访问 MCS-51 程序存储器,它的指令操作码助记符应是( )A.PUSH B.MOV C.MOVX D.MOVC【答案答案】:D14、用 MCS-51 串行口扩展并行 I/O 口,串行口工作方式应选择(

5、)A.方式 0 B.方式 1 C.方式 2 D.方式 3【答案答案】:A15、判断是否溢出时用 PSW 的(1)标志位,判断是否有进位时用 PSW 的(2)标志位。ACY BOV CP DRS0 ERS1 【答案答案】:(1)B (2)A16、在运用仿真系统调试程序时,当要观察子程序内部指令的执行结果时,通常采用( )调试方法。A单步调试(F8)B跟踪调试(F7) C快速运行到光标处调试(F4) D断点调试(F2)E连续运行调试(F9) 【答案答案】:B17、当单片机从 8155 接口芯片内部 RAM 的 20H 单元中读取某一数据时,应使用( )类指令。A MOV A,20H BMOVX A

6、,Ri C MOVC A,A+DPTR DMOVX A,DPTR【答案答案】:B18、当串行口向单片机的 CPU 发出中断请求时,若 CPU 允许并接受中断请求时,程序计数器 PC 的内容将被自动修改为( ) 。A0003H B000B C0013H D001BH E0023H【答案答案】:E19、子程序的返回和中断响应过程中的中断返回都是通过改变 PC 的内容实现的,而 PC 内容的改变是( )完成的。A通过 POP 命令 B通过 MOV 指令 C通过 RET 或 RETI 指令 D自动【答案答案】:C20、单片机复位后,SP、PC、I/O 口的内容为( )ASP = 07H PC = 00

7、H P0 = P1 = P2 = P3 = FFHBSP = 00H PC = 0000H P0 = P1 = P2 = P3 = 00HCSP = 07H PC = 0000H P0 = P1 = P2 = P3 = FFHDSP = 00H PC = 00H P0 = P1 = P2 = P3 = 00H 【答案答案】:C21、8031 定时/计数器共有四种操作模式,并由 TMOD 寄存器中 M1 M0 的状态决定,当 M1 M0 的状态为 10 时,定时/计数器被设定为( )A13 位定时/计数器 B16 位定时/计数器C自动重装 8 位定时/计数器 DT0 为 2 个独立的 8 位定时

8、/计数器,T1 停止工作【答案答案】:C22、8031 有四个工作寄存器区,由 PSW 状态字中的 RS1、RS0 两位的状态来决定,单片机复位后,若执行 SETB RS1 指令,此时只能使用( )区的工作寄存器。 A0 区 B1 区 C2 区 D3 区 【答案答案】:C23、在 MCS-51 单片机中,当有压入或弹出堆栈操作时,SP 的内容将随之增大或减小;程序计数器 PC 的内容将始终指示下一条将要执行指令的地址,所以只要改变 PC 的内容将改变程序的运行路径。SP 的内容与 PC 的内容( ) 。 A都是 8 位地址 B都是 16 位地址 C位数相同 D位数不同【答案答案】:D24、MC

9、S51 单片机的数据线是( )位。A4 B.8C. 16D.32【答案答案】:B25、MCS51 单片机地址总线是( )位。A4 B.8C. 16D.32【答案答案】:D26、MCS51 单片机可寻址范围( ) 。A0-1KB B.0-16KBC. 0-32KBD.0-64KB【答案答案】:D27、定时器/计数器工作在方式 0 时,计数器为( ) 。A8 位重装载 B.13 位C. 16 位D.8 位【答案答案】:C28、MCS51 单片机引脚 ALE 的作用( ) 。A地址锁存控制信号 B. 内外程序存储器选择信号C. 扩展数据存储器读选通信号D. 扩展数据存储器写选通信号【答案答案】:A2

10、9、MCS51 单片机的堆栈区应建立在( ) 。A片外数据存储器 B. 片内数据存储器低 128 字节单元C. 程序存储器D.片内数据存储器高 128 字节单元【答案答案】:B30、访问外部 RAM 的指令是( ) 。AMOV DPTR, A B. MOVA, R0C. MOVX DPTR, AD. MOVC A, A+PC【答案答案】:C31、访问 ROM 的指令是( ) 。AMOV DPTR, A B. MOVA, R0C. MOVX DPTR, AD. MOVC A, A+PC【答案答案】:D32、8051 与 8751 的区别是:A内部数据存储但也数目的不同B内部数据存储器的类型不同C

11、内部程序存储器的类型不同D内部的寄存器的数目不同【答案答案】:C二、填空题二、填空题33、8051 单片机的内部硬件结构包括:CPU、 (1) 、 (2) 、和定时器/计数器以及(3)等部件,这些部件通过(4)相连接。【答案答案】:(1)存储器(2)I/O 端口(3)中断系统(4)总线34、在读外部数据存储器时,CPU 执行的指令是(1) ,同时(2)引脚输出低电平。【答案答案】:(1)MOVX A,DPTR 或 MOVX A,Ri(2)/RD 35、在 CPU 内部,反映程序运行状态或反映运算结果的特征寄存器是(1) ,8 位寄存器 (2)能自动加 1 或减 1,PC 的值是(3) 。【答案

12、答案】:(1)PSW(2) SP(3) 下一条将要执行指令的地址36、当扩展外部存储器或 I/O 口时,P0 口用作(1)和(2) 。【答案答案】:(1)传输 8 位数据 (2) 提供低八位地址,与 P2 一起组成十六位地址37、8051 有四个工作寄存器组,每一组里都有 R0-R7 八个工作寄存器,用(1)和(2)选定一个寄存器组。【答案答案】:(1)RS1(2) RS038、 (1)是时序中的最大时间单位,它一般由若干个机器周期组成。不同的指令,所需要的机器周期数也不相同,指令的机器周期数越少,执行的速度越(2) 。【答案答案】:(1)指令周期(2) 快39、8051 的中断源有(1) 、

13、 (2) 、 (3) 和外部中断源/INT0 、/INT1。外部中断/INT1 的中断入口地址为 (4)。【答案答案】:(1)定时器溢出中断源 T0(2) T1(3) 串行口中断源(4) 0013H40、Intel 27128 是容量为(1)的存储器,它有 8 条数据线, (2)条地址线, 是(3)线。【答案答案】:(1)16KB(2) 14(3) 片选信号线41、CPU 采用中断的好处是(1)和(2) 。【答案答案】:(1)提高 CPU 的工作效率(2) 提高对实时数据的处理时效42、Intel 8155 可扩展三种资源,分别为 3 个 I/O 并行口、 (1)和(2) 。【答案答案】:(1

14、)256BRAM (2) 1 个定时器/计数器43、若 IP=00010100B,则优先级最高者为(1) ,最低者为(2) 。【答案答案】:(1)外部中断源 INT1(2) 定时器溢出中断源 T144、8051 单片机有(1)个定时计数器,可以设定为(2)种工作方式。【答案答案】:(1)2 (2)445、MCS-51 单片机的 P0P3 口的第一功能均是(1),其中(2)既可传输数据也可传输地址, (3)一起组成十六位地址,(4)的每一位都具有第二引脚功能。【答案答案】:(1)I/O 口(2)P0(3)P2(4) P346、(1)的值是晶振频率的倒数,设单片机时钟采用 12MHz 晶体,计算指

15、令:MUL AB 的执行时间为(2)。【答案答案】:(1)机器周期(2)4 微秒47、MCS-51 系统复位后,堆栈寄存器 SP 的初始值是(1) ,在堆栈区中是按(2)原则存取数据的。【答案答案】:(1)07H(2)先进后出/后进先出48、MCS-51 单片机的引脚的作用(1) 。_ PSEN【答案答案】:(1)程序存储器允许输出控制49、对于无内部 ROM 型单片机,引脚应接(1)电平。_ EA【答案答案】:(1)低50、MCS-51 单片机一个机器周期占(1)个时钟周期,如果采用 6MH 晶振,一个机器周期占用(2)微秒。【答案答案】:(1)12(2)251、当 C/=0 定时器工作在(

16、1)方式,C/=1 定时器工作在(2)方式。- T- T【答案答案】:(1)定时器(2)计数器52、在寄存器间接寻址方式中, “间接”体现在指令中寄存器的内容不是操作数,而是操作数的(1) 。答案答案】:(1)地址53、机器语言指以二进制形式表示的计算机指令;在单片机中,以(1)形式表示的计算机指令就是汇编语言。CE【答案答案】:(1)助记符54、MCS-51 单片机指令系统共有 7 种寻址方式,其中 MOV A,#DATA 为(1)寻址;MOV A, Rn 为 (2)寻址;MOV C, bit 为(3)寻址。【答案答案】:(1)立即寻址(2)寄存器寻址(3)位寻址55、MCS-51 单片机指

17、令系统共有 7 种寻址方式,其中 MOVC A,A+PC 为(1)寻址;SJMP rel (2)寻址。【答案答案】:(1)基址加变址寄存器间接 (2)相对寻址56、8031 的可编程定时/计数器,其中定时作用是指对单片机(1)脉冲进行计数,而计数器作用是指对单片机(2)脉冲进行计数。【答案答案】:(1)内部(2)外部57、在基址加变址寻址方式中,以(1)作变址寄存器,以(2)或(3)作基址寄存器。【答案答案】:(1)累加器 A(2)DPTR(3)PC58、在 MCS-51 中,PC 和 DPTR 都用于提供地址,但 PC 是为了访问(1)存储器提供地址,而 DPTR 是为访问(2)存储器提供地

18、址。【答案答案】:(1)程序(2)数据三、简答题三、简答题59、如果采用晶振的频率为 3MHz,定时器/计数器工作方式 0、1、2 下,其最大的定时时间为多少?解答:因为机器周期,)(410312126sfTOSCcy所以定时器/计数器工作方式 0 下,其最大定时时间为;)(192. 81042261313msTTCMAX同样可以求得方式 1 下的最大定时时间为 262.144ms;方式 2 下的最大定时时间为1024ms。60、定时器/计数器的工作方式 2 有什么特点?适用于哪些应用场合?答:定时器/计数器的工作方式 2 具有自动恢复初值的特点,适用于精确定时,比如波特率的产生。61、一个定

19、时器的定时时间有限,如何实现两个定时器的串行定时,来实现较长时间的定时?答:方式一,在第一个定时器的中断程序里关闭本定时器的中断程序,设置和打开另一个定时器;在另一个定时器的中断程序中关闭本定时中断,设置和打开另一个定时器。这种方式的定时时间为两个定时器定时时间的和。方式二,一个作为定时器,在定时中断后产生一个外部计数脉冲(比如由 P1.0 接INT0 产生) ,另一个定时器工作在计数方式。这样两个定时器的定时时间为一个定时器的定时时间乘以另一个定时器的计数值。62、串行数据传送的主要优点和用途是什么?答:串行数据传送的主要优点是硬件接口简单,接口端口少(2 个) 。主要用于多个单片机系统之间

20、的数据通信。63、以方式一为例简述串行口接收和发送数据的过程。答:发送:数据位由 TXT 端输出,发送 1 帧信息为 10 为,当 CPU 执行 1 条数据写发送缓冲器 SBUF 的指令,就启动发送。发送开始时,内部发送控制信号/SEND 变为有效,将起始位想 TXD 输出,此后,每经过 1 个 TX 时钟周期,便产生 1 个移位脉冲,并由 TXD 输出 1 个数据位。8 位数据位全部完毕后,置 1 中断标志位 TI,然后/SEND 信号失效。接收:当检测到起始位的负跳变时,则开始接收。接受时,定时控制信号有 2 种,一种是位检测器采样脉冲,它的频率是 RX 时钟的 16 倍。也就是在 1 位

21、数据期间,有 16 个采样脉冲,以波特率的 16 倍的速率采样 RXD 引脚状态,当采样到 RXD 端从 1 到 0 的跳变时就启动检测器,接收的值是 3 次连续采样,取其中 2 次相同的值,以确认是否是真正的起始位的开始,这样能较好地消除干扰引起的影响,以保证可靠无误的开始接受数据。64、串行口有几种工作方式?有几种帧格式?各种工作方式的波特率如何确定?答:串行口有 3 种工作方式:方式 0、方式 1、方式 2、方式 3;有 3 种帧格式,方式 2 和3 具有相同的帧格式;方式 0 的发送和接收都以 fosc/12 为固定波特率,方式 1 的波特率=2SMOD/32定时器 T1 的溢出率方式

22、 2 的波特率=2SMOD/64fosc方式 3 的波特率=2SMOD/32定时器 T1 的溢出率65、为什么定时器/计数器 T1 用做串行口波特率发生器时,采用方式 2?若已知时钟频率、通讯波特率,如何计算其初值?解答:因为定时器/计数器在方式 2 下,初值可以自动重装,这样在做串口波特率发生器设置时,就避免了重装参数的操作。已知时钟频率、通讯波特率,根据公式:,计)256(12322XfOSCSMOD波特率算出初值。66、为什么 MCS-51 串行口的方式 0 帧格式没有起始位(0)和停止位(1)?方式 0 的波特率如何确定?主要用途?解答:串行口的方式 0 为同步移位寄存器输入输出方式,

23、常用于外接移位寄存器,以扩展并行 I/O 口,一般不用于两个 MCS-51 之间的串行通信。该方式以 fosc/12 的固定波特率从低位到高位发送或接受数据。67、在 MCS-51 单片机系统中,外接程序存储器和数据存储器共 16 位地址线和 8 位数据线,为何不会发生冲突?解答:因为控制信号线的不同:外扩的 RAM 芯片既能读出又能写入,所以通常都有读写控制引脚,记为 OE 和 WE。外扩RAM 的读、写控制引脚分别与 MCS-51 的 RD 和 WR 引脚相连。外扩的 EPROM 在正常使用中只能读出,不能写入,故 EPROM 芯片没有写入控制引脚,只有读出引脚,记为 OE,该引脚与 MC

24、S-51 单片机的 PSEN 相连。68、I/O 接口和 I/O 端口有什么区别?I/O 接口的功能是什么?解:I/O 端口简称 I/O 口,常指 I/O 接口电路中具有端口地址的寄存器或缓冲器。I/O 接口是指单片机与外设间的 I/O 接口芯片。I/O 接口功能:一.实现和不同外设的速度匹配;二.输出数据缓存;三.输入数据三态缓冲。69、常用的 I/O 接口编址有哪两种方式?它们各有什么特点?MCS-51 的 I/O 端口编址采用的是哪种方式?解:一.独立编址方式:独立编址方式就是 I/O 地址空间和存储器地址空间分开编址。独立编址的优点是 I/O 地址空间和存储器地址空间相互独立,界限分明

25、。但是,却需要设置一套专门的读写 I/O 的指令和控制信号。二.统一编址方式:这种编址方式是把 I/O 端口的寄存器与数据存储器单元同等对待,统一进行编址。统一编址的优点是不需要专门的 I/O 指令,直接使用访问数据存储器的指令进行 I/O 操作,简单、方便且功能强大。MCS-51 单片机使用的是 I/O 和外部数据存储器 RAM 统一编址的方式。70、I/O 数据传送有哪几种传送方式?分别在哪些场合下使用?解:一.同步传送方式:同步传送又称为有条件传送。当外设速度可与单片机速度相比拟时,常常采用同步传送方式,最典型的同步传送就是单片机和外部数据存储器之间的数据传送。二.查询传送方式:查询传送

26、方式又称为有条件传送,也称异步传送。单片机通过查询得知外设准备好后,再进行数据传送。异步传送的优点是通用性好,硬件连线和查询程序十分简单,但是效率不高。为了提高单片机的工作效率,通常采用中断方式。三.中断传送方式:中断传送方式是利用 MCS-51 本身的中断功能和 I/O 接口的中断功能来实现 I./O 数据的传送。单片机只有在外设准备好后,发出数据传送请求,才中断主程序,而进入与外设进行数据传送的中断服务程序,进行数据的传送。中断服务完成后又返回主程序继续执行。因此,采用中断方式可以大大提高单片机的工作效率。71、MCS-51 的并行接口的扩展有多种方式,在什么情况下,采用扩展 8155H

27、比较合适?什么情况下,采用扩展 8255A 比较适合?解:8255A 具有 3 个 8 位的并行 I/O 口,3 种工作方式,可通过编程改变其功能,因而使用灵活方便,通用性强,可作为单片机与多种外围设备连接时的中间接口电路。8155H 芯片内包含有 256B 的 RAM 存储器(静态) ,2 个可编程的八位并行口 PA 和 PB,1 个可编程的 6 位并行口 PC,以及 1 个 14 位减法定时器/计数器。所以它经常用于单片机的外围接口芯片。四、程序阅读题四、程序阅读题72、已知:(60H)26H, (61H)69H。阅读下列程序段,填空并说明此程序段完成什么功能? CLRCMOVA,60HA

28、DD A,61H ;CY= (1) , A =(2) DAA MOV62H,A ;(62H)(3)此程序段完成的功能:(4) 。【答案答案】:(1)0 (2)8FH(3)95H(4)计算十进制加法 69+26,结果置于 62H 单元中73、阅读下列程序段,填空并说明此程序段完成什么功能?ORG 1000H MOV R0, #80H MOV R7, #10H MOV A, #00HLOOP: ADD A, (1) INC R0 DJNZ R7, LOOP MOV B, #10H DIV (2) MOV 30H, A MOV 31H, B END此程序段完成的功能:(3)【答案答案】:(1)R0

29、(2)AB(3)将内部 RAM 连续 16 个单元内容的平均值送 30H 单元中(商)和 31H 单元中(余数)74、阅读下列程序段,填空并说明此程序段完成什么功能? MOV R2,05H MOV A,01H PUSH ACC PUSH 02H POP ACC ;A =(1) POP 02H ;(02H)=(2) 此程序段完成的功能:(3) 。【答案答案】:(1)05H(2)01H(3)交换 A 和 R2 中的内容75、假设 a、b 均小于 10,计算 c=a2+b2,其中 a 在 MDA 单元,b 在 MDB 单元,请把 c 存入内部 RAM 的 50H 单元。利用子程序完成如下,请阅读程序

30、并填空。ORG 1000H MDA DATA 20H MDB DATA 21H MOVA, MDA ACALL (1) MOV (2) , A MOV A, MDB ACALLSQR ADD A,R1 MOV (3) , A SJMP $SQR: MOV DPTR, (4) MOVC A, A+DPTR TABLE: DB 0,1,4,9,16,25,36,49,64,81 (5)END【答案答案】:(1)SQR (2)R1(3)50H(4)#TABLE(5)RET76、已知程序执行前有 A=02H,SP=52H, (51H)=FFH,(52H)=FFH。下述程序执行后:POPDPHPOPDP

31、LMOVDPTR,#4000HRLAMOVB,AMOVCA,A+DPTRPUSHAMOVA,BINCAMOVCA,A+DPTRPUSHARETORG4000HDB10H,80H,30H,50H,30H,50H请问:A=(1) ,SP=(2) , (51H)=(3) , (52H)=(4) ,PC=(5) 。【答案答案】:(1)50H (2)50H(3)30H(4)50H(5)5030H77、假定 A=83H, (R0)=17H, (17H)=34H,执行以下指令:ANLA,#17HORL17H,AXRLA,R0CPLA后,A 的内容为(1) 。【答案答案】:(1)0CBH78、如果 DPTR=

32、507BH,SP=32H, (30H)=50H, (31H)=5FH, (32H)=3CH,则执行下列指令后:POPDPHPOPDPLPOPSP则:DPH=(1) ,DPL=(2) ,SP=(3)【答案答案】:(1)3CH(2)5FH(3)4FH79、阅读下列程序段,填空并说明此程序段完成什么功能?MOVR1,#30H MOVA,#64HADDA,#27H DA A ; A =(1) MOVR1,A ; R1 = (2) 此程序段完成的功能:(3) 。【答案答案】:(1)91H(2)30H(3)计算十进制加法 64+27,结果置于 30H 单元中80、阅读下列程序段,填空并说明此程序段完成什么

33、功能?ORG 0100H MOV A, 5 MOV DPTR, #TAB MOVC A, (1) MOV P3, A ;P3=(2) TAB: DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, DB 92H, 82H, 0F8H, 80H, 90H SJMP $此程序段完成的功能:(3) 。 【答案答案】:(1)A+DPTR 91H(2)92H(3)送 5 的段码到 P3 口五、编程题五、编程题81、试编程将外部 RAM 中 0040H 单元里的第 0 位和第 5 位清 0,其余位变反。解:ORG 0050H MOV DPTR, #0040H MOVX A, DPTR ANL A

34、, #0DEH XRL A,#0DEH MOVX DPTR , A SJMP $END 82、利用循环程序求寄存器 R7 中 0 的个数,并存放在内存的 LENGTH 单元中。LENGTH单元地址为 20H。解:ORG 0050H LENGTH DATA 20H MOV LENGTH, #0 MOV A,R7 MOV R6,#8 LOOP: JB Acc.7,NEXT INC LENGTH NEXT: RL ADJNZ R6, LOOPSJMP $END83、要求每 0.08s 使内部寄存器 R5 实现自加 1(不需考虑计满溢出) 。假定单片机晶振频率为 6MHz,请使用 T1 编程实现。1)

35、采用哪种工作方式?为什么?2)计算定时器的初值3)请编写完整的程序。答:(1)单片机晶振频率为 6MHz,则机器周期2us方式 1 的最大定时时间655362us131072us 0.08s所以可以采用方式 1 定时。 (2)TC=M- 0.1s/2us65536400002553663C0H(3)主程序(共 6 分) ORG 0000H LJMP START ORG 001BH LJMP DONE ORG 0100HSTART: MOV R5,#0 MOV TMOD,#10H MOV TL0,#0C0H MOV TH0,#63H MOV IE,#88H SETB TR1 LOOP: AJMP

36、 LOOP;中断服务子程序ORG 0200HDONE: MOV TL0,#0C0H MOV TH0,#63H INC R5 RETIEND84、设变量 X 的值存放在内部 RAM 的 30H 单元中,编程求解下列函数式,将求得的函数值Y 存入 40H 单元。 X50 (X100) Y 0 (10X100)2X (X10)答: ORG 0100H MOV A, 30H CJNE A, #10, LOOP LOOP: JC LOOP2 CJNE A,#100,LOOP1 LOOP1: JNC LOOP3 MOV A,#0 SJMP EXIT LOOP2: RL A SJMP EXIT LOOP3:

37、 ADD A,#50 EXIT: MOV 40H, AEND85、试编写程序,查找在内部 RAM 的 30H50H 单元中是否有 0AAH 这一数据。若有,则将51H 单元置为“01H” ;若未找到,则将 51H 单元置为“00H” 。答:START:MOV R0,#30HMOV R2,#20HLOOP:MOV A,R0CJNEA,#0AAH,NEXTMOV 51H,#01HLJMPEXITNEXT:INCR0DJNZR2,LOOPMOV 51H,#00HEXIT:RET86、已知 8051 的时钟频率为 12MHz,端口线 P1 .0 接一个发光二极管,由定时器 0 控制,用于演示 0.5

38、秒钟亮、0.5 秒钟暗的效果。试编程实现之。答:定时 1s 时,10 个 50ms 就得到 0.5s 定时器 0 实现定时 50ms 的初值: TC = 2 - 50ms/1us = 15536 = 3CB0H ORG 0100H ;主程序 START: MOV TMOD, #01H MOV TH0, #3CH MOV TL0, #B0H MOV IE, #82H SETB TR0 MOV R0,#10LOOP: SJMP $ORG 000BH ;中断服务程序 AJMP BRT0ORG 0080HBRT0 : DJNZ R0,NEXT CPL P1.0 MOV R0,#10NEXT: MOV

39、TH0, #3CH MOV TL0, #B0H RETI END87、试编写程序,查找在内部 RAM 的 20H40H 单元中出现“00H”这一数据的次数。并将查找到的结果存入 41H 单元。答:START:MOV 41H,#0MOV R0,#20HMOV R2,#20HLOOP:MOV A,R0JNZNEXTINC41HNEXT:INCR0DJNZR2,LOOPRET88、采用定时器/计数器 T0 对外部脉冲进行计数,每计数 100 个脉冲后,T0 转为定时工作方式。定时 1ms 后,又转为计数方式,如此循环不止。假定 MCS-51 单片机的晶体振荡器的频率为 6MHz,请使用方式 1 实现

40、,要求编写出程序。答:ORG 0000HLJMPMAINORG 000BHLJMPIT0PMAIN:MOV TMOD,#06H;定时器/计数器 T0 为计数方式 2MOV TL0,#156;计数 100 个脉冲的初值赋值MOV TH0,#156SETBGATE;打开计数门SETBTR0;启动 T0,开始计数SETBET0;允许 T0 中断SETBEA;CPU 开中断CLRF0;设置下一轮为定时方式的标志位WAIT:AJMPWAITIT0P:CLREA;关中断JBF0,COUNT;F0=1,转计数方式设置MOV TMOD,#00H;定时器/计数器 T0 为定时方式 0MOV TH0,#0FEH;

41、定时 1ms 初值赋值MOV TL0,#0CHSETBEARETICOUNT:MOV TMOD,#06HMOV TL0,#156SETBEARETI89、编写程序,要求使用 T0,采用方式 2 定时,在 P1.0 输出周期为 400s,占空比为10:1 的矩形脉冲。系统采用 6MHz 晶振。解答:根据题意,从 P1.0 输出的矩形脉冲的高低电平的时间为 10:1,则高低电平的时间分别为 363.63s 和 36.37s。系统采用 6MHz 晶振的话,因此高低电平输出sTcy2取整,则约为 364s 和 36s。编写程序如下:ORG 0000HLJMPMAINORG 000BHLJMPIT0PM

42、AIN:MOV TMOD,#02H;定时器/计数器 T0 为定时方式 2MOV TL0,#4AH;定时 364s 初值赋值SETBTR0;启动 T0,开始计数SETBET0;允许 T0 中断SETBEA;CPU 开中断SETBP1.0WAIT:AJMPWAITIT0P:CLREACLRP1.0;关中断MOV R0,#9DLY:DJNZR0,DLY;延时 26sMOV TL0,#4AH;定时 364s 初值赋值SETBP1.0SETBEARETI90、将 4100H 及 4101H 单元中两个不带符号的数相加送到 4102H 单元中。解答:START: MOV DPTR, #4100H MOVX

43、 A, DPTR MOV B, A INC DPTR MOVX A, DPTR ADD A, B INC DPTR MOVX DPTR, A END91、用循环程序设计将外部 RAM2000H-200FH 单元中的内容分别加 1,结果送回到该单元中。解答:ORG 0000HSTART:MOV DPTR, #2000HMOV R1,#0FHLOOP1:MOVX A, DPTRINC A MOVX DPTR,A INC DPTR DJNZ R1,LOOP1END92、用分支程序设计法根据 R1 内容(00H;01H;02H;03H)将外部 RAM1000H 单元置成10H;20H;30H;40H。

44、解答:ORG 0000HSTART:MOV DPTR,#0008HMOV R1, #00HMOV A,R1RLAJMP A+DPTRAJMPA1AJMPA2AJMPA3AJMPA4A1:MOV A,#10HAJMPL1A2:MOV A,#20HAJMPL1A3:MOV A,#30HAJMPL1A4:MOV A,#40HL1:MOV DPTR,#1000HMOVXDPTR,AEND93、若内部 RAM20H 单元的最高位为 1,将累加器置成 FFH,若为零则将累加器置成 00H。解答:ORG 0000HSTART: JB 20H.7TB1MOVA,#00HAJMPTB2TB1:MOVA,#0FF

45、HTB2:RETEND94、编写程序,采用 8255A 的 C 口按位置位/复位控制字,将 PC7 置 0,PC4 置 1, (已知8255A 各端口的地址为 7FFCH-7FFFH) 。解: ORG0000HMAIN:MOVDPTR,#7FFFH ;控制字寄存器地址送 DPTRMOVA,#0EH;将 PC7 置 0MOVXDPTR,AMOVA,#09H;将 PC4 置 1MOVXDPTR,AEND95、假设 8155H 的 TIMERIN 引脚输入的脉冲频率为 1MHz,请编写出在 8155H 的 TIMEROUT引脚上输出周期为 10ms 的方波的程序。解:START: MOVDPTR,#

46、7F04H;指针指向定时器低 8 位MOVA,#64H;送初值给 AMOVXDPTR,A;初值送给低 8 位INCDPTR;指向高 8 位MOVA,#40H;定时器方波输出MOVXDPTE,AMOVDPTR,#7F00H;指向命令/状态口MOVA,#0C2H;设定控制字MOVXDPTE,A;启动定时器END六、系统扩展题六、系统扩展题96、画出 8031 和 2764 的连接图,要求用线选法,基本地址范围为 4000H5FFFH。(1)请画出具体的连接线地址线、数据线和控制线;(2)根据连接图,指出图中 2764 的基本地址,有无重叠地址?为什么?若有重叠地址,请写出重叠地址;(3)请编程将外部 ROM 地址为 4050H 单元中的内容传送到内部 RAM 地址为 20H 单元中。(1)74LS3732764 8031.8051(2)有。因为有引脚悬空

温馨提示

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

评论

0/150

提交评论