单片机原理 接口及应用—嵌入式系统技术基础 习题解答

单片机原理 接口及应用—嵌入式系统技术基础 习题解答
单片机原理 接口及应用—嵌入式系统技术基础 习题解答

单片机原理、接口及应用——嵌入式系统技术基础

习题解答

计算机的基础知识

0.1 40H,62H,50H,64H,7DH ,FFH

0.2 812 ,104, 213, 256, 2936, 941

0.3

0.4

0.5 (1) 33H+5AH=8DH, OV=1, CY=0。 (2) -29H-5DH=7AH, OV=0, CY=1。

(3) 65H-3EH=27H, OV=0, CY=1。 (4) 4CH-68H=E4H, OV=0, CY=0。0.6

0.7 ASCII

基础篇

第1章、MCS-51单片机结构

1.1 单片微型计算机(即单片机)是包含CPU、存储器和I/O接口的大规模集成芯片,

即它本身包含了除外部设备以外构成微机系统的各个部分,只需接外设即可构成独立的微机应用系统。微机处理器仅为CPU,CPU是构不成独立的微机系统的。

1.2 参见教材1.1.1节

1.3 参见教材第6页表格

1.4 参见教材表1.4

1.5 参见教材表1.1和表1.2

1.6 当PSW=10H 表明选中的为第二组通用寄器R0~R7的地址为10H~17H

1.7 程序存储器和数据存储器尽管地址相同,但在数据操作时,所使用的指令不

同,选通信号也不同,因此不会发生错误。

1.8 内部数据程序外部数据程序

1.9 振荡周期=0.1667μs 机器周期=2μs 指令周期=2~8μs

1.10 A=0,PSW=0,SP=07,P0~P3=FFH

第2章、51系列单片机的指令系统

2.1 参见教材2.1节

2.2 因为A累加器自带零标志,因此若判断某内部RAM单元的内容是否为零,必须

将其内容送到A,JZ指令即可进行判断。

2.3 当A=0时,两条指令的地址虽然相同,但操作码不同,MOVC是寻址程序存储

器,MOVX是寻址外部数据存储器,送入A的是两个不同存储空间的内容。

2.4 目的操作数源操作数

寄存器直接

SP间接寻址直接

直接直接

直接立即

寄存器间址直接

寄存器变址

寄存器间址寄存器

2.5 Cy=1, OV=0, A=94H

2.6 √×

√×

××

√√

×√

××

××

×√

××

××

××

2.7 A=25H (50H)=0 (51H)=25H (52H)=70H

2.8 SP=(61H) (SP)=(24H)

SP=(62H) (SP)=(10H)

SP=(61H) DPL =(10H)

SP=(60H) DPH=(24H)

执行结果将0送外部数据存储器的2410单元

2.9 程序运行后内部RAM(20H)=B4H,A=90H

2.10 机器码源程序

7401 LA: MOV A,#01H

F590 LB: MOV P1,A

23 RL A

B40AFA CJNE,#10,LB

80F6 SJMP LA 2.11 ANL A,#0FH

SW AP A

ANL P1,#0FH

ORL P1,A

SJMP $

2.12 MOV A,R0

XCH A,R1

MOV R0,A

SJMP $

2.13 (1)利用乘法指令

MOV B,#04H

MUL AB

SJMP $

(2) 利用位移指令

RL A

RL A

MOV 20H,A

ANL A,#03H MOV B,A MOV A,20H ANL A,#0FCH SJMP $

(3)用加法指令完成

ADD A,ACC

MOV R0,A ;R0=2A

MOV A,#0

ADDC A,#0

MOV B,A ;B存2A的进位MOV A,R0

ADD A,ACC MOV R1,A ;R1=4A MOV A,B

ADDC A,B ;进位×2 MOV B,A ;存积高位MOV A,R1 ;存积低位SJMP $

2.14 XRL 40H,#3CH

SJMP $

2.15 MOV A,20H

ADD A,21H

DA A

MOV 22H,A ;存和低字节

MOV A,#0

ADDC A,#0

MOV 23H,A ;存进位

SJMP $

2.16 MOV A,R0

JZ ZE

MOV R1,#0FFH

SJMP $

ZE: MOV R1,#0

SJMP $

2.17 MOV A,50H

MOV B,51H

MUL AB

MOV 53H,B

MOV 52H,A

SJMP $

2.18 MOV R7,#0AH

WOP: XRL P1,#03H

DJNZ R7,WOP

SJMP $

2.19单片机的移位指令只对A,且只有循环移位指令,为了使本单元的最高位移

进下一单元的最低位,必须用大循环移位指令移位4次。

ORG 0 CLR C MOV A,20H RLC A MOV 20H,A MOV A,21H RLC A MOV 21H,A MOV A,22H

RLC A

MOV 22H,A

MOV A,#0 RLC A

MOV 23H,A

SJMP $

第3章、MSC-51单片机汇编语言程序设计

3.1因为是多个单元操作,为方便修改地址使用间址操作。片外地址用DPTR指示,

只能用MOVX指令取数到A,片内地址用R0或R1指示,只能用MOV指令操作,因此循环操作外部数据存贮器→A→内部部数据存贮器。

ORG 0000H

MOV DPTR,#1000H

MOV R0,#20H LOOP: M OVX A,@DPTR

MOV @R0,A INC DPTR

INC R0

CJNE R0,#71H,LOOP SJMP $

3.2 要注意两高字节相加应加低字节相加时产生的进位,同时要考虑最高位的进位。

ORG 0 MOV A,R0 ADD A,R6 MOV 50H,A MOV A,R7 ADDC A,R1 MOV 51H,A MOV A,#0

ADDC A,ACC MOV 52H,A

SJMP $

3.3 A中放小于14H(20)的数,平方表的一个数据占2个字节,可用BCD码或二进制

数存放.(如A中放的是BCD码,则要先化成二进制数再查表。)

ORG 0 MOV DPTR,#TAB

ADD

A,ACC ;A*2

PUSH ACC

MOVC A,@A+DPTR

MOV R7,A

POP ACC

INC A

MOVC A,@A+DPTR

MOV R6,A

SJMP $

TAB: DB 00,00,00,01,00,04, 00,09,00,16H,……

DB ………04H,00

3.4 先用异或指令判两数是否同号,在同号中判大小,异号中正数为大.

ORG 0

MOV A,20H

XRL A,21H

ANL A,#80H

JZ CMP

JB 20H.7,BG AG: MOV 22H,20H SJMP $ BG: MOV 22H,21H SJMP $

CMP: MOV A,20H

CJNE A,21H,GR GR: JNC AG

MOV 22H,21H

SJMP $

3.5fosc=6MHZ

机器周期数

DELAY: MOV R1,#0F8H 1

LOOP: MOV R3,#0FAH 1

DJNZ R3,$ 2

DJNZ R1,LOOP 2

RET 2

(1+(1+2*0xFA+2)*0xF8+2)*12/6MHz

= (1+(1+2*250+2)*248+2)*2us

= 249.494ms

3.6 将待转换的数分离出高半字节并移到低4位加30H;再将待转换的数分离出低半字节并30H,安排好源地址和转换后数的地址指针,置好循环次数。

ORG 0000H MOV A,@R0

MOV R7,#05H ANL A, #0FH

MOV R0,#20H ADD A,#30H

MOV R1,#25H MOV @R1,A

NET: MOV A,@R0 INC R0

ANL A,#0F0H INC R1

SW AP A DJNZ R7,NE

ADD A,#30H SJMP $

MOV @R1,A END

INC R1

3.7 片内RAM间址寄存器只能有R0和R1两个,而正数、负数和零共需3个寄存器指示地址,这时可用堆栈指针指示第三个地址,POP和PUSH在指令可自动修改地址。R0指正数存放地址和R1指负数存放地址,SP指源数据存放的末地址,POP指令取源数据,每取一个数地址减1。

ORG 0000H

MOV R7,#10H

MOV A,#0 MOV @R0,A

MOV R4,A INC R0

MOV R5,A AJMP DJ

MOV R6,A NE: INC R5

MOV R0,#40H MOV @R1,A

MOV R1,#50H INC R1

MOV SP,#3FH AJMP DJ

NEXT: POP ACC ZER0: INC R6

JZ ZER0 DJ: DJNZ R7,NEXT

JB ACC.7,NE SJMP $

INC R4 END

3.8 可直接用P标志判断(JB P ,ret)

ORG 0000H

MOV A,40H

JB P,EN ;奇数个1转移

ORL A,#80H ;偶数个1 最高位加“1”

EN: SJMP $

3.9 取补不同于求补码,求补码应区别正、负数分别处理,而取补不分正、负,因正、

负数均有相对于模的补数。用取反加1求补也可用模(00H)减该数的方法求补。

ORG 0000H

MOV R7,#03H A B: I NC R0

MOV R0,#DAT A MOV A,@R0

MOV A,@R0 CPL A

CPL A ADDC A,#0

ADD A,#01 DJNZ R7,AB

MOV @R0,A SJMP $

3.1016个单字节累加应用ADD指令而不能用ADDC指令,和的低位存A,当和超过

一个字节,和的高字节存于B,并要加进低位相加时产生的进位,16个单字节加完后,采用右移4次进行除十六求平均值的运算,商在BUF2单元,余数在BUF2-1单元。

