单片机原理第四章作业

合集下载

单片机原理及应用第四章课后题答案

单片机原理及应用第四章课后题答案
SETB
EA
;开总允许中断
LP1:SJMP
LP1
;等待定时器中断
TT0:PUSH
PSW
INC 30H
MOV R7, 30H CJNE R7, #20, LP2 CPL A
MOVX @DPTR, A MOV 30H, #00H
LP2:MOV TL0,#0B0H; T0赋初值
MOV TH0,#3CH
POP PSW SETB TR0 RETI END
数据传输可达千米以上。
RS-232的双机通信接口电路如图4.26-1所示。
图4.26-1 4.26题硬件连接电路图
RS-422和RS-485的双机通信接口电路如图4.26-2所示。
图4.26-24.26题硬件连接电路图
31•何谓看门狗”?它如何实现对系统程序的监控?
解:
看门狗(WDT)”,也称为程序监视定时器。WDT的作用是通过不断监视程序每周
期的运行事件是否超过正常状态下所需要的时间,从而判断程序是否进入了 死循环”并对
进入 死循环”的程序作出系统复位处理。
在程序中设置适当的指令,清WDT,就可监视微处理器的工作。例如在主程序开始时, 将WDT置位,如果主程序执行过程中产生死循环,就无法清WDT,超过WDT的定时时
间时,WDT就会对微处理器发出复位信号。从而实现对系统程序的监控。
管轮流发光各1S不断循环,试画出包括地址译码器、8255A或8155与发光管部分的接口
电路图,并编写控制程序。
解:
使用8255A,电路连接图如图4.25所示。
图4.254.25题硬件连接电路图
其中,PB0〜PB3接红色发光二极管,PB4〜PB7接绿色发光二极管。设MCS-51单片 机主频为12MHz。

完整word版第4章单片机原理课后答案

完整word版第4章单片机原理课后答案

习题1. C51特有的数据类型有哪些?答:C51特有的数据类型有位型bit、特殊位型sbit、8位特殊功能寄存器型sfr和16位特殊功能。

sfr16寄存器型2. C51中的存储器类型有几种,它们分别表示的存储器区域是什么?答:C51中的存储器类型有6种,分别表示的存储器区域是:data:直接寻址的片内RAM低128B,访问速度快bdata:片内RAM的可位寻址区(20H~2FH),允许字节和位混合访问idata:间接寻址访问的片内RAM,允许访问全部片内RAMpdata:用Ri间接访问的片外RAM低256Bxdata:用DPTR间接访问的片外RAM,允许访问全部64KB片外RAMcode:程序存储器ROM 64KB空间3. 在C51中,bit位与sbit位有什么区别?答:bit位类型符用于定义一般的位变量,定义的位变量位于片内数据存储器的位寻址区。

定义时不能指定地址,只能由编译器自动分配。

sbit位类型符用于定义位地址确定的位变量,定义的位变量可以在片内数据存储器位寻址区,也可为特殊功能寄存器中的可位寻址位。

定义时必须指明其位地址,可以是位直接地址,也可以是可位寻址的变量带位号,还可以是可位寻址的特殊功能寄存器变量带位号。

4. 在C51中,通过绝对地址来访问的存储器有几种?答:绝对地址访问形式有三种:宏定义、指针和关键字“_at_”。

5. 在C51中,中断函数与一般函数有什么不同?答:中断函数是C51的一个重要特点,C51允许用户创建中断函数。

中断函数用interruptm修饰符,m的取值为0~31,对应的中断情况如下:0——外部中断01——定时/计数器T02——外部中断13——定时/计数器T14——串行口中断5——定时/计数器T2中断函数需要注意如下几点。

(1) 中断函数不能进行参数传递(2) 中断函数没有返回值(3) 在任何情况下都不能直接调用中断函数(4) 如果在中断函数中调用了其他函数,则被调用函数所使用的寄存器必须与中断函数相同(5) C51编译器对中断函数编译时会自动在程序开始和结束处加上相应的内容(6) C51编译器从绝对地址8m+3处产生一个中断向量(7) 中断函数最好写在文件的尾部,并且禁止使用extern存储类型说明6. 按给定的存储类型和数据类型,写出下列变量的说明形式。

单片机原理及应用第四章课后题答案

单片机原理及应用第四章课后题答案

第四章作业答案16.MCS-51单片机系统中,片外程序存储器和片外数据存储器共用16位地址线和8位数据线,为何不会产生冲突?解:数据存储器的读和写由RD和WR信号控制,而程序存储器由读选通信号PSEN控制,这些信号在逻辑上时序上不会产生冲突;程序存储器访问指令为MOVC,数据存储器访问指令为MOVX。

程序存储器和数据存储器虽然共用16位地址线和8位数据线,但由于二者访问指令不同,控制信号不同,所以两者虽然共处于同一地址空间,不会发生总线冲突。

18.某单片机应用系统,需扩展2片8KB的EPROM和2片8KB的RAM,采用地址译码法,画出硬件连接图,并指出各芯片的地址范围。

