内容发布更新时间 : 2024/11/15 7:57:23星期一 下面是文章的全部内容请认真阅读。
0012 85F040
16 MOV 40H,B ; MAX单元 17 END
9、试编程将内部RAM中41H~43H单元中的数左移4位,移出部分送50H。 题意不清。
10、在外部RAM中BLOCK开始的单元中有一数据块,数据长度为LEN,试编程统计其中的正数、负数和零的个数分别存入内部RAM的Pcount、Mcoun和Zcount单元。 MCS51
>
1 2 3 4 5 6
ORG 0H
LEN EQU #10 ; PCOUNT EQU #30H MCOUNT EQU #31H ZCOUNT EQU #32H BLOCK EQU #40H
数据块长度
0000 7840 7 0002 790A 8
MOV R0,BLOCK ; BLOCK首地址 MOV R1,LEN
0004 E6 9 LOOP: MOV A,@R0 0005 C3 10 0006 B40004
CLR C
CJNE A,#0H,SULT1
11
0009 0532 12 000B 8009 13
INC 32H SJMP SULT2
000D 33 14 SULT1: RLC A; 移出符号位以判断正负! 000E 4004 15 0010 0530 16 0012 8002 17
JC NEG INC 30H SJMP SULT2
0014 0531 18 NEG: INC 31H 0016 08 19 SULT2: INC R0 0017 D9EB 20
DJNZ R1,LOOP
11、试编写一查表求平方的子程序SQR(设X在累加器A中,A小于15,平方数
存入工作寄存器R7中)。 0000 900008 2 0003 7830 3 0005 E6 4 0006 93 5 0007 FF 6
MOV DPTR,#TAB MOV R0,#30H MOV A,@R0 MOVC A,@A+DPTR MOV R7,A
0008 01010409 7 TAB: DB
1,1,4,9,16,25,36,49,64,81,100,121,144,169,196,225
000C 10 19 24 31 0010 40 51 64 79 0014 90 A9 C4 E1
8
END
12、试编写一程序,将外部数据区DATA1单元开始的50个单节数逐一依次移动到内部RAM中DATA2单元开始的数据区中。 > MCS51
0000 901000
1 2 3 4
ORG 0H
DATA1 EQU #1000H DATA2 EQU #30H LEN EQU #10H MOV DPTR,DATA1
5
0003 7830 6 0005 7910 7
MOV R0,DATA2 MOV R1,LEN
0007 E0 8 LOOP: MOVX A,@DPTR 0008 F6 9 0009 A3 10 000A 08 11 000B D9FA 12
13
13、14,略
MOV @R0,A INC DPTR INC R0
DJNZ R1,LOOP END
第五章
1、简述中断、中断源、中断源优先级及中断嵌套的含义。
中断是单片机实时地处理内部或外部事件的一种内部机制。当某种内部或外部事件发生时,单片机的中断系统将迫使CPU暂停正在执行的程序,转而去进行中断事件的处理,中断处理完毕后,又返回被中断的程序处,继续执行下去、。
中断的意义在于资源共享和应急处理。
中断的功能有四:一、调整CPU与外设的速度配合;二、实时控制的实现;三、故障检测;四、实现人机交流
引起中断的原因,或者能够发出中断请求信号的来源统称为中断源。 通常中断源有以下几种:
(1)外部设备请求中断。一般的外部设备(如键盘、打印机和A / D转换器等)在完成自身的操作后,向CPU发出中断请求,要求CPU为他服务。 由计算机硬件异常或故障引起的中断,也称为内部异常中断。
(2)故障强迫中断。计算机在一些关键部位都设有故障自动检测装置。如运算溢出、存储器读出出错、外部设备故障、电源掉电以及其他报警信号等,这些装置的报警信号都能使CPU中断,进行相应的中断处理。
(3)实时时钟请求中断。在控制中遇到定时检测和控制,为此常采用一个外部时钟电路(可编程)控制其时间间隔。需要定时时,CPU发出命令使时钟电路开始工作,一旦到达规定时间,时钟电路发出中断请求,由CPU转去完成检测和控制工作。
(4)数据通道中断。数据通道中断也称直接存储器存取(DMA)操作中断,如磁盘、磁带机或CRT等直接与存储器交换数据所要求的中断。
为了使得系统能及时响应并处理发生的所有中断,系统根据引起中断事件的重要性和紧迫程度,硬件将中断源分为若干个级别,称作中断优先级。 中断系统正在执行一个中断服务时,有另一个优先级更高的中断提出中断请求,这时会暂时终止当前正在执行的级别较低的中断源的服务程序,去处理级别更高的中断源,待处理完毕,再返回到被中断了的中断服务程序继续
执行,这个过程称为是中断嵌套。
2、 MCS-51单片机提供了几个中断源?几个中断优先级?
MCS-51单片机的中断源共有三类,分别是外部中断、定时计数器中断和串行通信口中断,第一类有IE0和IE1,第二类有TF0和TF1,第三类的RI、TI合二为一。
MCS-51单片机分两个优先级,每个中断源的优先级都可以通过中断优先级寄存器IP中的相应位进行设定。在同级优先级中,五个中断源的优先级次序由高到低分别是:IE0、TF0、IE1、TF1、RI或TI。
3、简述TCON、SCON、IE、IP四个特殊功能寄存器各位的定义及功能。 TCON(Timer Control Register)定时器/计数器控制寄存器
TCON在特殊功能寄存器中,字节地址为88H,位地址(由低位到高位)为88H一8FH,由于有位地址,所以可以于进行位操作。 TCON的作用是控制定时器的启、停,标志定时器溢出和中断情况。
其中,TFl,TRl,TF0和TR0位用于定时器/计数器;IEl,ITl,IE0和IT0位用于中断系统。 如图所示: TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 其中,TF1:定时器1溢出标志位。当定时器1计满溢出时,由硬件使TF1置“1”,并且申请中断。进入中断服务程序后,由硬件自动清“0”,在查询方式下用软件清“0”。 TR1:定时器1运行控制位。由软件清“0”关闭定时器1。当GATE=1,且INT1为高电平时,TR1置“1”启动定时器1;当GATE=0,TR1置“1”启动定时器1。 TF0:定时器0溢出标志。其功能及操作情况同TF1。 TR0:定时器0运行控制位。其功能及操作情况同TR1。 IE1:外部中断1请求标志位。 IT1:外部中断1触发方式选择位。当IT1=0,为低电平触发方式;当IT1=1,为下降沿触发方式。 IE0:外部中断0请求标志位。 IT0:外部中断0触发方式选择位。 当IT0=0,为低电平触发方式;当IT0=1,为下降沿触发方式。
TCON中低4位与中断有关。由于TCON是可以位寻址的,因而如果只清溢出或启动定时器工作,可以用位操作命令。例如:执行“CLR TF0”后则清定