ORG 0000H

MOV R7,#0FH

MOV R0,#BUF1

MOV B,#0

MOV A,@R0

MOV R2,A NEXT: MOV A,R2

INC R0

ADD A,@R0

MOV R2,A

MOV A,B

ADDC A,#0

MOV B,A

DJNZ R7,NEXT

;以上完成求和

MOV R6,#04H

MOV BUF2,A

MOV BUF2-1,#0 NEX: CLR C

MOV A,B

RRC A

MOV B,A

MOV A,BUF2

RRC A

MOV BUF2,A

MOV A,BUF2-1

RRC A

MOV BUF2-1,A

DJNZ R6,NEX

SJMP $

;以上完成除十六运算

3.11 将20H单元的内容分解为高4位和低4位,根据是否大于9分别作加37H和30H 处理。

ORG 0000H MOV A,20H ANL A,#0F0H SW AP A ACALL ASCII MOV 22H,A MOV A,20H ANL A,#0FH ACALL ASCII

MOV 21H,A

SJMP $

ASCII: CJNE A,#0AH,NE NE: JC A30

ADD A,#37H

RET

A30: ADD A,30H

RET

3.12 要注意,位的逻辑运算其中一个操作数必须在C。

ORG 0000H MOV C,20H ANL C,2FH CPL C ORL C,/2FH CPL C

ANL C,53H MOV P1.0,C SJMP $ END

3.13

ORG 0000H

MOV C,ACC.3

ANL C,P1.4

ANL C,/ACC.5

MOV 20H,C

MOV C,B.4

CPL C

ANL C,/P1.5

ORL C,20H

MOV P1.2,C

SJMP $

END

3.14 设一字节乘数存放在R1,三字节的被乘数存放在data开始的内部RAM单元,且低字节存放在低位地址单元,R0作为被乘数和积的地址指针,用MUL指令完成一字节乘一字节,每一次部分积的低位加上一次部分积的高位,其和的进位加在本次部分积的高位上,并暂存,三字节乘一字节共需这样三次乘、加、存操作,以R7作循环三次的计数寄存器。

ORG 0000H

MOV R7,#03H MOV A,#0

MOV R0,#data ADDC A,B

MOV R2,#0 MOV R2,A

NEXT: MOV A,@R0 INC R0

MOV B,R1 DJNZ R7,NEXT

MUL AB MOV @R0,B

ADD A,R2 SJMP $

MOV @R0,A END

第4章、并行接口P0-P3和单片机的中断系统

4.1~4.3 参考教材4.1节

4.4 用P1.7监测按键开关,P1.0引脚输出正脉冲,正脉冲的产生只需要将P1.0置零、置1、延时、再置零即可。P1.0接一示波器可观察波形。如果再接一发光二极管,可观察到发光二极管的闪烁。电路设计可参考图4.4

汇编语言程序

ORG 0000H

ABC: CLR P1.0

SETB P1.7

JB P1.7,$ ;未按键等待

JNB P1.7,$ ;键未弹起等

SETB P1.0

MOV R2,#0

DAY: NOP

NOP

DJNZ R2,DAY

图4.4

SJMP ABC

4.5 电路见图4.5, 初始值送0FH到P1, 再和0FFH异或从P1口输出,或使用SWAP A指令,然后从P1口输出,循环运行,

要注意输出后要延时。

汇编语言程序

ORG 0000H

MOV A,#0FH

ABC: MOV P1,A

ACALL D05

SW AP A

SJMP ABC

D05: MOV R6,250

DY:M OV R7,250

DAY: NOP 图4.5 NOP

DJNZ R7,DAY

DJNZ R6,DY

RET

END

4.6 如使用共阴极数码管,阴极接地,阳极a~g分别接P0~P3的某个口的7位,将

0~F的段码列成表,表的内容顺次从该口输出。如数码管接P3口。

汇编语言程序

ORG 0000H

MOV DPTR,#TAB AGAIN: MOV R0,#0 NEXT: MOV A,R0

MOVC A,@A+DPTR

MOV P3,A

MOV R7,#0

DAY: NOP

NOP

DJNZ R7,DAY

INC R0

CJNE R0,#10H,NEXT

SJMP AGAIN

TAB: DB 3FH,06H…;段码表(略)

END

4.7电路设计见图4.7,编程如下

:

ORG 0000H

MOV A,#08H

MOV

DPTR,#TAB

MOVC

A,@A+DPTR

MOV P1,A

MOV R2,#08H

AGAIN: MOV A,#01

NEXT: MOV P3,A

ACALL DAY

RL A

CJNE

A,#10H,NEXT

DJNZ R2,AGAIN

SJMP $

TAB: DB 3FH,06H···图4.7 END

4.8 P1口的八根线接行线,输出行扫描信

号,

P3口的八根线接列线,输入回馈信

见图4.8。

4.9~4.12参见4.2节

4.13 电路设计见图4.13

汇编语言程序

ORG 0000H

AJMP MAIN

ORG 0003H

RL A ;中断服务

MOV P1,A

RETI 图4.8 MAIN: MOV A,#0FEH

MOV P1,A ;第一灯亮

SETB EA

SETB EX0

SETB IT0

SJMP $

汇编语言中只有一个中断源,不存在占用别

的中断源向量地址问题,程序顺序排下,应

注意程序的执行过程。C语言无循环移位指

令移位后,后面补零,因此和01相或。

4.14 略

4.15 图4.13

ORG 0000H

AJMP MAIN

ORG 0003H ;中断服务

XRL P1,#0FFH

DJNZ R0,NE

CLR EA

NE: RETI

ORG 0030H MAIN: SETB EA

SETB EX0

SETB IT0

MOV P1,#0FFH

MOV R0,#0AH

SJMP $ ;等待中断

因一亮一灭为一次,所以共十次。

4.16 两个数码管阳极经驱动器接P1口,阴极分别接P3.0、P3.1。

aa EQU 08H ;存储高四位的段码

bb EQU 09H ;存储第四位的段码

i EQU 0AH ;存储计数值Tab: DB 3FH,06H……;段码表略

ORG 0000H

AJMP MAIN

ORG 0013H

AJMP INTR

MAIN: MOV DPTR,#Tab

CLR A

MOVC A,@A+DPTR

MOV aa,A

MOV bb,A

;a=b=Tab[0]

CLR P3.0

CLR P3.1

SETB EA

SETB EX0

SETB IT0 ;开中断LOOP: SETB P3.0

CLR P3.1

MOV P1,bb ;显示低位

ACALL Delay ;延时

CLR P3.0

SETB P3.1

MOV P1,aa ;显示高位

ACALL Delay ;延时

SJMP LOOP

INTR: CLR EX0

INC i ;i加一

MOV A,i

ANL A,#0FH ;取i的低位

MOV DPTR,#Tab

MOVC A,@A+DPTR

MOV bb,A ;查表b=Tab[i 的低位]

MOV A,i

ANL A,#0F0H

SW AP A ;取i的高位

MOVC A,@A+DPTR

MOV aa,A ;查表a=Tab[i的高位]

SETB EX0

RETI

Delay: ;略

END

4.17 提示:将X1至X3分别接至一个三输入或非门的三个输入端,同时还分别接至单片机的三个IO口,或非门的输出端接至单片机的外部中断引脚。中断服务程序中检查三个IO口的值,便可知道具体的故障源。程序略。

第五章、单片机的定时/计数器与串行接口

5.1~5.3 请参考教材

5.4 方式0: 1

6.38ms 方式1: 131ms 方式2: 512μs 5.5 使用方式2 计数初值C=100H-0AH=F6H

查询方式:

ORG 0000H

MOV TMOD,#06H MOV TH0,#0F6H

MOV TL0,#0F6H

SETB TR0 ABC: JNB TF0,$

CLR TF0

CPL P1.0

SJMP ABC

中断方式:

ORG 0000H

AJMP MAIN

ORG 0000BH

CPL P1.0

RETI

MAIN: MOV TMOD,#06H

MOV TH0, #0F6H

SETB EA

SETB ET0

SETB TR0

SJMP $ ; 等待中断

5.6 1000HZ的周期为1ms,即要求每500μsP1.0变反一次,使用方式T1方式

1,MC=12 / fosc=1μs, C=216-500μs/1μs=FE0CH,除TMOD=10H,TH0=FEH,TL0=0CH外,程序与5.5题相同,注意每次要重置TH0和TL0

5.7 f=6MHz MC=2μs 方式2的最大定时为512μs合乎题目的要求。50μs时,

计数初值为C1=256-25=E7H,350μs时计数初值为C2=256-175=51H 汇编语言程序

ORG 0000H

MOV TMOD,#02H NEXT: MOV TH0,#51H

MOV TL0,#51H

CLR P1.2

SETB TR0

AB1:JBC TF0,EXT

SJMP AB1 EXT:SETB P1.2

MOV TH0,#0E7H

MOV TL0,#0E7H AB2:JBC TF0,NEXT

SJMP AB2

上述的计数初值没有考虑指令的执行时间,因此误差较大,查每条指令的机器周期,扣除这些时间,算得C=E3H,这样误差较小。

