1、 片内寄存器有 4 组,复位后,指向第 0 组,若要使用其中某一组,应如何通过程序设定?
例如: 执行 SETB RS1
SETB RS0 指令后通用寄存器指向第 3 组
2、MCS-51单片机片内特殊功能寄存器所占存储空间的地址: 80H-FFH 可作位寻址的存储单元地址: 20H-2FH
3、在进行 BCD码运算时,紧跟运算指令后面的指令必须是 DA(十进制调整)指令 4、状态、节拍、机器周期的关系
答:1个机器周期为6个状态周期,为12个节拍(振荡周期/时钟周期)
5、当串行口向单片机的 CPU 发出中断请求时,若 CPU 允许并接受中断时,程序计数器 PC 的内容会怎么
变化?
答:程序计数器PC会先将当前地址入栈,再装入串行中断入口地址从而跳转到中断服务程序中执行中断服
务程序 6、要想把数字送入DAC0832的输入缓冲器,其控制信号应满足什么条件?
答: ILE=1, CS=0, WR1=0 7、程序计数器PC的作用是什么?
答:PC是16位的专用寄存器,其内容表示下一条要执行的指令 8、中断源有哪些?中断服务程序入口地址? 答:中断源有:外部中断0(入口地址0003H)、定时器/计数器0溢出中断(入口地址000BH)、外部中断1(入口地址0013H)、定时器/计数器1溢出中断(入口地址001BH)、串行口中断(入口地址0023H) 9、51单片机有多少位地址总线、数据总线?分别由哪些引脚组成?可寻址的最大地址空间范围是多大。 答:51单片机有16位地址总线,地址高8位由P2.7-P2.0组成,地址低8位由P0.7-P0.0组成,共16位地址,可寻址的最大空间范围为0-KB,有8位数据总线,由P0.7-P0.0组成。 10、定时器/计数器的几种工作方式。
11、单片机每个引脚功能、每组I/O口的作用。引脚ALE的作用是: 地址锁存 12、单片机存储空间的分配
分析下面程序的功能 1、 ORG 1000H
KEY: DB 15H NOM EQU 8 START: MOV R0,#30H MOV R1,#40H MOV R7,#NOM MOV R3,#0 LOOP: MOV A,@R0 CJNE A,KEY,NEXT INC R3 MOV A,R0 MOV @R1,A INC R1 NEXT: INC R0 DJNZ R7,LOOP MOV A,R3 MOV @R0,A HALT: SJMP $ END
功能:统计30H-37H单元中有多少个与15H相等的数据,并将统计与15H相等的数据的个数放入38H单元
中,将与15H相等的数据单元存储地址放入开始地址为40H的单元中。
2、 ORG 0000H
AJMP MAIN
ORG 000BH CPL P1.0 RETI ORG 0100H
MAIN: MOV TH0,#40H MOV TL0,#40H MOV TMOD,#00000010B SETB TR0
WAIT: SJMP $ SJMP WAIT
功能:计数器计数192次之后对P1.0取反一次 写出以下程序:
1、有两个双字节无符号数分别存放在30H、31H和32H、33H单元,低字节存放低地址,将他们相加和存于
30H、31H中。 ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV R1,#30H MOV R2,#32H MOV A,@R1 ADD A,@R2 INC R1 INC R2 MOV A,@R1 ADDC A,@R2 MOV @R1,A AJMP $ END
2、写出软件定时50ms的程序 DELAY: MOV R0,#100 DL2: MOV R1,#165 DL1: NOP DJNZ R1,DL1 NOP NOP DJNZ R0,DL2 RET
定时时间=[1+1+1+(1+2)×165+2]×100+3=(50000+3)≈50ms(前提时钟晶振为12MHZ)
3、将累加器A的低四位数据送至P1口的高四位,P1口的低四位保持不变。 ORG 0000H LJMP MAIN ORG 0030H MAIN: ANL P1,#0FH SWAP A ANL A,#0F0H ORL P1,A AJMP $ END
4、MCS-51单片机时钟频率为12MHZ,若要求定时时间0.3ms,以定时器T1工作在方式0、方式1和方式2,其时间常数初值各应是多少?写出工作于方式2时的初始化程序 答:方式0时间常数初值为1ED4H,方式1时间常数初值为FED4H
在方式2时以150us为基准定时装入时间常数初值为6AH。 程序: ORG 0000H LJMP MAIN ORG 000BH LJMP T0INT ORG 0030H MAIN: MOV SP,#60H MOV R7,#2 MOV TMOD,#02H MOV TH0,#6AH MOV TL0,#6AH SETB EA SETB ET0 SETB TR0 L: LJMP L T0INT: DJNZ R7,L1 CPL P1.0 L1: RETI END 5、利用单片机与DAC接口,产生梯形波。
ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV DPTR,#4000H AGAIN: MOV R0,#00H MOV R7,#0FFH MOV A,R0
;------------------------------ WW1: MOVX @DPTR,A INC A DJNZ R7,WW1 ACALL DELAY
;------------------------------ MOV R7,#0FFH
DAC80321234567813121514311911716P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7INT1INT0T1T0EAX1X2RESETRDWR80C51RXDTXDALEPSEN10113029P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.739383736353433322122232425262728765416151413DI0DI1DI2DI3DI4DI5DI6DI7IOUT1IOUT2RFBVREFVCCILE117CSXFERWR2WR11112982019182RLVCC-+80C51梯形波WW2: MOVX @DPTR,A DEC A DJNZ R7,WW2 ACALL DELAY AJMP AGAIN
;------------------------------- DELAY: MOV R0,#100 L1: MOV R1,#165 L2: NOP DJNZ R1,L2 NOP NOP DJNZ R0,L1 RET END
6、U1和U2的地址范围是多少
将U1中以#DATA为起始地址的20个字节数据表传送到U2的以#TABLE为起始地址的单元
U1:6000H~7FFFH MOV DPTR,#DATA MOV R1,#60H MOV R7,#20 LOOP1: MOVC A,@DPTR MOV @R1,A INC DPTR INC R1 DJNZ R7,LOOP1
U2:E000H~FFFFH MOV DPTR,#TABLE MOV R1,#60H MOV R7,#20 LOOP2: MOV A,@R1 MOVX @DPTR,A INC DPTR INC R1 DJNZ R7,LOOP2