解:硬件连接电路图如图4.18所示。

各芯片的地址范围为:2764(1#):0000H~1FFFH 2764(2#):2000H~3FFFH6264(1#):4000H~5FFFH 6264(2#):6000H~7FFFH图4.18 4.18题硬件连接电路图21.8255A的端口地址为7F00H~7F03H,试编程对8255A初始化,使A口按方式0输入,B口按方式1输出。

解:程序如下:ORG 0000HLJMP STARTORG 0030HSTART:MOV SP, #60HMOV DPTR,#7F03HMOV A,#10010100BMOVX @DPTR,ASJMP $END25.使用8255A或者8155的B端口驱动红色和绿色发光二极管各4只,且红、绿发光二极管轮流发光各1s,不断循环,试画出包括地址译码器、8255A或8155与发光管部分的接口电路图,并编写控制程序。

解:使用8255A,电路连接图如图4.25所示。

图4.25 4.25题硬件连接电路图其中,PB0~PB3接红色发光二极管,PB4~PB7接绿色发光二极管。

设MCS-51单片机主频为12MHz。

程序如下:ORG 0000HLJMP STARTORG 0030HSTART:MOV SP, #60HMOV DPTR, #7FFFH ; 数据指针指向8255A控制口MOV A, #80HMOVX @DPTR, A ; 工作方式字送8255A控制口MOV DPTR, #7FFDH ; 数据指针指向8255A 的B口MOV A, #0FH ; 置红色发光二极管亮LP1:MOVX @DPTR, A ; 置红色发光二极管亮LCALL DELAY ; 调用1S延时子程序CPL A ; 置发光二极管亮反色SJMP LP1 ; 循环执行DELAY:MOV R7,#10 ; 1s延时子程序D1:MOV R6,#200D2:MOV R5,#248D3:NOPDJNZ R5,D3DJNZ R6,D2DJNZ R7,D1RETEND采用定时器T0方式1中断实现1s定时。

单片机原理与应用第四章作业答案

单片机原理与应用第四章作业答案

4-9 试计算片内RAM区40H~47H单元中8个数据的平均值,结果存放在4Ah中;说明:先对8个数求和,结果放在30h,31h;然后用右移3次求平均。

ORG 0000HSJMP MAINORG 0030HMIAN: MOV R0,#40HMOV R1,#30HMOV 30H,#00HMOV 31H,#00HMOV R2,#8CLR CL1: MOV A,@R1ADDC A,@R0MOV @R1,AINC R0INC R1MOV A,@R1ADDC A,#00HMOV @R1,ADEC R1DJNZ R2,L1INC R1L2: MOV R2,#03HMOV A,@R1RRC AMOV @R1,AINC R1MOV A,@R1RRC AMOV @R1,ADEC R1DJNZ R2,L2DEC R1MOV 4AH,@R1SJMP $4-10 在起始地址为2100H,长度为64H的数表中查找ASCII码’F’,如果有,将其值送到1000H单元,如果没有,将0FFH送1000H单元.ORG 0000HSJMP MAINORG 0030HMAIN: MOV R2,#64MOV DPTR,#2100HL2: MOVX A,@DPTRCJNE A,#’F’,L1MOV DPTR,#1000HMOV A,#00HMOVX @DPTR,ASJMP LASTL1: INC DPTRDJNZ R2,L2MOV A,#0FFHMOVX @DPTR,ALAST: SJMP $4-11 试编写将片内40H~60H 单元中的内容传送到外部RAM以2000h为首地址的存放区域中,并将原数据全部清零。

ORG 0000HSJMP MAINORG 0030HMIAN: MOV R0,#40HMOV DPTR,#2000HMOV R1,#20HL1: MOV A,@R0MOVX @DPTR,AMOV @R0,#00HINC R0INC DPTRDJNZ R1,L1SJMP $4-12 编写,内部RAM50H‐59H 10个单元内容的平均值,并存放在5AH单元。

单片机微型计算机原理及接口技术课后习题答案第4章

单片机微型计算机原理及接口技术课后习题答案第4章

单片机微型计算机原理及接口技术课后习题答案第4章4-2 试述指令MOV A,R0和MOV A,@R0的区别两条指令的目的操作数相同,两条指令的区别在于源操作数来源不同:MOV A,R0 指令的源操作数就是R0寄存器的内容;而MOV A,@R0 指令的源操作数是位于存储器单元内,且存储器单元的地址是R0寄存器的内容。

4-3 试述指令MOV A,20H和MOV A,#20H的区别MOV A,20H 源操作数是直接寻址,20H表示源操作数所在存储器单元的地址。

MOV A,#20H 源操作数是立即数寻址,#20H是立即数,也就是源操作数。

4-4 说明一下指令中源操作数所在的存储器类型。

(1)MOV A,#30H; 立即数#30H,就是源操作数,存在于指令中,所以位于程序存储器。

(2)MOV A,30H; 30H是源操作数所在数据存储单元的地址,所以源操作数位于数据存储器。

(3)MOVC A,@A+DPTR;源操作数是变址寻址, 助记符MOVC表示源操作数位于程序存储器。

(4)MOVX A,@DPTR; 源操作数是寄存器间接寻址, 助记符MOVX表示源操作数位于外部数据存储器。

4-5 判断下列指令书写是否正确:(1)MOV A,B; ✔(2)MOV A,#3000H ; ✘,因为A是8位寄存器,而#3000H是16位数值,没法全部存到A里(3)INC,#20H ; ✘只能INC A/direct/Rn/@Ri/DPTR(4)MOV 5,A ; ✔,注意目的操作数是直接寻址方式,不是立即寻址(5)MOV 30H,40H; ✔(6)MOV B,@DPTR ; ✘,@DPTR寻址用于MOVX指令,不能用于MOV指R(7)CJNE 30H,#80H,NEXT ; ✘,CJNE指令格式只能是CJNE A/Rn/@Ri,#data,rel或CJNE A,direct,rel(8)POP A ; ✘只能是直接寻址方式POP direct,正确的是POP ACC(9)PUSH ACC; ✔(10)SJMP 2000H ; ✘rel的范围是-128~127(用补码表示其值)共256B范围4-6 设ACC=12H,B=64H,SP=60H,30H中存放的是78H,试分析下列程序执行后,ACC、B、30H、SP中的内容分别为多少,并画出堆栈示意图。

单片机第4章习题答案

单片机第4章习题答案

第4章习题答案一、填空题1.机器语言2.机器汇编、手工汇编3.AREA1=1000H、BUF=1004H、TIME=01H、ACK=1006H4.(A)=4FH、(R0)=4BH、(R1)=E5H、(21H)=D8H、(22H)=4BH、(2FH)=E5H二、简答题1.什么叫伪指令?伪指令与指令有什么区别?答:所谓伪指令又称为伪操作,它不象机器指令那样是在程序运行期间由计算机来执行的,它是在汇编程序对源程序汇编时,由汇编程序处理的操作,它们可以完成如数据定义、分配存储器、指示程序结束等功能。

2.汇编语言的格式是怎样的?汇编语言语句格式为:标号:操作码操作数;注释3.MCS-51系列单片机有哪些伪指令?它们的用途是什么?(1)编起始地址命令ORG功能:规定此命令之后的程序或数据的存放起始地址。

(2)定义字节伪指令格式:[标号:] DB X1,X2, (X)功能:从指定地址开始,存放若干字节数据。

(3)字定义伪指令格式:[标号:] DW Y1,Y2,…,Yn功能:从指定地址开始,存放若干字数据。

(4)汇编结束伪指令END功能:该伪指令指出结束汇编,即使后面还有指令,汇编程序也不处理。

(5)赋值伪指令格式:标号 EQU 表达式功能:将表达式的值(数据或地址)赋给标号。

(6)位定义伪指令格式:[标号] BIT 位地址功能:将位地址赋给标号。

4.汇编语言程序设计分为哪几个步骤?答:汇编语言程序设计一般要经过以下几个步骤:(1)分析问题,明确任务(2)确定算法(3)画出程序流程图(4)编写源程序(5)汇编和调试5.结构化程序设计有哪几种常用的程序结构?答:顺序结构、分支结构、循环结构和子程序结构6.子程序调用时,参数的传递方法有哪几种?答:常用的参数传递方法有:工作寄存器或累加器、指针寄存器、堆栈和程序段等。

7.分析下列程序的功能。

X DATA 30HY DATA 32HMOV A,XJNB ACC.7,TRUECPL AADD A,#01HTRUE:MOV Y,A答:该段程序的功能是:当30H单元的最高位不为0时,则把30H单元的内容送32H 单元,当30H单元的最高位为0时,则把30H单元的内容求反加1后送32单元。

西单电子科技大学出版社单片机原理及应用第4章习题

西单电子科技大学出版社单片机原理及应用第4章习题

西单电⼦科技⼤学出版社单⽚机原理及应⽤第4章习题第4章习题⼀、填空题1、AT89C51单⽚机(内部有4K字节Flash程序存储器)再加上外接的电路和电路即可构成最⼩系统。

2、8031单⽚机加上外接的时钟电路、电路和存储器才可构成最⼩系统。

3、8051单⽚机以总线的⽅式进⾏系统扩展时,⽤于⽚外程序存储器的取指控制信号;⽤于⽚外数据存储器的写控制信号。

4、8051以总线的⽅式扩展并⾏I/O⼝(16位地址)时,⽤于向扩展出的并⾏I/O ⼝写数据的指令是;⽤于从扩展出的I/O⼝读数据的指令是。

⼆、单项选择题1、2764是⼀种EPROM芯⽚,容量为8K个字,每个字8bit,则()A、该芯⽚有8根数据线B、该芯⽚有13根地址线C、该芯⽚有16根地址线D、该芯⽚有12根地址线2、某常⽤EPROM芯⽚,有11根地址线,有8根数据线,则其容量为()A、16K位B、2K位C、256*11位D、219位3、2114是⼀种1K×4位RAM芯⽚,如果⽤它扩展4K×8位RAM,则需要( )⽚2114芯⽚A、4B、8C、16D、324、2732是⼀种4K×8位EPROM芯⽚,如果⽤它扩展16K×8位ROM,则需要( )⽚2732芯⽚A、4B、8C、16D、25、2864是⼀种8K×8位E2PROM芯⽚,如果⽤它扩展32K×16位ROM,则需要( )⽚2864芯⽚A、4B、8C、16D、26、6116是⼀种2K×8位静态RAM芯⽚,如果⽤它扩展4K×32位ROM,则需要( )⽚6116芯⽚A、4B、8C、16D、27、2817A是⼀种2K×8位EEPROM芯⽚,如果⽤它扩展4K×16位EEPROM,则需要( )⽚2817A芯⽚A、4B、8C、16D、28、6264是⼀种8K×8位静态RAM芯⽚,则其地址线和数据线分别为()A、12根、8根B、13根、8根C、16根、4根D、8根、16根三、简答题1、51单⽚机扩展外部ROM如右图所⽰,则:2764(1)的基本地址范围为2764(2)的基本地址范围为2、8051单⽚机在系统扩展时,会涉及到存储器芯⽚地址线和8051地址总线连接问题,对多于地址线的处理有哪两种⽅式?如果只扩展了1⽚RAM芯⽚HY6264(8K×8位),要使其地址范围唯⼀,应该采⽤哪种处理⽅式?3、下图8051单⽚机扩展并⾏输⼊⼝电路,写出接⼝芯⽚的地址范围,⽤汇编语⾔实现:读取数据到寄存器R2中。

单片机原理及应用第三版课后答案

单片机原理及应用第三版课后答案

单片机原理及应用第三版课后答案1. 第一章题目答案:a) 单片机的定义: 单片机是一种集成电路,具有CPU、存储器和输入输出设备等功能,并且可以根据程序控制进行工作的微型计算机系统。