5.8 P1.0输出2ms脉冲,P1.0输出50μs脉冲。

汇编语言程序

ORG 0000H

MOV TMOD,#02H MOV TH0,#06H MOV TL0,#06H SETB TR0

MOV R0,#04H NE: JNB TF0,$

CLR TF0

CPL P1.1

DJNZ R0,NE

CPL P1.0

AJMP NE

5.9

ORG 0000H MAIN: MOV TMOD,#15H LOOP: LCALL Counter

LCALL Timer

SJMP LOOP Counter:MOV TH0,#0FDH

MOV TL0,#18H

SETB TR0

CLR TR1

JNB TF0,$

CLR TF0

RET Timer: MOV TH1,#0F9H

MOV TL1,#30H

SETB TR1

CLR TR0

JB TF1,$

CLR TF1

RET

END

5.10 略

5.11 参见教材5.3.1节

5.12 方式3为每桢11位数据格式

3600*11/60=660(波特)

5.13 T1的方式2模式不需要重装时间常数(计数初值),不影响CPU执行通信程

序.

设波特率为fbaut计数初值为x,

依据公式f baut=2somd/32*(f osc/12(256-x)) 求得x=256-((2SMO D/32)*(f osc/f baut))

5.14 最低波特率为T1定时最大值时,此时计数初值为256,并且SOMD=0,

f baut=(1/32)*( f osc/(12(256-0))=61

最高波特率为T1定时最小值(1)且SOMD=1时

f baut=(2/32)* f osc/(12(256-1))=31250

5.15 取SMOD=1 计算TH1=TL1=B2

发送

ORG 0000H

MOV TMOD,#20H

MOV TH1,#0B2H

MOV TL1,#0B2H

SETB TR1

MOV SCON,#40H

MOV A,#0 NEXT: MOV SBUF,A TES: JBC T1,ADD1

SJMP TES ADD1: INC A

CJNE A,#20H,NEXT

SJMP $

END

接收

ORG 0000H

MOV TMOD,#20H MOV TH1,#0B2H MOV TL1,#0B2H SETB TR1

MOV SCON,#50H MOV R0,#20H TEC: JBC RI,REC

SJMP TEC

REC: MOV @R0,SBUF INC R0

CJNE R0,#40H,TEC

SJMP $

END

5.16 略

5.17利用串行通信方式2(波特率固定),采用奇校验方式,将校验位放在TB8中,乙

机检验校验位,如正确,则存于片外4400H开始的RAM中,如错误,通知对方重发,R6存放数据块长度汇编语言程序如下:

发方

ORG 0000H MOV DPTR,#3400H

MOV R6,#0A1H

MOV SCON,#90H

MOV SBUF,R6

L2: JBC T1,L3

AJMP 1.2

L3: MOV 1,@DPTR

JB P,L4

SETB TB8

L4: MOV SBUF ,A

L5: JBC T1,L6

AJMP L5

L6: JBC RI,L7

AJMP L6

L7: MOV A,SBUF

CJNE A,#0FF0H,L8

AJMP L3

L8: INC DPL

DJNZ R6,L4

SJMP $

收方

ORG 0000H

MOV DPTR,#4400H

MOV SCON,#90H L1: JBC RI,L2

AJMP L1

L2: MOV A,SBUF

MOV R6,A

L3: JBC RI,L4

AJMP L3

L4: MOV A,SBUF

JB P, L5

JNB RB8,L8

SJMP $ L5: JB JB8,L8

L6: MOVX @DPTR,A INC DPL

INC DPH

DJNZ R6,L3

SJMP $

L8: MOV A,#0FFH

MOV SBUF,A

L9: JBC TI,L3

AJMP L9

SJMP $

END

5.18 电路图见教材中图5.18,程序如下:

ORG 0000H

MOV R5,#03H

CLR A

MOV SCON,A LOOP: SETB P3.3

CLR A

MOV R7,A

DEF: MOV A,R5 ;循环4次MOV DPTR,#tab

MOVC A,@A+DPTR;查表A=tab[R5]

MOV SBUF,A

DEC R5

JNB T1,$

CLR T1

CJNE R5,#0FFH,ABC;若R5==255,则R5=7

MOV R5,#07H

ABC: INC R7

CJNE R7,#04H,DEF ;循环4次

CLR P3.3

LCALL timer

SJMP LOOP

timer: MOV A,#64H

FOR: JZ ENDD

MOV TMOD,#01H

MOV TH0,#0D9H

MOV TL0,#0F0H

SETB TR0

JNB TF0,$

CLR TF0

DEC A

SJMP FOR

ENDD: RET

tab: DB 0c0H,0f9H,0a4H……;略EN

第6章、单片机总线与存储器的扩展

6.1参见6.1节

6.2 6116为2KB×8位RAM,共11根地址线A0~A10,接线见图6.2。

图6.2

6.3 2732为4KB×8位EPROM,6264为8KB×8位RAM,因各只有一片,所以各片选CE接地,电路见图6.3。

图6.3

6.4 6116为2KB×8位RAM、2716为2KB×8位EPROM,地址线均为11位,地

址线接线参见图6.3。

6.5 电路见图6.5。

图6.5

4片2764的CE分别接138译码器为y0、y1、y2、y3端,各片地址为:

2764(4) 0000H~1FFFH

2764(3) 2000H~3FFFH

2764(2) 4000H~5FFFH

2764(1) 6000H~7FFFH

6.6 设计电路见图6.6。

图6.6

第7章、单片机系统功能扩展

7.1 将图6.6中的2764去掉,并改“P2.5”为“P2.4”,改“P2.6”为“P2.7”;

程序可参考教材中例7.1。

7.2 请参考上题和题4.16。将244的输

入端最低位经过一个上拉电阻接

至+5V,经过一个按钮接到地。

7.3 电路图见图7.3

MOV DPTR,#0CFFBH

MOV A, #0A2H

MOVX @DPTR, A

7.4 电路与上题类似,程序较简单,略。

7.5 8255A口、B口、C口、控制口

地址分别为7CFFH、7DFFH 、

7EFFH、7FFFH,A口方式0输出,C口输出,控制字80H。电路见图7.5

图7.5 程序:ORG 0000H

MOV DPTR,#7FFH ;指向控制口

MOV A,#80H ; A口B口均采用基本输出方式

MOVX @DPTR,A ; 写控制字

MOV DPTR,#7CFFH

MOV A,#0

MOVX @DPTR,A ;清显示

AGAIN:MOV R0,#0 ;R0存字形表偏移量

MOV R1,#01 ;R1置数码表位选代码NEXT: MOV DPTR,#7EFFH ;指向C口

MOV A,R1

MOVX @DPTR, A ;从C口输出位选码

MOV A, R0

MOV DPTR,#TAB ; 置字形表头地址

MOVC A, @A+DPTR ; 查字形码表

MOV DPTR,#7CFFH ;指向B口

MOVX @DPTR, A ; 从B口输出字形码

ACALL DAY ;延时

INC R0 ; 指向下一位字形

MOV A,R1

RL A ;指向下一位

MOV R1,A

CJNE R1,#10H,NEXT ;六个数码管显示完?

SJMP AGAIN

DAY: MOV R6,#50 ;延时子程序

DL2: MOV R7, #7DH

DL1: NOP

NOP

DJNZ R7,DL1

DJNZ R6,DL2

RET

TAB1: DB 6FH,3FH,3FH ,5EH ;“g00d”(9ood)的字形码

7.6 提示:EPROM27128O 16KB×8,地址线为14根,6264为8KB×8位,地址线为13

根,电路可参考教材中图7.3。

7.7 根据电路连线

I/O 口:A口:FDF8H,B口:FDF9H,C口:FDFAH,

命令/状态口:FDFBH.

定时器TIMEL:FDFCH TIMEH:FDFDH

存贮器RAM :FC00H~FCFFH

第8章、单片机典型外围接口技术

8.1电路参照教材中图8.7,不同的是将P2。7改为P2。3,先计算各模拟量对应的数字量:

3C对应的数字量:5V/3V=255/X C=153=99H

同样可算得1V、2V、4V对应的数字量分别为33H、66H、CCH

①三角波

MOV DPTR,#OF7FFH

NEXT1: MOV A,#0

NEXT: MOVX @DPTR,A

NOP

NOP

INC A

CJNE A,#9AH,NEXT

NEXTA:DEC A

MOVX @DPTR,A

NOP

NOP

CJNE A,#0,NEXTA

SJMP NEXT1

END

②方波

4V对应的数字量为CCH

MOV DPTR, #0F7FFH

MOV A,#0

NEXT: MOVX @DPTR,A

ACALL D2MS

XRL A,#0CCH

SJMP NEXT

③阶梯波

MOV DPTR, #0F7FFH

NEC: MOV A,#0

NEXT: MOVX @DPTR,A

ACALL D1MS

ADD A,#33H

CJNE A,#0FFH, NEXTA

NEXTA:MOVX @DPTR,A

ACALL D5MS

SJMP NEC

8.2 电路参考教材中图8.8,增加一个地址,使用两条输出指令才能输出一个数据,其他同上。

8.3 电路参考教材中图8.7,地址为7FFFH。

ORG 0000H

MOV DPTR,#7FFFH

MOV R0,#20H

MOV A, @R0

NEXT: MOV X @DPTR,A

ACALL D1MS

INC R0

CJNE R0,#30H,NEXT

SJMP $

END

8.4电路参阅教材中图8.11,不同的是将P2。5~P2。7改为P2。0~P2。2,各地址分别为FEFFH、

FDFFH、FBFFH。程序参照教材8.1.2.3节,注意修改RAM地址,循环执行该程序。

8.5电路参阅教材中图8.2,不同的是延时方式:EOC悬空;查询方式:EOC经非门接单

片机P1.0端口线;中断方式同原图。

下面仅编查询程序。IN2的地址为7FFAH,由于EOC经非门接单片机P1.0端口线,

查询到P1.0为零,即转换结束。

ORG 0000H

MOV R7,#0AH

MOV R0,#50H

MOV DPTR,#7FFAH

NEXT: MOVX @DPTR,A ;启动转换

JB P1.0,$ ;查询等待

MOVX A,@DPTR ;读入数据

MOV @R0,A

INC R0

DJNZ NEXT

SJMP $

8.6ADC0809采集入中模拟信号,顺序采集一次,将采集结果存放于数组ad中。

ADC0809模拟通道0~7的地址为7FF8H~7FFFH,ADC0809的转换结束端EOC 经逻辑非后接至外部中断1,电路参考教材中图8.2。程序参考教材第167页的例子,只需修改数据存储区地址。

8.7电路参考教材中图8.26,增加键盘的行线和数码管个数至8个,减少键盘列线到

2根,程序略。

第9章、串行接口技术

9.1-9.3 请参考教材

9.4 电路参照教材中图9.12,另外一片24C04的A1接到VCC 其它引脚与第一片完全一样。 9.5 略

9.6 可以,在操作IIC 总线时,将SPI 总线上的所有器件的从机选择线置高,这样

便不会对SPI 总线有影响;在操作SPI 总线时,让IIC 总线的SDA 保持高电平,这样IIC 总线得不到起始信号,便不会对IIC 总线有影响。 9.7 TLC5615经SPI 总线接至单片机(参照教材中图9.26),REF IN 作为衰减器的输

入,OUT 作为衰减器的输出。根据10

2

2CODE V V IN

REF o ?

?=,其增益为:

9

10

2

2

2CODE CODE =

?

9.8 提示:用较快的速度对被测电压进行采样(采样时间间隔恒定为t ),将一定时

间段(T )内的获得的采样值(v )的平方对时间积分(实为求和)后除以该时间段的长度,最后开平方,便是被测电压在该时间段内近似的有效值。

k 1

2∑==

k

i i

v

V 有效值,其中k=T/t 。

应用篇

第10章、单片机的C 语言编程——C51

10.1 第6行,缺少“;”;第8行“;”多余;main 函数最后缺少“}”。 10.2 xdata 的地址范围为0x0000到0xFFFF (共64K ),它需要两个字节记录

