版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机原理与应用工程式教程自测题答案
邹显圣主编
目录
绪论.............................................................................2
工程一...........................................................................4
工程二...........................................................................7
工程三...........................................................................9
工程四..........................................................................14
工程五..........................................................................17
工程六.........................................................................21
工程七.........................................................................24
工程八.........................................................................27
工程九..........................................................................30
绪论
1.单片机开展分为哪几个阶段?各阶段的特点是什么?
答:
共分为四个阶段,分别如下:
1)第一代单片机(1975〜1976年)。这个时期生产的单片机其特点是制造
工艺落后,集成度低,而且采用双片形式。
2)第二代单片机(1976〜1978年)。其性能低、品种少、寻址范围有限、
应用范围也不广。
3)第三代单片机(1979〜1982年)。存储容量大、寻址范围广,而且中断
源、并行I/O口、定时器/计数器的个数都有了不同程度的增加,同时它还新集
成了全双工的串行通信接口电路;在指令系统方面普遍增设了乘除法和比拟指令。
4)第四代单片机(1983年以后)。出现了工艺先进、集成度高、内部功能
更强和运算速度更快的16位单片一机,它允许用户采用面向工业控制的专用语言,
如C语言等°
2m9系列单片机分为几类?各类的主要技术特点是什么?都有哪些型
号?
答:
型号AT89C51AT89c52AT89C1051AT89C2051AT89S8252
档次标准型低档型高档型
Flash/KB48128
片内RAM/KB12825664128256
I/O1条)3232151532
定时器/个23123
中断源/个68369
串行口/个11111
M加密/级33223
片内振荡器有有有有有
E2PR0M/KB无无无无2
3.微型计算机中常用的数制有几种卜?计算机内音R采用哪种数制?
答:二进制、八进制、十进制和十六进制。内部采用二进制
4.十六进制数能被计算机直接执行吗?为什么要用十六进制数?
答:不能。引入十六进制数是为了表示或者书写上的方便,因为一位十六进
制数可以代表四位二进制数。
5.单片机的应用领域主要有哪些?
答:智能化产品、智能化接口、智能化测控系统、智能化仪表
6.将以下十进制数转换为二进制数和十六进制数。
(1)125D(2)0.525D(3)121.678D(4)47.945D
答:
(1)111U01B.7DH
(2)0.1000011B.0.86H
(3)1111001.101011B>79.ACH
(4)101111.2F.FOH
7.将以下二进制数转换为十进制数和十六进制数。
(1)10U0101B(2J0.101100100B
(3)0.1010B(4)U01.0101B
答:
(1)18ID、B5H
(2)0.695D、0.B2H
(3)0.625D、0.AH
(4)13.3125D、D.5H
8.将以下十六进制数转换为二进制数和十进制数。
(1)ABH(2)28.07H(3)ABC.DH(4)0.35FH
咨
10101011B、171D
(2)1O1OOO.00000111B^40.027D
(4)0.001101011111B.0.875D
9.在8位二进制计算机中,正、负数如何表示?
答:8位二进制的正数其最高位为“0〃;负数最高位为“1〃
10.写出以下各十进制数的原码、反码和补码。
(1)+28D(2)+69D(3)-125D(4)-54D
答:
(1)原码:00011100B;反码:00011100B;补码:0001U00B
(2)原码:01000101B;反码:01000101B;补码:01000101B
⑶原码:11111101B;反码:10000010B;补码:10000011B
(4)原码:10110110B;反码:11001001B;补码:11001010B
11.写出以下各十进制数的BCD码。
(1)34D(2)59D(3)1983D(4)270D
答:
(1)110100B
(2)010101001B
(4)100110000B
工程
1.AT89c51单片机的EA信号有何功能?
答:砺引脚用于决定CPU从哪个ROM中读取程序,当正二0时,CPU只从
外部ROM中读取程序;当a=1时,CPU先从内ROM中读取程序,当地址超过OFFFH
时,继续从外部ROM中读取程序。
2.AT89c51单片机只用内部flash存储器时,砺引脚应该如何处理?
答:诙应接在电源端上,即保持诙引脚为高电平。
3.AT89C51单片机的P3〜P0口各有什么功能?
答:P3〜P0均为8位并行I/O口,当进行外部扩展时,P3口兼作控制总线,
提供系统的各种控制信号;P2口用于提供最多高8位地址总线;P1口为纯粹的
数据口;P0口分时复用,兼作低8位地址总线和数据复用端口。
4.简述AT89C51单片机的存储器组织结构和内部RAM的地址空间分配。
答:AT89c51单片机的存储器组织结构采用哈弗结构;内部RAM地址空间分
配如下:00H〜1FH为存放器区;20H〜2FH为位寻址区;30H〜7FH为用户RAM区,
即堆栈区;80H〜FFH为特殊功能存放器区。
5.内部RAM的低128单元划分为哪三个主要局部?各局部的主要功能是什
么?
答:存放器区、位寻址区、用户RAM区;
各局部功能为:
存放器区:用于存储程序执行过程中的存放器中的数据;
位寻址区:即可以字节寻址,又可以位寻址,主要用于位寻址;
用户RAM区:用于存储堆栈过程中的各项数据。
6.位地址7CH与字节地址7CH如何区别?位地址7CH具体在内部RAM中的
什么位置?
答:存储容易不一样,位地址只能存储一位二进制数据,而字节地址可以存
储八位二进制数据;位地址7CH位于字节地址2FH.4。
7.AT89C51单片机有哪些特殊功能存放器?这些特殊功能存放器分别在单
片机中哪些功能部件中?
答:见表2-3,主要包括ACC、B、PSW、P0等;见表2-3,分别位于累加器、
B存放器、中央处理器、0号并行I/O口等。
8.特殊功能存放器中哪些存放器可以位寻址?它们的字节地址是什么?
答:
存放器符号地址
*ACCEOH
*BFOH
*PSWDOH
JEA8H
」PB8H
*P080H
*P190H
*2AOH
“P3BOH
SCON98H
JCON88H
9.程序计数器PC的功能和特点是什么?
答:PC的功能是ROM中的程序指针,用于表示ROM中程序的存放位置;其
特点是:PC为十六位二进制,但其本身无地址,不能对其赋值,也不能读取PC
值。
10.PC与DPTR各有哪些特点?有何异同?
答:PC为程序指针,DPTR为数据指针;相同为:均为十六位二进制,不同
点是PC不能赋值,而DPTR可以赋值。
11.AT89C51单片机是如何确定和改变当前工作存放器区的?
答:改变当前工作存放器区主要由PSW中的RS1和RSO决定,具体如下:
RSIRSO存放器组R0〜R7地址
00组000H-07H
01组108H-0FH
10组210H〜17H
11组318H〜1FH
12.AT89C51单片机复位后,CPU使用了哪一区工作存放器?工作存放器R0〜
R7对应的单元地址是什么?
答:AT89C51单片机复位后,CPU使用了0号区工作存放器,R0〜R7为00H〜
07Ho
13.程序状态字存放器PSW的作用是什么?简述各位的作用是什么?
答:程序状态字PSN是一个8位存放器,用于存放程序运行的状态信息;各
位的作用如下:
位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0
位标志CYACFoRSIRSOov/P
①CY:进位标志位。
②AC:辅助进位标志位。
③F0:用户标志位。
④RS1和RSO:存放器组选择位。用于设定通用存放器的组号。
⑤0V:溢出标志位。
⑥P:奇偶标志位。
14.在AT89c51单片机ROM空间中,0003H、000BH、0013H.001BH、0023H
有什么特殊用途?
答:分别为外部中断0、定时中断0、外部中断1,定时中断1和串行中断
的入口地址。
15.AT89C51单片机中XTAL1和XTAL2的功能是什么?采用外部时钟源的情
况下,如何处理这两个引脚?
答:AT89C51单片机中XTAL1和XTAL2的功能是单片机的时钟输入和输出引
脚;当采用外部时钟时,XTAL1引脚接地,XTAL2接外部时钟源。
16.什么是时钟周期、机器周期和指令周期?
答:时钟周期即石英晶体振荡周期,等于l/foSe>机器周期为时钟周期的12
倍,即1机器周期=12时钟周期;指令周期为执行一条单片机指令所需要的时间,
根据指令类型的不同,一指令周期可以等于1或2或4机器周期。
17.AT89C51单片机所使用的晶振频率为6MHz,时钟周期,机器周期为多
少?
答:时钟周期为1微秒;机器周期为2微秒。
6
18.AT89c51单片机运行出错或出现死循环,如何摆脱困境?
答:对单片机应用系统进行复位操作。
19.AT89C51单片机复位后,PC、A、PSW、SP、P3〜PO的状态各是什么?
复位后内部RAM中的数据有何影响?
答:
(PC)=0000H
(A)=0011
(PSW)=00H
(SP)=07H
(PO)〜(P3)=FFH
复位后内部RAM中的数据依然被保存,但某些特殊功能存放器中的数据可能
有所改变。
工程二
1.什么是计算机的指令和指令系统?
答:指令是用于指导计算机工作的命令;所有的计算机所能够执行指令的集
合称为指令系统。
2.简述AT89c51汇编指令格式。
答:[标号:]操作码[操作数注释]。
3.简述8051的寻址方式和所能涉及的空间。
答:共有七种寻址方式,分别为:存放器寻址、立即寻•址、存放器间接寻址、
直接寻址、相对寻址、变址寻址和位寻址。分别对应的空间是:内部RAM、ROM、
内部RAM和外部RAM;内部RAM、ROM、ROM和内部RAM的位地址空间。
4.要访问特殊功能存放器和片外数据存储器,应采用哪些寻址方式?
答:对于特殊功能存放器的访问只能采用直接寻址方式,对于片外数据存储
器的访问要采用存放器间接寻址方式。
5.编写程序,把片外RAM从2000H开始存放的8个数传送到片内30H开始
的单元中。
答:
MOVDPTR,#200011
MOVR0,#30H
MOVR2,#08H
LOOP:MOVXA,@DPTR
MOV@R0,A
INCDPTR
INCR0
DJNZR2,LOOP
SJMP$
6.以下程序段经汇编后,从1000H开始的各有关存储单元的内容是什么?
ORG1000H
TABIEQU1234H
TAB2EQU3000H
DB“START"
DWTABI,TAB2,70H
答:如下表所示。
地址数据
1000H53H
1001H54H
1002H41H
1003H52H
1004H54H
1005H12H
1006H34H
1007H30H
1008H00H
1009H00H
1OOAH70H
7.查表指令是在什么空间上的寻址操作?
答:查表指令是在ROM空间上进行的寻址操作
工程三
1.指出以下程序每一条指令的执行结果。
MOVA,#OFOH;答:(A)=FOH
CPLA;答:(A)=OFH
ANL30H,#00H;答:(30H)=00H
ORL30H,#BDH;答:(30H)=BDH
XRLA,#44H;答:(A)=4BH
2.指出以下程序每一条指令的执行结果(假设CY=1)。
MOVA,#OAAH答:(A)=AAH
CPLA答:(A)=5511
RLCA答:(A)=ABH,C=0
RLA答:(A)=57H
CPLA答:(A)二A8H
RRCA答:(A)=54H,C=0
RRA答:(A)=2AH
3.假设(A)=7AH,分别执行以下指令后,(A)的值是多少?
(1)ANLA,#OFFH;答:(A)=7AH
(2)ORLA,#OFFH;答:(A)=FFH
⑶ANLA,#0011;答:(A)=00H
(4)ORLA,#00H;答:(A)=7AH
(5)XRLA,#OFFH;答:(A)=85H
(6)XRLA,#00H;答:(A)=7AH
4.设(A)=83H,(RO)=17H,(17H)=34H,分析当执行完下面指令段后累
加器A、(RO)、(17H)的值各是多少?
ANLA,#17H
ORL17H,A
XRLA,©RO
CPLA
答:(A)=CBH、(RO)=17H、(17H)=37H
5.写出完成以下要求的指令。
(1)累加器A的低2位清0,其余位不变。
答:ANLA,#FCH
(2)累加器A的高2位置1,其余位不变。
答:ORLA,#COH
(3)累加器A的高4位到反,其余位不变。
答:XRLA,#FOH
(4)累加器A的第0位、2位、4位、6位取反,其余位不变。
答:XRLA,#55H
6.试分析以下程序段,当程序执行完毕后,位地址OOH、01H中的内容将
为何值?P1口的8条I/O线为何状态?
CLRC
MOVA,#6611
JCLOOP1
CPLC
SETBO1H
LOOP1:ORLC,ACC.0
JBACC.2,LOOP2
CLROOH
L00P2:MOVPl,A
答:(Pl)=66H,位地址OOH保持原值,位地址O1H的内容为“1〃。
7.阅读下面程序,分析执行结果。
MOVA,#67H;答:(A)=67H=0U0,0111B
SETBACC.7;答:ACC.7=1,(A)=1110,0111B
MOVC,ACC.2;答:C=1
CPLA;答:(A)=18H=0001,1000B
MOVACC.6,C;答:ACC.6=1,(A)=0101,1000B=58H
CLRC;答:c=o
SETBACC.0;答:ACC.0=1,(A)=0101,1001D=59II
MOVACC.4,C;答:ACC.4=0,(A)=0100,1001B=49H
8.编程实现把外部RAM中8000H开始的连续30个字节的数据传送到外部
RAM中8100H开始的连续单元中。
答:
MOVR4,#14H
MOVDPTR,#8000H
PUSHDPH
PUSHDPL
MOVDPTR,#8100H
MOVR2,DPH
MOVR3,DPL
LOOP:POPDPL
POPDPH
MOVXA,@DPTR
INCDPTR
PUSHDPH
PUSHDPL
MOVDPL,R3
MOVDPH,R2
MOVX@DPTR,A
INCDPTR
MOVR2,DPH
MOVR3,DPL
DJNZR4,LOOP
SJMP$
9.编程统计从外部RAM的2000H开始的连续100个单元中“0”的个数,
并将结果存放于R2中。
答:
MOVR2,#64H
MOVR3,#00H
MOVDPTR,#2000H
L00P1:MOVXA,@DPTR
CJNEA,#0011,LOOP
INCR3
LOOP:INCDPTR
DJNZR2,L00P1
SJMP$
10.将内部RAM的30H单元中的中间4位、31H的低2位、32H的高2位按
顺序排成一个新的字节,存入33H单元中。
答:
MOVA,30H
ANLA,#3CH
MOVB,A
MOVA,3111
ANLA,#03H
ORLA,B
MOVB,A
MOVA,32H
ANLA,#COH
ORLA,B
MOV33H,A
11.将DPTR中间8位取反,其余位不变。
答:
MOVA,DPL
XRLA,#FOH
MOVDPL,A
MOVA,DPH
XRLA,#OFH
MOVDPH,A
12.试编写程序完成以内部RAM的30H为首地址的20个数据传送,目的地
址为外部RAM以3000H为首地址的区域。
答:
MOVR0,#30H
MOVDPTR,#3000H
MOVR2,#14H
LOOP:MOVA,@R0
MOVX©DPTR,A
INCR0
INCDPTR
DJNZR2,LOOP
SJMP$
13.试编写条件转移程序,当存放器R3的内容分别满足以下条件时能转移
到LOOP处执行程序,条件不满足时停机。
(1)(R3)>15(2)(R3)<15(3)(R3)W15(4)(R3)>15
答:
⑴
CJNER3,#0FH,LOOP1
SJMPLOOP
LOOP1:JCLOOP
SJMP$
LOOP:……
(2)
CJNER3,#0FH,LOOP1
SJMP$
LOOP1:JNCLOOP
SJMP$
LOOP:....
(3)
CJNER3,#OFH,LOOP1
SJMPLOOP
LOOP1:JNCLOOP
SJMP$
LOOP:....
(4)
CJNER3,#OFH,LOOP1
SJMP$
LOOP1:JCLOOP
SJMP$
LOOP:……
14.试编写程序将内部RAM以40H为首地址的数据块传送到以BUF为起始
地址的内部RAM区域,直到遇到所传送的数据不为0时停止。
答:
MOVRO,#40H
MOVRI,#BUF
LOOP:MOVA,@R0
JNZL00P1
INCRO
INCRI
SJMPLOOP
LOOP1:SJMP$
15.编写一程序将数00H存入内部RAM的20H单元,存入后,通过读操作
来检查是否确实存入?然后再将数FFH存入内部RAM的21H单元,检查是否确
实存入。如果两次检查结果都正确,将内部RAM的60H单元置00H,否那么置
llHo
答:
MOV20H,#0011
MOVA,20H
CJNEA,#00H,LOOP
MOV21H,#FFH
MOVA,21H
CJNEA,#FFH,LOOP
MOV60H,#00H
LOOP:MOV60H,#11H
SJMP$
16.设内部RAM的60H单元有一个8位二进制数,该数8位中的某位券fl”,
编写程序检查“1”在哪一位。如果'T在第0位,那么在内部RAM的30H单
元写入数“00H〃,如果“1〃在第1位,那么在内部RAM的31H单元写入数
“01H〃,……,以此类推。
答:
MOVA,60H
LOOP:JBACC.0,L0
JBACC.1,L1
JBACC.2,L2
JBACC.3,L3
JBACC.4,L4
JBACC.5,L5
JBACC.6,L6
JBACC.7,L7
SJMPLOOP
L0:MOV30H,#00H
SJMP$
LI:MOV31H,#0111
SJMP$
L2:MOV32H,#0211
SJMP$
L3;MOV33H,#03H
SJMP$
L4:MOV34H,#04H
SJMP$
L5:MOV35H,#05H
SJMP$
L6:MOV36H,#06H
SJMP$
L7:MOV37H,#07H
SJMP$
工程四
1.算术运算指令包括如下指令:
答:
(1)不带进位的加法指令ADD;(2)带进位加法指令ADDC;1:3功口1指令INC;
(4)十进制调整指令DAA;(5)带进位减法指令SUBB;(6)减1指
令DEC;(7)乘法指令MULAB;(8)除法指令DIVAB。
2.BCD码进行加法运算后,为什么要进行十进制调整?
答:
因为BCD码是用4位二进制数表示一位十进制数,当两个BCD码相加时,
对应位相加超过十时,就应该有进位了,可用来表示它的数码是十六进制的,也
就是说只有超过十六才能进位,这样就造成所对结果不是对应的BCD码了。为
了得到正确的BCD码结果,所以要对加法运算的结果进行调整,且这条指令必
须紧跟ADD或ADDC指令使用,它不能用于十进制数减法的调整。
3.编程求外部RAM3000H、3001H单元数据的平均值,并传送给外部RAM的3002H
单元。
答:
MOVDPTR,#3000H
MOVXA,@DPTR
MOVRO,A
INCDPTR
MOVXA,@DPTR
ADDA,RO
MOVB,#02
DIVAB
INCDPTR
MOVX©DPTR,A
4.写出下面这段程序的运行结果。
MOVA,#79H
MOV20H,#18H
ADDA,20H
DAA
SWAPA
答:
运行结果为:A=79Ho
5.根据以下要求写出指令序列。
(1)求25X4的乘积,结果存入数据指针DPTR之中。
(2)设计计算255+12的程序,将商和余数分别保存在50H和51H。
(3)判断内部RAM20H单元的内容,假设为正数程序转向2100H;假设为负数程
序转向2200H;假设为0程序转向2300H。
(4)(A)=192,编程求A与立即数88的和,将结果存入31H(高位)和30H(低
位)单元。
答:
(1)MOVA,#25
MOVB,44
ML-LAB
MOVDPH,B
MOVDPL,A
(2)MOVA,#255
MOVB,#12
DIVAB
MOV50H,A
MOV51H,B
(3)ORG01OOH
MOVA,20H
JZL3
JDACC.7,L2
LJMPLI
ORG21OOH
LI:……
ORG2200H
L2:....
ORG2300H
L3:....
END
(4)MOVA,#192
ADDA,#88
JCLI
MOV30H,A
MOV31H,#00
SJMP$
LI:MOV30H,A
MOV31H,#01
END
6.编写程序段,实现两个8位无符号数的乘法程序,积存放在R2、R3中(R2
存放高位)。
答:
MOVA,#78
MOVB,#56
MULAB
MOVR2,B
MOVR3,A
END
7.(30H)=17H,(31H)=38H,分析下面这段程序的运行过程,在每条语句右边
的空格中写出在执行完该语句后相应单元的结果。
MOVA,30H(A)
ADDA,31H(A)
DAA(A)
答:
(1)(A)=17H
(2)(A)二4FH
(3)(A)=55H
8.两个16位无符号数分别存放在内部RAM40H、41H和50H、51H中(低位在低
字节单元),编写程序段,实现两个16位数的减法程序,差存放在R6、R7中(R6
存放高位)。
答:
MOVA,40H
SUBBA,50H
MOVR7,A
MOVA,4III
SUBBA,51H
MOVR6,A
END
工程五
1.什么是中断,采用中断方式有哪些优点?
答:
中断是计算机的CPU暂停正在运行的程序,转而执行提出中断的那个外部设备或
事件的效劳程序(即中断效劳程序),当效劳程序处理完毕后,CPU再回到原来
的“断点〃继续原来的程序。
优点:引入中断技术,解决了CPU与外设的速度匹配问题,提高CPU的运行效率,
计算机具有中断功能后,还有如下优点:
(1)分时处理功能
(2)实时处理功能
(3)故隙处理功能
2.在AT89c51单片机系统中,有哪些中断源?响应这些中断的效劳程序入口地
址分别是多少?怎样合理安排中断效劳程序?
答:
(1)有5个中断源,分别为:外部中断0、定时器T0、外部中断1、定时器T1、
串行口中断。
(2)中断源中断效劳程序入口地址
外部中断0:0003H
定时器T0:OOOBH
外部中断1:0013H
定时器T1:001BH
串行口中断:0023H
由于各中断效劳程序的入口地址相隔仅8个单元,如果整个中断效劳程序的
长度少于或等于8个字节,那么可以将这个中断效劳程序存放在从入口地址开始
的8个单元中,但如果中断效劳程序的长度大于8个字节,那么通常在入口地址
处安排一条转移指令,而转移指令要跳转的地址才开始真正存放中断效劳程序。
3.在单片机复位后,IP和IE为何值?如果当前单片机系统中只允许开放INTO和
T1中断源,且要求而和T1为高级中断源,其余为低级中断源,怎样设置IP
和IE的值?
答:
(1)单片机复位后,IP为XXOOOOOOB;IE为OXOOOOOOB
(2)IP为:XXXO1OO1B;IE为:1XXO1OO1B
4.定时器。和定时器1各有几种工作方式?简述之。
答:
定时器0有4种工作方式:方式0、方式1、方式2、方式3
定时器1有3种工作方式:方式0、方式1、方式2
5.单片机系统时钟频率为12MHz,假设要求定时时间分别为0.5ms、1ms、10ms,
定时器0工作在方式0、方式1、方式2的情况下,定时初值THO、TLO分别是
多少?
答:
(1)方式0:
定时0.5ms时:
7=2"-陪=8192-500=7692=1E0C77
THO=1EH;TL0=0CH;
定时1ms时:
7=2*一臀=8192—1000=7192=1。8H
THO=1CH;TL0=18H;
定时10ms时:
采用定时1ms时的初值,循环10次。
(2)方式1:
定时0.5ms时:
7=216一蟹=65536-500=65036=FE0CH
TH0=0FEH;TL0RCH;
定时1ms时:
T=2脩一譬=65536-1000=64536=FC18H
TH0-0FCH;TL0-18H;
定时10ms时:
r=2l6--^=65536-10000=55536=DA\CH
TH0二ODAH;TLO=1CH;
(2)方式2:
定时0.1ms时:
7=28-^-=256-100=156=9C/7
THO9CH;TL0=9CH;
定时0.5ms时:(采用0.1ms的初值,循环5次)
定时1ms时:(采用0.1ms的初值,循环10次)
定时10ms时:(采用0.1ms的初值,循环100次)
6.要求将定时器T0和T1的外部信号输入断作为新增的二个外部中断请求信号,
如何设置计数初值?
答:
THO和TFO的初值均设置为FFH
7.要求在PL5脚输出周期为15ms的方波,设单片机系统时钟频率为6MHz。
试编写定时器初始化程序和中断效劳程序。
答:
定时器初始化程序:
MOVTMOD,#01H
MOVTHO,#OF1H
MOVTLO,#5AH
中断效劳程序:
ORG0000H
LJMPSTART
ORGOOOBH
LJMPTOINT
ORG1000H
START:MOVTMOD,#01H
SETBTRO
MOVTHO,ttOFlH
MOVTLO,#5AH
SJMP$
ORG2000H
TOINT:CPLPl.5
MOVTHO,ttOFlH
MOVTLO,#5AH
RET1
END
8.请编写程序:在T1每计满100个外部输入脉冲后,使P0口输出OFOH的数
据。
答:
ORG0000H
LJMPSTART
ORGOOOB1I
LJMPLOOP
ORG1OOOH
START:MOVTMOD,#O1H
SETBTRI
MOVTHO,#OF1H
MOVTLO,#5AH
SJMP$
ORG2000H
LOOP:MOVPO,#OFOH
工程六
1.与8255比拟,8155接口芯片有何特点?
答:
8155是一种通用的多功能可编程RAM/IO扩展器,片内除有三个可编程并行I/O
端口(两个8位的端口A和B及一个6位是我端口C)外,还带有256B放入静
态RAM及一个可编程的14位定时器、计数器。
2.为什么说P0口是真正的双向I/O口,而P1〜P3口是准双向口?
答:
P0口是三态双向口,每位能驱动8个LSTTL电路;Pl、P2、P3口是准双向口,
每个引脚可驱动4个LSTTL输入。
3.扩展存储器时常用哪些片选方法?
答:
线选法和译码法
4.什么是地址空间重叠现象?
答:
存储器中多个单元地址空间重叠在一起却仅表示一个单元,这种现象称为地址空
间重叠现象。
5.扩展存储器时,低8位地址为什么要锁存,而高8位地址不需要锁存?
答:
P0口作为低8位地址线、数据线,分时提供低8位地址信号和数据信号,在扩
展系统中,要将P0口传送的信号进行别离,以便构成16位地址信号,因此需要
增加一个8位锁存器,先由锁存器将地址总线中的低8位地址信号所存,锁存器
的输出作为地址线A7-A0,其后P0口作为数据线使用;P2口在整个机器周期内
提供的都是高8位地址信号,因此不用锁存。
6.设某打印接口电路中有两个端口:一个是数据端口,其地址为1FFFH;一个
是状态端口,其地址为1FFEH,状态端口的最高位D7表示打印机当前状态,即
D7=0表示打印机“空闲〃、D7=l表示打印机“忙〃,试将片内RAM40H〜4FH中
的内容由打印机打印输出。
答:
MOVDPTR,#1FFEH
LP1:MOVXA,@DPTR
JBACC.7,LP1
MOVRO,#4011
MOVR2,#10H
LP2:MOVA,@R0
INCDPTR
MOVX@DPTR,A
LP3:MOVDPTR,#1FFEH
MOVXA,@DPTR
JBACC.7,LP3
INCRO
DJNZR2,LP2
END
7.试用两片2764扩展16KB程序存储器,根据以下要求,画出电路图,并确定
各自的地址范围。
答:
(1)用P2.7和P2.6片选。
P2.7业
P2.6CECE
P2.0~2.4A8-A12A8-A12
ALE1
8GA0-A7
P0.0-P0.7D0~D7Q0~Q7A0-A7
27641#27642#
AT89C5174LS373
00-0700-07
PSEN0EOE
EA
I
地址范围:1#为:8000H~9FFFH或AOOOH~BFFFH
2#为:4000H~5FFFH或6000H“7FFFH
(2)用74LS138译码后片选。
74LS138
P2.7
P2.6
P2.5CECE
P2.0~2.4A8-A12A8-A12
ALE
A0-A7
P0.0-P0.7A0-A7
27641#27642#
AT89C51
00-0700-07
PSENOEOE
EA
地址范围:1#为:OOOOHlFFFH
2#为:2000H~3FFFH
8.有一个单片机应用系统,需要8K字节的程序存储器、两个8位输入口、两
个8位输出口、四个外部中断源,试设计电路图。
答:
译
码
器
I
工程七
1.在一个AT89C51系统中扩展一片8155,8155外接2位LED显示器和2位BCD
拨盘,试画出该局部的接口电路,并编写相应的显示子程序和读拨盘的子程序。
答:
AT89C51
显示子程序:
START:MOVA,#03H
MOVDPTR,#7F00H
MOVX@DPTR,A
LOOP1:MOVRO,#38H
MOVR3,#7FH
MOVA,R3
L00P2:MOVDPTR,#7F01H
MOVX@DPTR,A
INCDPTR
MOVA,@R0
ADDA,#ODH
MOVCA,@A+PC
MOVX@DPTR,A
ACALLDELAY1ms
MOVA,R3
JNBACC.0,L00P1
RRA
MOVR3,A
INCRO
AJMPL00P2
DATA:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,67H
RET
读拨盘子程序:
MOVRO,#30H
MOVPl,#ODFH
MOVA,Pl
SWAPA
XCHA,@R0
MOVPl,#OEFH
MOVA,Pl
XCHDA,©RO
RET
2.在一个AT89c51系统中,试画出6X6键盘接口电路,并编制一个子程序,
用查询的方法将键盘上键入的键号送内RAM区。
答:
程序:
SCAN:LCALLKEYDOWN
JNZKEY1
RET
KEY1:LCALLSWLAYlOms
LCALLKEYDOWN
JNZKEY3
KEY2:MOVA,#FFH
RET
KEY3:MOVA,#3FH
MOVP2,A
MOVA,P2
ANLA,#3FH
MOVR2,#0011
MOVR3,#06H
KEY4:RRCA
JNCKEY5
INCR2
INCR2
INCR2
INCR2
INCR2
INCR2
DJNZR3,KEY4
LJMPKEY2
KEY5:MOVA,#3H
MOVPl,A
MOVA,Pl
ANLA,#3FH
MOVRi,#0011
MOVR3,#06H
KEY6:RRCA
JNCKEY7
INCRI
DJNZR3,KEY6
LJMPKEY2
KEY7:MOVA,RI
ADDA,R2
PUSHA
LCALLKEYDOWN
KEY8:JNZKEY8
POPA
RET
KEYDOWN:MO
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 天棚抹灰工程施工方案
- 设计组织方案
- 骨科康复理疗配合护理质控落实
- xxx系统开发设计方案
- 项目后期客户维护实施方案
- 企业内部审计报告编写技巧
- 电商平台促销活动方案与执行流程
- 初中美术线条与造型教学设计
- 医院环境清洁与消毒制度
- 连锁经营特许手册模板及应用指南
- 新版2026年高考物理(河南卷)真题详细解读及评析
- 2026年全国保密教育线上培训考试题库(含标准答案)
- 2026广东佛山市季华实验室科研及公共技术部门招聘10人考试模拟试题及答案详解
- 锅炉受热面防磨喷涂技术方案
- 2026辽控集团所属辽宁九夷锂能股份有限公司招聘20人考试参考试题及答案详解
- 江苏省苏州市2025-2026学年六年级下学期数学期末试题一(试卷+答案)
- 2026 暑假红领巾奖章德育实践作业-荷风知夏意争章向阳行 教学课件
- 2026年大学概率论与数理统计考试试卷(含答案)
- 国企招聘题库
- 2025广西贵港桂平市城区学校公开选调教师145人考试笔试试卷【附答案】
- 国家开放大学专科《人力资源管理》一平台机考真题案例分析试题及答案
评论
0/150
提交评论