b) 单片机的核心部分是CPU,它可以通过执行程序指令来完成各种计算、逻辑和控制操作。

c) 存储器分为程序存储器和数据存储器,程序存储器用于存放程序指令,数据存储器用于存放数据和暂存中间结果。

d) 输入输出设备用于与外部环境进行数据交换,如开关、LED、数码管等。

e) 单片机的应用广泛,包括家电控制、智能仪器、工业自动化等领域。

2. 第二章题目答案:a) 单片机中的时钟系统用于提供CPU运行所需的时序信号,常见的时钟源有晶体振荡器和外部信号源。

b) 时钟频率决定了单片机的运行速度和精度,一般通过控制分频器、定时器等来调整时钟频率。

c) 单片机中的中断系统用于处理紧急事件,如外部输入信号、定时器溢出等,可以提高系统的响应能力。

d) 中断源包括外部中断、定时器中断和串口中断,通过编程设置中断向量和优先级来处理不同的中断事件。

e) 中断服务程序是处理中断事件的程序,包括保存现场、执行中断处理和恢复现场等步骤。

3. 第三章题目答案:a) I/O口是单片机与外部设备进行数据交换的接口,包括输入口和输出口两种类型。

b) 输入口用于接收外部信号,如开关、传感器等,可以通过编程设置输入口的工作模式和读取输入口的状态。