(1665536log 2=)。 10.3 char bdata a; float xdata b;

int xdata * c (注意不要定义为“xdata int * c ”或“int * xdata c ”,

这样c 为自身在xdata 区,指向默认区域的int 型数据的指针,与题意不符);

10.4 main()

{

int xdata c;

c=DBYTE[0x20]*DBYTE[0x35]; }

10.5 #include

#include sbit P1_0=P1^0; sbit P1_2=P1^2; sbit P1_3=P1^3;

unsigned char * pData=&DBYTE[0x30];

单片机原理与接口技术试题及答案

复习题及答案 (一)选择题(在每个小题四个备选答案中选出一个正确答案,填在题的括号中) 1、80C51基本型单片机内部程序存储器容量为(C)。 (A)16K (B)8K (C)4K (D)2K 2、在80C51单片机应用系统中,可以作为时钟输出的是(C)引脚。 (A)(B)RST (C)ALE (D) 3、在80C51的4个并行口中,能作为通用I/O口和高8位地址总线的是(C)。 (A)P0 (B)P1 (C)P2 (D)P3 4、当优先级的设置相同时,若以下几个中断同时发生,(D)中断优先响应。 (A)(B)T1 (C)串口(D)T0 5、在80C51中,要访问SFR使用的寻址方式为(A)。 (A)直接寻址(B)寄存器寻址(C)变址寻址(D)寄存器间接寻址 6、以下的4条指令中,不合法的指令为(D)。 (A)INC A (B)DEC A (C)I NC DPTR (D)SWAP ACC 7、当需要扩展一片8K的RAM时,应选用的存储器为(B)。 (A)2764 (B)6264 (C)6116 (D)62128 8、若想扩展键盘和显示,并希望增加256字节的RAM时,应选择(A)芯片。 (A)8155 (B)8255 (C)8279 (D)74LS164 9、80C51单片机要进行10位帧格式的串行通讯时,串行口应工作在(B )。 (A)方式0 (B)方式1 (C)方式2 (D)方式3 10、80C51复位初始化时未改变SP的内容,第一个入栈的单元地址为(A)。 (A)08H (B)80H (C)00H (D)07H 二、填空题 1、计算机的经典结构由存储器、运算器、控制器、输入设备、输出设备组 成。 2、80C51单片机基本型内部RAM有128个字节单元,这些单元可以分为三个用途不同 的区域,一是工作寄存器区,二是位寻址区,三是通用数据区区。 3、在8051单片机中,由 2 个振荡周期组成1个状态周期,由 6 个状态周期组成1 个机器周期。 4、8051的堆栈是向地址的高端生成的。入栈时SP先加1,再压入数据。 5、对于80C51无嵌套的单级中断,响应时间至少 3 个机器周期,最多8个机器周期。 三、简答题 简述80C51单片机的I/O口的功能和特点; 答:P0:地址总线低8位/数据总线和一般I/O口 P1:一般I/O口 P2:地址总线高8位和一般I/O口 P3:第二功能和一般I/O口 4个口作为一般I/O时均为准双向口。 5、简述80C51单片机指令系统的特点及寻址方式。

单片机原理及应用期末考试试卷及答案

苏州经贸职业技术学院 2009-2010学年第二学期 《单片机原理及应用》期终试卷(A) 班级:姓名:学号:成绩: 一﹑填空题(将正确答案填在题干的空白处。1分×35=35分) 1、十进制数-47用8位二进制补码表示为:11010001B。 2、89C51含4KB Flash ROM,128B的RAM,在物理上有4个独立的存储器 空间。 3、若8031单片机的晶振频率fosc=12MHz,则振荡周期为1/12us ,状态周期为1/6us ,机器周期为1us ,执行MUL AB指令需要时间为4us 。 4、假定A=85H,R0=20H,(20H)=0AFH。执行指令:ADD A,@R0后,累加器 A的内容34H ,CY的内容1 ,AC的内容1 ,OV的内容1 。 5、假定DPTR的内容为8100H,累加器A的内容为40H,执行下列指令: MOVC A,@A+DPTR 后,送入A的是程序存储器8140H 单元的内容。 6、PSW中RS1 RS0=10H时,R2的地址为12H 。 7、ROM在物理上分为片内ROM 和片外ROM ,在逻辑上两者统一编址。 8、MCS-51单片机当EA=1时,首先使用的是片内程序存储器,存储容量超过4KB时开始使用外部程序存储器;EA=0时,则仅仅使用片外程序存储器。 9、MCS—51单片机访问片外存储器时,利用ALE 信号锁存来自P0 口的低8位地址信号。 10、欲使P1口的高4位输出1,而低4位不变,应执行一条ORL P1,#0F0H指令。 11、12根地址线可选4KB个存储单元,32KB存储单元需要15 根地址线。 12、设80C51 fosc=12MHz,定时器工作在方式0,则最大定时时间为8192μs。 13、异步串行数据通讯有单工、半双工和全双工共三种传送方式。 14、51单片机的中断系统最多可以有 2 个嵌套。 15、8031单片机指令MOV是访问内RAM ,最大范围为256B ,MOVX是访问外RAM ,最大范围为64KB,MOVC是访问ROM ,最大范围为64KB 。 二、单项选择(1分×15=15分) 1、MCS-51上电复位后,SP的内容是(B) (A)00H (B)07H (C)60H (D)70H 2、80C51是(C)

单片机原理及应用的试题库

一、选择题 1.8051有四个工作寄存器区,由PSW状态字中的RS1和RS0两位的状态来决定,单片机复位后,若执行SETB RS0 指令,此时只能使用区的工作寄存器。 A.Ⅰ区 B.Ⅱ区 C.Ⅲ区 D.Ⅳ区 答案:2.B 2、读片外部数据存储器时,不起作用的信号是。 A./RD B. /WE C./PSEN D.ALE 答案: 4.C 3.已知:MOV A,#28H MOV R0,#20H MOV @R0,A ANL A, #0FH ORL A, #80H XRL A, @R0 执行结果A的内容为 A. A0H B.28H C.08H D.88H 答案:6.A 4.在进行BCD码运算时,紧跟加法运算指令后面的指令必须是指令。 A.ADD B.DA A C.ADDC D.由实际程序确定 答案:7.B 9、关于定时器,若振荡频率为12 MHz,在方式1下最大定时时间为 A.8.192ms B. 65.536 ms C. 0.256ms D.16.384ms 答案:9.B 11、开机复位后,CPU使用的是第0组工作寄存器,地址范围是。 A.00H-10H B.08H-0FH C.10H-1FH D.00H-07H 答案:11.D 13、在进行BCD码运算时,紧跟加法运算指令后面的指令必须是指令。 A.ADD B.DA A C.ADDC D.由实际程序确定 答案:3.B 14、进位标志CY在中。

A.累加器 B.算逻运算部件ALU C.程序状态字寄存器PSW D.DPTR 答案:14.C 15、MCS-51单片机有七种寻址方式,MOVX A,@A+DPTR 属于寻址。 A.间接B.变址C.相对D.直接 答案: 5.B 16、有如下程序段: MOV 31H ,#24H ; MOV A ,31H ; SWAP A ; ANL A ,#0F0H ; 执行结果是 A.(A)=24H B.(A)=42H C .(A)=40H D.(A)=00H 答案:16.C 19、8位LED 显示器采用动态显示方式时(不加锁存器),至少需要提供的I/O 线总数是:() A. 16 B. 20 C.18 D. 6 答案:19.A 20、堆栈数据的进出原则是 A.先进先出 B.进入不出 C.后进后出 D.先进后出 答案:20.D 21、要MCS-51系统中,若晶振频率屡6MHz,一个机器周期等于( ) μs A 、1.5 B 、3 C 、1 D 、2 答案:21、D, 22、单片机复位后,累加器A、PC、PSW的内容为() A、A = FFH PC = 00H PSW = FFH B、A = 00H PC = 0000H PSW = 00H C、A = 07H PC = 0000H PSW = FFH D、A = 00H PC = 00H PSW = 00H 答案:22、B, 23、8031有四个工作寄存器区,由PSW状态字中的RS1、RS0两位的状态来决定,单片机复位后,若执行SETB RS1 指令,此时只能使用()区的工作寄存器。 A、0区 B、1区 C、2区 D、3区 答案:23、C, 25、在进行BCD码运算时,紧跟加法运算指令后面的指令必须是()指令。 A、ADD B、DA A C、ADDC D、由实际程序确定 答案:25、B, 26、假定A=38H,(R0)=17H,(17H)=34H,执行以下指令:

单片机原理及其接口技术实验报告

单片机原理及其接口技术实验指导书 实验1 Keil C51的使用(汇编语言) 一.实验目的: 初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。 二.实验设备: ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。 三.实验原理及环境: 在计算机上已安装Keil C51软件。这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。 四:实验内容: 1.掌握软件的开发过程: 1)建立一个工程项目选择芯片确定选项。 2)加入C 源文件或汇编源文件。 3)用项目管理器生成各种应用文件。 4)检查并修改源文件中的错误。 5)编译连接通过后进行软件模拟仿真。 6)编译连接通过后进行硬件仿真。 2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。 3.在2的基础上,实现同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波。 五:程序清单: ORG 0000H AGAIN:CPL P1.0 MOV R0,#10 ;延时0.5秒 LOOP1:MOV R1,#100 LOOP2:MOV R2,#250 DJNZ R2,$ DJNZ R1,LOOP2 DJNZ R0,LOOP1 SJMP AGAIN END 六:实验步骤: 1.建立一个工程项目选择芯片确定选项 如图1-1所示:①Project→②New Project→③输入工程名test→④保存工程文件(鼠标点击保存按钮)

单片机原理与接口技术习题答案

单片机原理与接口技术习题答案 习题与思考题1 1-2 单片微型计算机与一般微型计算机相比较有哪些区别?有哪些特点? 答:与通用微型计算机相比,单片机的硬件上,具有严格分工的存储器ROM和RAM和I/O端口引脚具有复用功能;软件上,采用面向控制的指令系统和硬件功能具有广泛的通用性,以及品种规格的系列化。单片机还具备体积小、价格低、性能强大、速度快、用途广、灵活性强、可靠性高等特点。 1-4 单片机的几个重要指标的定义。 答:单片机的重要指标包括位数、存储器、I/O口、速度、工作电压、功耗和温度。 习题与思考题2 2-2 MCS-51单片机的EA、ALE和PSEN端的功能是什么? 答:ALE——ALE为地址锁存允许信号,在访问外部存储器时,ALE用来锁存P0送出的低8位地址信号。 PSEN——外部程序存储器的读选通信号。当访问外部ROM时,PSEN产生负脉冲作为外部ROM的 选通信号;在访问外部RAM或片内ROM时,不会产生有效的PSEN信号。PSEN可驱动8个LSTTL 门输入端。 EA——访问外部程序存储器控制信号。对8051和8751,它们的片内有4KB的程序存储器。当EA为 高电平时,CPU访问程序存储器有两种情况:一是访问的地址空间在0~4K范围内,CPU访问片内 程序存储器;二是访问的地址超出4K时,CPU将自动执行外部程序存储器的程序。对于8031,EA 必须接地,只能访问外部ROM。 2-3 程序计数器(PC)有多少位?它的主要功能是什么? 答:程序计数器有16位,它的功能和一般微型计算机的相同,用来存放下一条要执行的指令的地址。当按照PC 所指的地址从存储器中取出一条指令后,PC会自动加l,即指向下一条指令。 2-5 MCS-51单片机如何实现工作寄存器组R0~R7的选择? 答:每个工作寄存器组都可被选为CPU的当前工作寄存器,用户可以通过改变程序状态字寄存器(PSW)中的RS1、RS0两位来任选一个寄存器组为当前工作寄存器。 RS1RS0寄存器组R0R1R2R3R4R5R6R7 000组00H01H02H03H04H05H06H07H 011组08H09H0AH0BH0CH0DH0EH0FH 102组10H11H12H13H14H15H16H17H 113组18H19H1AH1BH1CH1DH1EH1FH 2-6 单片机复位后,各特殊功能寄存器中的初始化状态是什么? 答: 特殊功能寄存器初始状态特殊功能寄存器初始状态ACC00H TMOD00H PC0000H TCON00H PSW00H TL000H SP07H TH000H DPTR0000H TL100H P0~P30FFH TH100H IP xx000000B B00H IE0x000000B SCON00H PCON0xxx0000B SBUF不定

单片机原理及应用考试题

《单片机原理及应用》试题库 一、填空题 1、MCS-51有个中断源,有个中断优先级,优先级由软 件填写特殊功能寄存器 加以选择。 2、MOV PSW,#10H是将MCS-51的工作寄存器置为 第 区。 3、用串口扩并口时,串行接口工作方式应选为方式 。 4、PC复位后为 。 5、PSW中RS1RS0=10时,R2的地址为 。 6、MCS-51中,T0中断服务程序入口地址为 。 7、80C51中断有 个优先级。 8、80C51中断嵌套最多 级。 9、MCS-51单片机访问片外存贮器时,利用 信号锁存来 自 口的低8位地址信号。 10、12根地址线可选 个存储单元,32KB存储单元需 要 根地址线。 11、三态缓冲寄存器输出端的“三态”是指 态、 态 和 态。 12、74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中 块芯片。 13、A/D转换器的作用是将 量转为 量, D/A转换器的作用是将 量转为 量。 14、单片机系统复位后,PSW=00H,因此片内RAM寄存区的当前寄存器是第 组,8个寄存器的地址为 ~ 。 15、假定SP=60H,ACC=30H,B=70H,执行下列指令: PUSH ACC PUSH B 后,SP的内容为 ,61H单元的内容为 ,62H单元的内容为 。 16、假定SP=62H,(61H)=30H,(62H)=70H,执行下列指令: POP DPH POP DPL 后,DPTR的内容为 ,SP的内容为 。 17、单片机的数据通信方式有二种,即 方式和 方式,其中 方式传输距离较远,成本较低。 18、异步串行通信有 、 和 共三种传送

单片机原理及接口技术课后答案_(第三版)