c) 输出口用于控制外部设备,如LED、继电器等,可以通过编程设置输出口的工作模式和输出口的状态。

d) I/O口的工作模式包括输入模式、输出模式和双向模式,可以根据具体应用需求设置相应的模式。

e) 串行通信接口是单片机与外部设备进行数据传输的一种常见方式,包括UART、SPI和I2C等多种通信协议。

4. 第四章题目答案:a) 定时器的作用是产生指定时间间隔的定时信号,可以用于延时、计时、PWM等功能。

b) 单片机的定时器一般由计数器和一些控制寄存器组成,通过编程设置定时器的工作模式和计数值。

单片机第四章课后答案.

单片机第四章课后答案.

00000000000
0800H~0FFFH 00001
②数据线 2716的8位数据线直接与单片机的P0口相连。因此P0 口是一个分时复用的地址/数据线
③控制线 CPU执行2716中存放的程序指令时,取指阶段就是对 2716进行读操作。
注意:CPU对EPROM只能进行读操作, 不能进行写操作。
CPU对2716的读操作控制都是通过控制线实现的,2716控制线的 连接有以下几条: CE 直接接地,若同时扩展多片,需通过译码器来完成片选工作 OE 接8031的读选通信号 PSEN 端。在访问片外程序存储器时, 只要 PSEN 端出现负脉冲,即可从2716中读出程序。
如:MOV SCON,#0F0H;设串口为方式3,SM2=1,允许接收 (3)各从机接收到地址信息,因为RB8=1,则置中断标志RI,中断后,首先判断主 机送过来的地址信息与自己的地址是否相符,对于地址相符的从机,置SM2=0, 以接收主机随后发来的所有信息;对于地址不相符的从机,保持SM2=1的状态, 对主机随后发来的信息不理睬,直到发送新的一帧地址信息。 (4)主机发送控制指令和数据信息给被寻址的从机。其中,主机置TB8=0,表 示发送的是数据或控制指令。对于没选中的从机,因为SM2=1,RB8=0,所以 不会产生中断,对主机发送的信息不接收
(5)连线说明: ①地址线 单片机扩展片外存储器时,地址是由P0和P2口提供的。 2716的11条地址线(A0~A10)中,低8位A0 ~A7通过锁存器 74LS373与P0口连接,高3位A8~A10直接与P2口的P2.0~P2.2连接 由于P2口只用作地址总线,所以高三位地址信息的传送不必加用地 址锁存器。锁存器的锁存使能端G必须和单片机的ALE管脚相连。 但必须注意:P2口既已用于传送片外程序存储器的地址 ,余下的引脚也不能再作为一般的I/O引脚