单片机原理及接口技术课后答案_(第三版) 第一章 1.单片机具有哪些特点 (1)片内存储容量越来越大。 (2抗干扰性好,可靠性高。 (3)芯片引线齐全,容易扩展。 (4)运行速度高,控制功能强。 (5)单片机内部的数据信息保存时间很长,有的芯片可以达到100年以上。2. 89C51单片机内包含哪些主要逻辑功能部件? 答:80C51系列单片机在片内集成了以下主要逻辑功能部件: (l)CPU(中央处理器):8位 (2)片内RAM:128B (3)特殊功能寄存器:21个 (4)程序存储器:4KB (5)并行I/O口:8位,4个 (6)串行接口:全双工,1个 (7)定时器/计数器:16位,2个 (8)片内时钟电路:1个 3.什么是微处理器(CPU)、微机和单片机? 答:微处理器本身不是计算机,但它是小型计算机或微机的控制和处理部分。微机则是具有完整运算及控制功能的计算机,除了微处理器外还包括存储器、接口适配器以及输入输出设备等。 单片机是将微处理器、一定容量的RAM、ROM以及I/O口、定时器等电路集成在一块芯片上,构成的单片微型计算机。 4. 微型计算机怎样执行一个程序? 答:通过CPU指令,提到内存当中,再逐一执行。 5.什么是嵌入式系统?他有哪些类型?为什么说单片机是典型的嵌入式系统?答; 嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。

它有嵌入式微处理器、嵌入式微控制器、嵌入式DSP处理器、嵌入式片上系统等。 嵌入式系统的出现最初是基于单片机的。它从体系结构到指令系统都是按照嵌入式应用特点专门设计的,能最好的满足面对控制对象,应运系统的嵌入、现场的可靠运行以及非凡的控制品质要求。因此,她是典型的嵌入式系统。 第二章 1.89C51单片机内包含哪些主要逻辑功能部件? 答:80C51系列单片机在片内集成了以下主要逻辑功能部件: (l)CPU(中央处理器):8位 (2)片内RAM:128B (3)特殊功能寄存器:21个 (4)程序存储器:4KB (5)并行I/O口:8位,4个 (6)串行接口:全双工,1个 (7)定时器/计数器:16位,2个 (8)片内时钟电路:1个 2.89C51的EA端有何用途? 答:/EA端接高电平时,CPU只访问片内https://www.360docs.net/doc/6e6936060.html,并执行内部程序,存储器。/EA端接低电平时,CPU只访问外部ROM,并执行片外程序存储器中的指令。/EA 端保持高电平时,CPU执行内部存储器中的指令。 3. 89C51的存储器分哪几个空间?如何区别不同空间的寻址? 答:ROM(片内ROM和片外ROM统一编址)(使用MOVC)(数据传送指令)(16bits地址)(64KB) 片外RAM(MOVX)(16bits地址)(64KB) 片内RAM(MOV)(8bits地址)(256B) 4. 简述89C51片内RAM的空间分配。 答:片内RAM有256B 低128B是真正的RAM区 高128B是SFR(特殊功能寄存器)区 5. 简述布尔处理存储器的空间分配,片内RAM中包含哪些可位寻址单元。 答:片内RAM区从00H~FFH(256B) 其中20H~2FH(字节地址)是位寻址区 对应的位地址是00H~7FH

(精校版)单片机原理及应用期末考试试卷及答案

(完整word版)单片机原理及应用期末考试试卷及答案 编辑整理: 尊敬的读者朋友们: 这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整word版)单片机原理及应用期末考试试卷及答案)的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。 本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整word版)单片机原理及应用期末考试试卷及答案的全部内容。

单片机原理及应用期末考试试卷 班级:_______________学号:_______________姓名:_______________得分:_______________(卷面共有100题,总分100分,各大题标有题量和总分,每小题标号后有小分) 一、单项选择题(33小题,共33分) [1分](1)要MCS—51系统中,若晶振频率屡8MHz,一个机器周期等于( A )μs A 1。5 B 3 C 1 D 0.5 [1分](2)MCS—51的时钟最高频率是 ( A )。 A 12MHz B 6 MHz C 8 MHz D 10 MHz [1分](3)下列不是单片机总线是( D ) A 地址总线 B 控制总线 C 数据总线 D 输出总线 [1分](4)十进制29的二进制表示为原码( C ) A 11100010 B 10101111 C 00011101 D 00001111 [1分](5)电子计算机技术在半个世纪中虽有很大进步,但至今其运行仍遵循着一位科学家提出的基本原理。这位科学家是:( D ) (A)牛顿(B)爱国斯坦(C)爱迪生(D)冯·诺伊曼 [1分](6)在CPU中,控制器的功能是:( C ) (A)进行逻辑运算(B)进行算术运算 (C)分析指令并发出相应的控制信号(D)只控制CPU的工作 [1分](7)下列数据中有可能是八进制数的是:( A) (A)764 (B)238 (C)396 (D)789 [1分](8)MCS—51的时钟最高频率是 (D ) A、6MHz B、8MHz C、10MHz D、12MHz [1分](9)-49D的二进制补码为.( B) A、 11101111 B、11101101 C、0001000 D、11101100 [1分](10)要用传送指令访问MCS—51片外RAM,它的指令操作码助记符应是( B) A、 MOV B、 MOVX C、 MOVC D、以上都行 [1分](11)若某存储芯片地址线为12根,那么它的存储容量为(C ) A、1KB B、2KB C、 4KB D、 8KB [1分](12)PSW=18H时,则当前工作寄存器是(D ) A、 0组成 B、 1组成 C、2组成 D、3组成 [1分](13)所谓CPU是指( B) A、运算器与存储器 B、运算器与控制器 C、输入输出设备 D、控制器与存储器 [1分](14)PSW=18H时,则当前工作寄存器是(D ) (A)0组(B)1组(C)2组(D)3组 [1分](15)P1口的每一位能驱动( B ) (A)2个TTL低电平负载有(B)4个TTL低电平负载 (C)8个TTL低电平负载有(D)10个TTL低电平负载 [1分](16)二进制数110010010对应的十六进制数可表示为( A) A、192H B、C90H C、1A2H D、CA0H [1分](17)一3的补码是( D ) A、10000011 B、11111100 C、11111110 D、11111101 [1分](18)对于8031来说,脚总是( A ) A、接地 B、接电源 C、悬空 D、不用 [1分](19)进位标志CY在( C)中 A、累加器 B、算逻运算部件ALU C、程序状态字寄存器PSW D、DPOR

单片机原理与应用期末考试试题

单片机原理及应用期末考试试题 一、填空题(每空1分,共20分) 1.相对寻址是以PC的当前值为基准,加上指令中给出的相对偏移量形成目标地址的方式。 2.AT89S51单片机的1个机器周期含有12 个晶振周期或 6 状态周期。 3.AT89S51单片机进行扩展时,用P0 口作为地址/数据总线,用P2口作为地址总线高8位。 4.假定累加器A的容30H,执行指令:1000H:MOVC A,A+PC后,把程序存储器1031H单元的容送累加器A中 5.指令格式是由操作码和操作数部分组成。 6. AT89S51单片机的串行口控制寄存器中有2个中断标志位,它们是TI和RI 7.在进行BCD码加法运算时,紧跟ADD 或 ADDC 指令后的指令必须是DA A 指令 8. JNC rel指令执行时,当CY位为0时程序发生跳转。 9.单片机位寻址区的单元地址是从20H单元到2FH单元,若某位地址是10H,它所在单元 的地址应该是22H 。 10.外部中断0的中断入口地址为0003H,定时/记数器T1的中断入口地址为001BH。 11.串行口工作方式2为9位异步通信,若SMOD=0,f OSC = 6 MH Z,则其相应波特率为6×106/64 b/s 12.堆栈应遵循先进后出规律,堆栈指针的符号为SP 二、单项选择题(每小题1分,共20分) 1.AT89S51单片机的( d )口的引脚,还具有外中断、串行通信等第二功能。 a)P0 b)P1 c)P2 d)P3 2.单片机应用程序一般存放在(b) a)RAM b)ROM c)寄存器 d)CPU 3.已知某数的BCD码为00010 则其表示的十进制数值为(b) a) 7542H b) 7542 c) 75.42H d) 75.42

单片机原理及应用张毅刚课后习题答案完整版

第1章思考题及习题1参考答案 一、填空 1. 除了单片机这一名称之外,单片机还可称为或。答:微控 制器,嵌入式控制器. 2.单片机与普通微型计算机的不同之处在于其将、、和 三部分,通过内部连接在一起,集成于一块芯片上。答:CPU、存储器、I/O口、总线 3. AT89S52单片机工作频率上限为 MHz。答:33 MHz。 4. 专用单片机已使系统结构最简化、软硬件资源利用最优化,从而大大降低 和提高。答:成本,可靠性。 二、单选 1. 单片机内部数据之所以用二进制形式表示,主要是 A.为了编程方便B.受器件的物理性能限制 C.为了通用性D.为了提高运算速度答:B 2. 在家用电器中使用单片机应属于微计算机的。 A.辅助设计应用B.测量、控制应用

C.数值计算应用D.数据处理应用 答: B 3. 下面的哪一项应用,不属于单片机的应用范围。 A.工业控制 B.家用电器的控制 C.数据库管理 D.汽车电子设备 答:C 三、判断对错 1. STC系列单片机是8051内核的单片机。对 2. AT89S52与AT89S51相比,片内多出了4KB的Flash程序存储器、128B的RAM、 1个中断源、1个定时器(且具有捕捉功能)。对 3. 单片机是一种CPU。错 4. AT89S52单片机是微处理器。错 5. AT89C52片内的Flash程序存储器可在线写入,而AT89S52则不能。错 6. 为AT89C51单片机设计的应用系统板,可将芯片AT89C51直接用芯片AT89S51替换。对 7. 为AT89S51单片机设计的应用系统板,可将芯片AT89S51直接用芯片AT89S52替换。对

单片机原理及接口技术