单片机 第四章答案

单片机  第四章答案

LP1: JBC TF0 ,LP2
JB P3.2 , LP1
INC R0
;低电平到,停止定时器1,存储单元地址加1
SJMP LP0
;低电平到,停止定时器1 宽度
LP2: INC @R0
;存储溢出次数加1ms
MOV TH0,#0FCH ;定时1ms
MOV TL0,#18H SJMP LP1
INT1
INT1 为高时T1 开始计数
中断程序结构框架
20.利用定时/计数器T0从P1.0输出周期为1s,脉宽为20ms的正 脉冲信号,晶振频率为12MHz。试设计程序。参照【例4-6】
解:因方式2是8位计数器,其最大定时时间为:256×1 s = 256 s,为实现1 s延时,
可选择定时时间为200 s,再循环5000次。定时时间选定后,可确定计数值为200,则定
时器0的初值为:X = M 计数值=256 200 = 56 。采用定时器0,方式2工作,因此,
TMOD =02H。
ORG 0000H
MOV TMOD,#02H ;置定时器0为方式2
MOV TH1,#56
;置定时器初值
MOV TL1,#56
CLR P1.0 MAIN: MOV R5,#50
;置20 ms计数循环初值 1s
②计算定时500us初值:方式0:X = 213 - 500 = 7692 = 1E0CH
ORG START:MOV
CLR CLR MOV MOV MOV SETB LOOP: JNB CLR MOV MOV INC CJNE MOV CPL JNB CPL SJMP END
0000H TMOD, #00H
ORG 0000H
START:MOV TMOD, #02H;定时器T0工作方式2

单片机原理与应用第四章作业.docx

单片机原理与应用第四章作业.docx

单片机第四章作业2、在汇编语言程序设计中,为什么要采用标号来表示地址?标号的构成原则是什么?使用标号有什么限制?注释段起什么作用?采用标号便于在编写程序时,实现跳转、循环等程序控制转移。

标号位于语句的开始,由以字母开头的字母和数字组成,它代表语句的地址。

标号与指令间要用冒号“:”分开,标号与“:”之间不能有空格,“:”与操作码之间可以有空格。

注释段放在语句的最后,以冒号开始,为不可执行部分,对程序进行解释性说明。

3、MCS-51汇编语言有哪几条常用的伪指令?各起什么作用?1、设置起始地址伪指令ORG(Origin)格式:ORG 起始地址作用:ORG伪指令总是出现在每段源程序或数据块的开始,可以使程序、子程序和数据快存放在存储器的任何位置。

若在源程序中不放ORG指令,则汇编将从0000H单元开始编排目标程序。

ORG定义控件地址应由从小到大,且不能重叠。

2、定义字节伪指令DB(Define Byte)格式:<标号:>DB <项或项表>作用:把项或项表的数值存入从标号开始的连续单元中。

3、定义字伪指令DW(Define Word)格式:<标号:>DW <项或项表>作用:基本含义与DB相同,不同的是DW定义16位数据。

4、预留存储区伪指令DS(Define Storage)格式:<标号:>DS <表达式>作用:由标号指定的单元开始,定义一个存储区,以给程序使用。

存储区内预留的存储单元数由表达式的值决定。

5、为标号赋值伪指令EQU格式:<标号:>EQU 数或汇编符号作用:将操作数中的地址或数据赋给标号字段的标号,故又称为等值指令。

6、数据地址赋值伪指令DATA格式:<标号:>DATA <数或表达式>作用:其功能和EQU类似,但有以下区别。

(1)用DATA定义的标识符汇编时作为标号登记在符号表中,所以可以先使用后定义;而EQU定义的标识符必须先定义后使用。

单片机原理及应用第四章课后题答案

单片机原理及应用第四章课后题答案

单片机原理及应用第四章课后题答案
1.什么是单片机?
单片机是一种微型、多功能的数字集成电路,其中集成了计算机的核心功能,包括存储器、定时/计数器、输入/输出外设、可编程逻辑电路、音频处理等功能。

它可以执行复杂的运算和控制任务,并且比传统的微机更小、更节能、更耐用。

2.简述单片机的结构特点
单片机的结构特点主要有:(1)内置处理器:单片机内置着微处理器,它完成程序控制和数据处理;(2)内存:内置存储器,用以存放程序指令和运算数据;(3)输入/输出口:接口用于连接外围设备;(4)时序功能:提供定时、定时/计数功能;(5)可编程逻辑电路:可根据用户要求定义自己的逻辑电路功能;(6)多种功能模块:可连接有多种功能的模块,如ADC、UART、I2C等。

3.谈谈单片机的应用领域
单片机的应用领域极其广泛,主要涉及家电、工控自动化、汽车、影音机顶盒、游戏机、消费类电子产品、工业控制、公共交通等。

其核心技术、节能和灵活性使其在各个领域有着重要的应用,使其成为近年来电子设备的重要组成部分。

4.什么是常用的单片机?。

单片机第四章作业答案

单片机第四章作业答案

第四章、习题1.设计一段单片机子程序,实现内存中数据块的传递。

*子程序功能:将内部RAM DA TA1开始的一个数据块传送到区域DATA2,数据块长度data3 ORG 1000HSUB1:MOV R0,#DATA1MOV R1,#DA TA2MOV R3,#data3ACALL LOOPLOOP:MOV A, @R0MOV @R1,AINC R0INC R1DJNZ R3,LOOPDONE:RET2、编程实现在外部RAM中把200CH开始的30H个字节数据传送到8100H开始的单元中去。

答:ORG 2000HMOV R0, #30HMOV R1, #0CHMOV R2, #20HMOV R3, #00HMOV R4, #81HLOOP: MOV DPL,R1MOV DPH,R2MOVX A, @DPTRINC DPTRMOV R1, DPLMOV R2, DPHMOV DPL, R3MOV DPH, R4MOVX @DPTR, AINC DPTRMOV R3, DPLMOV R4, DPHDJNZ R0, LOOPEND3、已知在内部RAM中有以array为首地址的数据区,依次存放单字节数组长度及数组内容,求这组数据的和,并将和接着该数据区存放。

假定数组之和小于255,请编写程序。

**设数组长度为dam,它存放在array开始的第一个字节。

R3记录数组长度,R0记录数组的间接地址(包含数组长度所占用单元),R1记录存放地址ORG 1000HMOV R0,#arrayMOV A,@R0 /数组长度送R3MOV R3,AINC R0 /求存放数组的新地址ADD A,R0 /MOV R1,A /存放数组的地址送R1CLR CCLR ALOOP:ADDC A,@R0INC R0DJNZ R3 LOOPMOV @R1,AEND5、试设计一个能实现多字节的加法和减法的子程序,并编写主程序调用该子程序,实现将存放在分别以30H和40H 开始的连续16个字节数据之和,和值存放在以50H开始的地址中(假设和值没有溢出)。

单片机第四章答案

单片机第四章答案

单片机第四章习题答案选择题1-5 BACAA, 6-10 BAADA, 11-14 CCAD问答题1.MCS-51系列单片机定时计数器的定时功能和计数功能有什么不同?分别应用在什么场合?答:当定时/计数器设置为定时工作方式时,计数器对内部机器周期计数,每过一个机器周期,计数器增1,直至计满溢出。

定时器的定时时间与系统的振荡频率紧密相关,如果单片机系统采用12M晶振,则计数周期为:,这是最短的定时周期,适当选择定时器的初值可获取各种定时时间。

当定时/计数器设置为计数工作方式时,计数器对来自输入引脚T0(P3.4)和T1(P3.5)的外部信号计数,外部脉冲的下降沿将触发计数,检测一个由1到0的负跳变需要两个机器周期,所以,最高检测频率为振荡频率的1/24。

计数器对外部输入信号的占空比没有特别的限制,但必须保证输入信号的高电平与低电平的持续时间在一个机器周期以上。

当需要准确计算时间时往往采用定时器的定时方式,而当要对一些外部事件计数时则采用定时器的计数方式。

2.软件定时与硬件定时的原理有何异同?答:软件定时是通过编写一段延时程序来实现定时,这段延时程序不完成任何操作,只是通过一些空操作浪费掉一段时间。

这样的软件定时往往浪费CPU的工作效率,并且定时不够准确,前面三章的各个任务中均采用了这种方法。

硬件定时是通过单片机的定时器来实现时间的计算,用户只需要对定时器的工作方式、初始值赋予合适的数值,启动定时器后,定时器将自动按照机器周期定时。

这种由定时器实现的定时方式,定时时间准确、CPU的工作效率高。

3.MCS-51单片机的定时计数器是增1计数器还是减1计数器?增1和减1计数器在计数和计算计数初值时有什么不同?答:MCS-51系列单片机的定时/计数器是增1计数器。

对于增1计数器,计数初值应等于最大计数值减去所需要的计数值。

而减1计数器,计数初值就等于所需要的计数值。