《单片机原理及接口技术》试卷(闭卷A卷) 一.单项选择题(每题1分,共20分) 1.DPTR为() A.程序计数器 B.累加器 C.数据指针寄存 器 D.程序状态字寄存 2.PSW的Cy位为() A.辅助进位标志 B.进位标志 C.溢出标志位 D.奇偶标志位 3.MCS-51单片机片内ROM容量为() A.4KB B.8KB C.128B D.256B 4.MCS-51单片机片要用传送指令访问片外数据存储器,它的指令操作码助记符是以下哪个?( ) A.MUL B.MOVX C.MOVC D.MOV 5.direct表示() A.8位立即数 B.16位立即数 C.8位直接地址 D.16位地址 6.堆栈指针SP是一个()位寄存器 A.8 B.12 C.13 D.16 7.定时器/计数器工作方式选择中,当M1M0=11时,其工作方式为() A.方式0 B.方式1 C.方式2 D.方式3 8.定时器/计数器工作方式0为() A.13位定时/计数方式 B.16位定时/计数方式 C.8位可自动装入计数初值方式 D.2个8位方式 9.MCS-51的最小时序定时单位是() A.节拍 B.状态 C.机器周期 D.指令周期 10.#data表示() A.8位直接地址 B.16位地址 C.8位立即数 D.16位立即数 11.主频为12MHz的单片机它的机器周期为() A.1/12微秒 B.0.5微秒 C.1微秒 D.2 微秒 12.MCS-51单片机在同一优先级的中断源同时申请中断时,CPU首先响应()。 A.外部中断0 B.外部中断1 C.定时器0中断 D.定时器1中断 13.MOVC A ,@A+PC指令对于源操作数的寻址方式是() A.寄存器间接寻址 B.寄存器寻址 C.立即寻址 D.变地寻址 14. PSEN为()A.复位信号输入端 B.地址锁存允许信 号输出端 C.程序存储允许输出端 D.程序存储器地址 允许输入端 15.MCS-51单片机的一个机器周期由()个振荡脉冲组成。 A.2 B.4 C.6 D.12 16.MOVC A ,#30H指令对于源操作数的寻址方式 是() A.寄存器间接寻址 B.寄存器寻址 C.立即寻址 D.变地寻址 17.计算机能直接识别的语言为() A.汇编语言 B. 机器语言 C.自然语言 D.硬件和软件 18.PSW的OV位为() A.辅助进位标志 B.进位标志 C.溢出标志位 D.奇偶标志位 19.在单片机中()为程序存储器。A.ROM B. RAM C.EPROM D.EEPROM 20.能用紫外线光擦除ROM中的程序的只读存储器为() A.掩膜ROM B.PROM C.EPROM D.EEPROM 二、填空(每题 2 分,共 10 分) 1、从单片机系统扩展的角度出发,单片机的引脚可以构成三总线结构,即总线、地址总线和总线。 2、ALE信号的作用是。 3、MOV A,40H 指令对于源操作数的寻址方式是 寻址。 4、PC存放的内容为: 。 5、MCS-8051系列单片机字长是位,有 根引脚。 三、简答题:(共 25 分) 1、什么是单片机?简述单片机的应用领域。(15 分) 2、什么叫中断?中断有什么特点?(10 分) 四.已知:(R1)=32H,(30H)=AAH,(31H)=BBH,(32H) =CCH,求执行下列指令后累加器A.50H.R6.32H.和P 1口中的内容。(10分) MOV A ,#30H MOV 50H ,A MOV R6 ,31H

单片机原理及应用期末考试试题汇总

单片机原理及应用期末考试试题汇总

单片机原理及应用期末考试试题汇总 1、单片机是将微处理器、一定容量的 RAM 和ROM 以及 器等电路集成在一块芯片上而构成的微型计算机 2、 单片机89C51片内集成了 有 5 个中断 源。 3、 两位十六进制数最多可以表示 4、 89C51是以下哪个公司的产 品? 4 KB 的 FLASH RO ,共 256 个存储单元。 C ) A 、INTEL B 、AMD C 、ATMEL D 、PHILIPS 8、当CPU 访问片外的存储器时,其低八位地址由 P0 口提供,高八位 地址由 P2 口提供,8位数据由 P0 口提供。 9、在I/O 口中, P0 口在接LED 时,必须提供上拉电 阻, P3 口具有第二功能。 10、是非题:MCS-51系列单片机直接读端口和读端口锁存器的结果永远是相同 的。F 11、 是非题:是读端口还是读锁存器是用指令来区别的。 T 12、 是非题:在89C51的片内RAM 区中,位地址和部分字节地址是冲突的。 F 13、 是非题:中断的矢量地址位于 RAM 区中。F 14、 M CS-51系列单片机是属于( B )体系结构。 A 、冯诺依曼 B 、普林斯顿 C 、哈佛 D 、图 灵 15、 89C51具有 64 KB 的字节寻址能力。 16、 是非题:在89C51中,当CPU 访问片内、夕卜ROM 区时用MOV 指令,访问片 外RAM 区时用MOV 指令,访问片内 RAM 区时用MOV 旨令。T I/O 口、定时 5、在89C51中,只有当EA 引脚接 Flash ROM 。 高 电平时,CPU 才访问片内的 6、是非题:当89C51的EA 引脚接低电平时, 内是否有程序存储器。T CPL 只能访问片外ROM 而不管片 7、是非题:当89C51的EA 引脚接高电平时, CPU 只能访问片内的4KB 空间。F

单片机原理与接口技术课后答案

第一章 1:什么是单片机? 单片机是一种面向工业的微处理器,它将CPU、RAM、ROM存储器、定时计数器、中断系 统、I/O 接口电路集成在一个芯片上,也叫单片微型计算机。 由于体积小、功能强、可靠性高、功耗更低,可以嵌入到任何工业设备和仪器仪表中,被作为嵌入式控制器,被广泛地应用在工业控制领域。 2 单片机有哪些特点? 答: (1)单片机的存储器ROM和RAM是严格区分的。ROM称为程序存储器,只存放程序、固定常数及数据表格。RAM 则为数据存储器,用作工作区及存放用户数据。(2)采用面向控制的指令系统。(3)单片机的I/O 引脚通常是多功能的。(4)单片机的外部扩 展能力强。(5)单片机体积小,成本低,运用灵活,易于产品化。(6)面向控制,能有 针对性地解决从简单到复杂的各类控制任务,因而能获得最佳的性能价格比。(7)抗干扰 能力强,适用温度范围宽。(8)可以方便地实现多机和分布式控制,使整个控制系统的效 率和可靠性大为提高。 3 单片机的应用有哪些? 答: (1)工业控制。单片机可以构成各种工业控制系统、数据采集系统等。如数控机床、自动生产线控制、电机控制、测控系统等。(2)仪器仪表。如智能仪表、医疗器械、数字示波器等。(3)计算机外部设备与智能接口。如图形终端机、传真机、复印机、打印机、绘图仪、磁盘/磁带机、智能终端机等。(4)商用产品。如自动售货机、电子收款机、电子秤等。(5)家用电器。如微波炉、电视机、空调、洗衣机、录像机、音响设备等。(6)消费类电子产 品。(7)通讯设备和网络设备。(8)儿童智能玩具。(9)汽车、建筑机械、飞机等大型 机械设备。(10)智能楼宇设备。(11)交通控制设4.常见的单片机有哪些类型? 答: 1 .AVR 单片机;2.Motorola 单片机;3.MicroChip 单片机;4.Scenix 单片机;5.EPSON 单片机;7.GMS90 单片机;8.华邦单片机9.Zilog 单片机;10.NS 单片机;11.AX1001 单片机 第二章 1,MCS-51 单片机内部包含哪些主要逻辑功能部件 答:(1)1 个8 位的微处理器CPU。(2)8KB 的片内程序存储器Flash ROM(51 子系列 的Flash ROM为4KB),用于烧录运行的程序、常数数据。(3)256B 的片内数据存储器 RAM(51 子系列的RAM 为128B),在程序运行时可以随时写入数据和读出,用于存放函 数相互传递的数据、接收的外部数据、中间结果、最后结果以及显示的数据等。(4)3 个

单片机原理及应用期末考试试题

单片机原理及应用期末考试试题

单片机原理及应用期末考试试题 一、填空题(每空1分,共20分) 1.相对寻址是以PC 的当前值为基准,加上指令中给出的相对偏移量形成目标地址的方式。 2.AT89S51单片机的1个机器周期含有12 个晶振周期或 6 状态周期。 3.AT89S51单片机进行扩展时,用P0 口作为地址/数据总线,用P2 口作为地址总线高8位。 4.假定累加器A的内容30H,执行指令:1000H:MOVC A,@A+PC后,把 程序存储器1031H单元的内容送累加器A中5.指令格式是由操作码和操作数部分 组成。 6.AT89S51单片机的串行口控制寄存器中有2 个中断标志位,它们是TI和RI 7.在进行BCD码加法运算时,紧跟ADD 或 ADDC 指令后的指令必须是DA A 指令 8.JNC rel指令执行时,当CY位为0时程序发生跳转。 9.单片机位寻址区的单元地址是从20H单元到 2FH单元,若某位地址是10H,它所在单元 的地址应该是22H 。 10.外部中断0的中断入口地址为0003H ,定时/记数器T1的中断入口地址为 001BH。 11.串行口工作方式2为9位异步通信,若SMOD=0,f OSC = 6 MH Z,则其相应波特 率为6×106/64 b/s