例如:假设需要计数50000次。

对于增1计数器的单片机,若采用方式1的定时器,最大计数值为65536,则初值应为:65536-50000=15536。

单片机第四章答案

单片机第四章答案

第四章习题与思考答案4-3外设端口有哪两种编址方法?各有什么特点?答:微型计算机对 I/O 端口进行编址的方式有两种:单独编址和统一编址。

1.外设端口单独编址特点:(1) 需要专用 I/O 指令,实现 CPU 和外设间数据传送。

(2)I/O端口地址的独立。

2.外设端口与存储器统一编址特点: (1) 无需专用 I/O 指令(2)I/O端口地址是内存地址中的一部分。

4-4 I/O 数据有哪四种传送方式?各有什么特点?CPU 与外设之间的数据传送方式有无条件传输方式、查询方式、中断方式和 DMA 方式。

1.无条件传输方式无条件传送又称为同步传送或直接传送方式。

CPU 在与外设进行数据交换时,外设随时处于准备好的状态,这样 CPU 不必查询外设的状态,也不必等待,而是直接进行数据的输入输出。

2.查询传输方式查询传输方式也称为异步传输、条件传输方式。

采用查询方式时, CPU 每次与外设进行数据传输前,都要先读取状态端口的信息,查询外设是否准备就绪,只有在外设处于“就绪”状态时,才能向外设的数据端口发送数据或从其中读取数据,如果外设未就绪,就需要 CPU 原地循环等待外设完成准备工作,所以 CPU 的工作效率不高。

3.中断传输方式在中断传输方式中,以外设为主动方,每次外设准备好就可以向 CPU 发出一次中断请求,使 CPU 暂停当前正在执行的程序,转去与外设进行一次数据传输工作,当完成了本次数据的输入或输出后,再回到原先被打断的地方继续执行原来的程序。

中断方式可以大大提高 CPU 的效率和系统的实时性。

4. DMA 方式DMA 方式即直接存储器存取方式,是一种在DMA控制器的控制下实现的外设与存储器之间的直接数据传输方式。

在整个DMA 传输过程中,是不需要 CPU 参与的,完全是通过硬件逻辑电路用固定的顺序发地址和读写信号来实现的,数据不需要经过 CPU 而是在外设和存储器之间高速传输。

4-5 8051 内部的并行I/O 口有哪些?各有什么功能?1.P0 口P0 口的第一功能是作为通用I/O 口使用。

单片机原理及应用习题4-6章

单片机原理及应用习题4-6章

《单片机原理及应用》课后习题库第四章(P122)画出MCS-51系列单片机最小应用系统的原理结构图。

参考答案:片内带程序存储器的8051、8751本身即可构成一片最小系统, 只要将单片机接上时钟电路和复位电路即可, 同时接高电平, ALE、EA PSEN 信号不用, 系统就可以工作。

如图所示该系统的特点如下:(1) 系统有大量的I/O线可供用户使用: P0、P1、P2、P3四个口都可以作为I/O口使用。

(2) 内部存储器的容量有限, 只有128 B的RAM和4 KB的程序存储器。

MCS—51系列最小化系统试说明存储器的译码选择方法积及特点。

参考答案:存储器芯片的选择有两种方法: 线选法和译码法。

1. 所谓线选法, 就是直接以系统的地址线作为存储器芯片的片选信号, 为此只需把用到的地址线与存储器芯片的片选端直接相连即可。

其优点是简单明了,不需要另外增加译码电路,成本低。

缺点是浪费了大量的存储空间。

2. 所谓译码法就是使用地址译码器对系统的片外地址进行译码, 以其译码输出作为存储器芯片的片选信号。

该方法能有效地利用存储空间,适用于大容量多芯片存储器的扩展。

什么是完全译码?什么是部分译码?各有什么特点?参考答案:完全译码是指地址译码器使用了全部地址线,地址与存储单元一一对应,即一个存储单元只占用1个唯一地址。

部分译码是指地址译码器仅使用了部分地址线,地址与存储单元不是一一对应,而是1个存储单元占用了几个地址。

1根地址线不接,一个单元占用2(21)个地址;2根地址线不接,一个单元占用4(22)个地址;3根地址线不接,则占用8(23)个地址,依此类推。

参考答案:其所占有的地址范是:8000H~9FFFH 。

其中片内译码有13根地址线和片外译码有3根地址线。

参考答案:该题为部分译码法。

其所有占用的全部地址范围是:0000H~1FFFH 、2000H~3FFFH 、4000H~5FFFH 6000H~7FFFH 。

(完整word版)第4章单片机原理课后答案