12.堆栈应遵循先进后出规律,堆栈指针的符号为SP 二、单项选择题(每小题1分,共20分) 1.AT89S51单片机的( d )口的引脚,还具有外中断、串行通信等第二功能。 a)P0 b)P1 c) P2 d)P3 2.单片机应用程序一般存放在(b) a)RAM b)ROM c)寄存器 d)CPU 3.已知某数的BCD码为0111010101000010 则 其表示的十进制数值为(b) a) 7542H b) 7542 c) 75.42H d) 75.42 4.下列指令中不影响标志位CY的指令有(d)。 a)ADD A,20H b)CLR c)RRC A d)INC A 5.CPU主要的组成部部分为(a) a)运算器、控制器b)加法器、寄存器 c)运算器、寄存器d)运算器、指令译 码器 6.AT89S51 的CPU是(c)位的单片机 a)16 b) 4 c)8 d)准16 7.AT89S51复位后,PC与SP的值为(b) a )0000H,00H b)0000H, 07H c) 0003H,07H d)0800H,00H 8.当需要从AT89S51单片机程序存储器取数据时,采用的指令为(b)。

单片机原理及应用试题及答案

广西工学院 2002 — 2003 学年第 2 学期课程考核试题考核课程单片机原理及应用考核班级自动化00级 学生数 145 印数 150 考核方式闭卷考核时间 120 分钟 一.填空题(每空1分,共20分) 1、单片机与普通计算机的不同之处在于其将CPU 微处理器、存储 器和I/O口三部分集成于一块芯片上。 2、使用双缓冲方式的D/A转换器,可实现多路模拟信号的同时输出。习题11.4 3、通过堆栈操作实现子程序调用,首先就要把PC的内容入栈,以进行断点保 护。调用返回时,再进行出栈保护,把保护的断点送回到PC。习题2.17 4、在基址加变址寻址方式中,以累加器A作变址寄存器, 以DPTR或PC 作基址寄存器。3.3 5、假定累加器A中的内容为40H,执行指令 1000H:MOVC A,@A+PC 后,把程序存储器1041H单元的内容送入累加器A中。 6、在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作 数,而是操作数的地址。3.10 7、假定A=83H,(R0)=17H,(17H)=0B5H,执行以下指令: ANL A,#17H ORL 17H,A XRL A,@R0 CPL A 后,A的内容为4BH 。 解析: ANL A,#17H ;A中83H与17H相与,(A)=03H ORL 17H,A ;(17H)中0B5H与(A)中03H相或,(17H)=B7H XRL A,@R0 A ;(A)中03H与(17H)中B7H异或,(A)=B4H

CPL A ;对A取反, A=4BH 8、已知程序执行前有A=01H,SP=42H,(41H)=FFH,(42H)=FFH。下述程序执行后: POP DPH POP DPL MOV DPTR,#3000H RL A MOV B,A MOVC A,@A+DPTR PUSH A MOV A,B INC A MOVC A,@A+DPTR PUSH A RET ORG 3000H DB 10H,80H,30H,80H,50H,80H 请问:A= 80H,SP= ,(41H)= ,(42H)= 。 9、在存储器扩展中,无论是线选法还是译码法,最终都是为了扩展芯片的片选端提供信号。 10、在MCS-51中,PC和DPTR都用于提供地址,但PC是为了访问程序存 储器提供地址,而DPTR是为访问数据存储器提供地址。 11、16KB RAM存储器的首地址若为3000H,则末地址为 H。 解析:1000H=0001 0000 0000 0000B=2^12=4K,16K就是4000H,即:0100 0000 0000 0000B=2^14 所以末地址为:7000H-1=6FFFH

单片机原理与接口技术习题

单选题 1.执行中断返回指令RETI,会从堆栈取出数作为地址送给(C )。 1. A. DPTR 2. B. PSW 3. C. PC 4. D. Rn 2、从MCS-51单 片机外部数据 存储器取数据 时,可以采用指 令(D )。 1. A. MOV A , R1 2. B. POP A 3. C. MOVC A , @A+DPTR 4. D. MOVX A , 3、指令MOV A, @R0 中源操作 数的寻址方式 为(B )。 1. A. 寄存器寻 址

2. B. 寄存器间接寻址 3. C. 立即寻址 4. D. 直接寻址 4、MCS-51单片机是根据(A )中的数值作为 地址读取指令。 1. A. PC 2. B. DPTR 3. C. SP 4. D. PSW 5、8051单片机使用2MHz的晶振,一个机器周期是(C )微秒。 1. A. 1 2. B. 4

3. C. 6 4. D. 12 6、用于设置定时器/计数器工作方式的寄存器是(D )。 1. A. PCON 2. B. TCON 3. C. SCON 4. D. TMOD 7、若需要从MCS-51单片机外部数据存储器取数据时,可以采用的指令为(A )。 1. A. MOVX A, @R0 2. B. MOV A, @R1

3. C. MOVC A, @A + DPTR 4. D. POP A 8、MCS-51单片机复位操作会把PC初始化为( B )。 1. A. 0100H 2. B. 0000H 3. C. 0003H 4. D. 000BH 9、MCS―51单片机一个机器周期由(D)个振荡周期构成。 1. A. 1 2. B. 4 3. C. 6

单片机原理及应用的试题库

一、选择题 1.单片机复位后,SP PC I/O口的内容为 A.SP = 60H PC = 00H P0 = P1 = P2 = P3 = FFH B.SP = 00H PC = 0000H P0 = P1 = P2 = P3 = 00H C.SP = 07H PC = 0000H P0 = P1 = P2 = P3 = FFH D.SP = 00H PC = 00H P0 = P1 = P2 = P3 = 00H 答案: 2.8051有四个工作寄存器区,由PSW状态字中的RS1和RS0两位的状态来决定,单片机复位后,若执行SETB RS0 指令,此时只能使用区的工作寄存器。 A.Ⅰ区 B.Ⅱ区 C.Ⅲ区 D.Ⅳ区 3、ATMEL的89C51驱动能力最强的并行端口为。 A.P0 B.P1 C.P2 D.P3 4.读片外部数据存储器时,不起作用的信号是。 A./RD B. /WE C./PSEN D.ALE 5.利用KEIL软件进行仿真调试时,在执行调用指令时,调试可跟踪到子程序内部并逐条执行子程序内部的各条指令。 A.暂停B.调试C.单步 D.连续运行 6.已知:MOV A,#28H MOV R0,#20H MOV @R0,A ANL A, #0FH ORL A, #80H XRL A, @R0 执行结果A的内容为 A. A0H B.28H C.08H D.88H 7.在进行BCD码运算时,紧跟加法运算指令后面的指令必须是指令。 A.ADD B.DA A C.ADDC D.由实际程序确定 8.在MCS-51中,需要外加电路实现中断撤除的是: A.定时中断 B.脉冲方式的外部中断 C.外部串行中断 D.电平方式的外部中断 9.关于定时器,若振荡频率为12 MHz,在方式1下最大定时时间为

单片机原理及接口技术 复习要点

单片机原理及接口技术复习要点 第1章微型计算机基础 1、常用进制转换 2、原码、补码表示方法及表示范围,符号扩展 3、无符号数及有符号数的加减运算 4、二进制数的逻辑运算 5、ASCII码及BCD码 第2章MCS-51单片机的结构和原理 1、CPU,存储器和总线等概念 2、单片机的定义及组成 3、8051单片机的内部RAM的结构 1)寄存器区(00H~1FH单元) 2)位寻址区(20H~2FH单元) 3)特殊功能寄存器 4、标志寄存器CY,OV,P 5、堆栈和SP 6、时钟和复位电路,复位时PC,SP的内容 7、MCS-51单片机引脚 第3章汇编语言与汇编程序 1、符号指令的寻址方式 (1)寄存器寻址 (2)立即寻址 (3)直接寻址 (4)间接寻址 (5)变址寻址 (6)位寻址 2、数据传送类指令 掌握:MOV,MOVC,MOVX,PUSH,POP 了解XCH,XCHD,SWAP 3、算术运算指令 掌握:ADD,ADDC,INC,SUBB,DEC,MUL,DIV,DA

4、逻辑运算及移位类指令 ANL,ORL,XRL,CPL,RR,RL,RRC,RLC 5、位操作指令 掌握SETB,CLR,MOV,了解ANL,ORL,CPL位操作 6、常量、数据标号和指令标号 7、汇编地址计数器$,ORG 8、指令周期、机器周期、状态 第4章汇编语言程序设计 1、顺序程序设计 BCD码,ASCII码相互转换, 2、分支程序设计 (1)条件转移指令:JZ,JNZ,JC,JNC,JB,JNB (2)比较不等转移指令:CJNE (3)无条件转移指令 (4)掌握AJMP,了解LJMP,JMP,SJMP 十六进制数与ASCII码的相互转换,无符号数比较大小 3、循环程序设计 掌握DJNZ指令,缓冲区数据读取,写入操作,多数据累加求和等。 4 子程序的概念,主程序与子程序间的参数传递,子程序的调用指令与返回指令,子程序的设计 第5章MCS-51单片机内部接口电路 1、接口的概念及功能 2、数据传送方式及特点 3、传送控制方式:查询方式、中断方式、DMA方式 4、中断的概念,处理过程,中断优先权,中断的处理过程、中断源、中断标志位、中断允许寄存器,中断入口地址 5、中断程序设计 主程序:中断入口地址设置;开中断源中断允许位,开CPU总中断 中断服务程序:注意保护现场和恢复现场,中断返回。

相关文档
最新文档