(完整word版)第4章单片机原理课后答案
DB 38H,391H,41H,42H,43H,44H,45H,46H
12.设8051的P1中各位接发光二极管,分别用汇编语言和C语言编程实现逐个轮流点亮二极管,并循环显示。
参考程序:
ORG 0000H
LJMPMAIN
ORG 0100H;主程序
MAIN:MOV A,#01H
LOOP:MOV P1,A
(5)C51编译器对中断函数编译时会自动在程序开始和结束处加上相应的内容
(6)C51编译器从绝对地址8m+3处产生一个中断向量
(7)中断函数最好写在文件的尾部,并且禁止使用extern存储类型说明
6.按给定的存储类型和数据类型,写出下列变量的说明形式。
(1)在data区定义字符变量val1。
char data varl;
DW 5567H,87H
(2000H)=01H;(2001H)=34H;(2002H)=61H;(2003H)=43H;
(2004H)=55H;(2005H)=67H;(2006H)=00H;(2007H)=87H;
8.编程实现将片外RAM的20H~30H单元的内容,全部移到片内RAM的20H单元的开始位置,并将原位置清零。
MOVDPTR,#1000H
MOVR2,#50
MOVR7,#00
MOVR6,#00
LOOP:MOVXA,@DPTR
ADDA,R6
MOVR6,A
Mபைடு நூலகம்VA,R7
ADDCA,#0
MOVR7,A
INCDPTR
DJNZR2,LOOP
SJMP$
10.编程实现R4R3R2,结果存放于R7R6R5中。
程序:
ORG0100H
0——外部中断0

第4章《单片机原理与C51基础》赵丽清(课后习题及答案)

第4章《单片机原理与C51基础》赵丽清(课后习题及答案)

第4章《单片机原理与C51基础》赵丽清(课后习题及答案)思考题:【4-1】说明伪指令的作用。

“伪”的含义是什么?常用伪指令有哪些,其功能如何?【4-2】解释下列术语:(1)手工编订(2)机器编订【4-3】下列程序段经汇编后,从1000h开始的各有关存储单元的内容是什么?org1000htab1equ1234htab2equ3000hdb0,1,4,5dwtab1,tab2,70h【4-4】设计子程序时应特别注意哪些问题?【4-5】试编写一个程序,将内部ram中45h单元的高4位清0,低4位置1。

【4-6】未知程序执行前存有a=02h,sp=42h,(41h)=ffh,(42h)=ffh。

下列程序执行后,a=();sp=();(41h)=();(42h)=();pc=()。

popdphpopdplmovdptr,#3000hrlamovb,amovca,@a+dptrpushaccmova,bincamovca,@a+dptrpushaccretorg3000hdb10h,80h,30h,80h,50h,80h【4-7】先行编写程序,搜寻在内部ram的30h~50h单元中与否存有0aah这一数据。

若存有,则将51h单元用为“01h”;若未找到,则将51h单元用为“00h”。

【4-8】试编写程序,查找在内部ram的20h~40h单元中出现“00h”这一数据的次数,并将查找到的结果存入41h单元。

【4-9】在内部ram的21h单元已经开始存一组单字节并无符号数,数据长度为20h,编写程序,建议找到最大数取走max单元。

【4-10】若sp=60h,标号label所在的地址为3456h。

lcall指令的地址为2000h,执行如下指令:2000hlcalllabel后,堆栈指针sp和堆栈内容发生了什么变化?pc的值等于什么?如果将指令lcall 直接换成acall是否可以?如果换成acall指令,可调用的地址范围是什么?【4-11】若80c51的晶振频率为6mhz,试计算延时子程序的延时时间?delay:movr7,#0f6;1个机器周期lp:movr6,#0fa;1个机器周期djnzr6,$;2个机器周期djnzr7,lp;2个机器周期ret;2个机器周期【4-12】撰写子程序,将r1中的2个十六进制数切换为ascii后取走r3和r4。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4-1 将30H单元内的2个BCD数相乘,乘积为BCD数,并把乘积送入31H单元。

4-2 试求20H和21H单元中16位带符号二进制补码的绝对值,并送回20H和21H单元,高位在先,地位在后。

4-3 在内部RAM的BLOCK开始单元中有一无符号数据块,其程度存入LEN单元。

试编程重新按递增次序排列,并存入元存储区。

4-4 试编程将(R2R3)中的二进制数转换成BCD码,并存入R0指向的单元中。

用除以10的次幂取商法编程。

4-5 在内部RAM的ONE和TWO单元格存有一带符号数X和Y。

是编程按下式要求运算,结果F存入FUNC单元。

X+Y 若X为正奇数
X∧Y 若X为正偶数
F= X∨Y 若X为负奇数
X+Y 若X为负偶数
X 若X等于零
4-6 试编程,根据R3内容00H~0FH,转换到16个不同的分支,分支均处于同一2K程序存储器之内。

4-7 试编一3字节数乘1字节数子程序MUL4。

功能:3字节乘以1字节,乘积为4字节
入口:(R0)=被乘数低字节地址指针,(R2)=乘数
出口:(R1)=乘积的高字节地址指针
4-8 试编一4字节数除以1字节数子程序DIV4.
功能:4字节数除以1字节数,商为3字节
入口:(R0)=被除数低字节地址指针,(R6)=除数
出口:(R3R4R5)=商,(R2)=余数。

相关文档
最新文档