当前位置:文档之家› 单片机部分习题答案资料

单片机部分习题答案资料

单片机部分习题答案资料
单片机部分习题答案资料

第2章:

2、CIP-51有哪些存储空间?各个存储空间的功能及寻址范围是什么?

有程序存储器、内部数据存储器、外部数据存储器、特殊功能寄存器和位寻址区五个独立的地址空间。

●程序存储器:存放程序和常数,容量为64KB,地址范围0000H-0FFFFH

●内部数据存储器:用于通用寄存器和存放数据的临时存储器,容量为256B,地址范围00H-0FFH

●外部数据存储器:用于存放数据,容量为64KB(有4KB在芯片内部),地址为0000-0FFFFH

●特殊功能寄存器(SFR):提供对片内资源和外设的访问和控制,以及与外设的数据交换,C8051F020有122

个,离散分布在地址80H-0FFH中。

●位地址空间:存放位变量,进行布尔运算,容量为256位,有内部RAM的20H-2FH(16字节,128位)和

部分SFR(字节地址可以被8整除的)组成,地址范围为00H-0FFH

3、CIP-51的内部RAM空间有多少字节?它们在应用中有什么专门用途?堆栈一般应设置在什么位置?

●内部RAM有256字节

●低128B中的00H-1FH用于通用寄存器,20H-2FH既可以字节寻址也可以位寻址,30H-7FH作一般存储器

用;高128B因为与SFR地址重叠,故只能间接寻址,也作一般存储器用

●理论上堆栈可以设在内部数据存储器的任何位置,复位时堆栈指针SP为07H,但为了避开通用寄存器和位地

址空间,一般设在30H-0FFH。

5、读写内部RAM与外部RAM的数据时,使用的指令有什么区别?读程序存储器的数据的指令又有什么不同?读写内部RAM用MOV指令;读写外部RAM用MOVX指令;读程序存储器用MOVC指令,写程序存储器用MOVX指令,但为与写外部RAM相区分,需要对相应SFR的相关位进行设置。

6、若(PSW)=0x10,则当前的R0~R7在内部RAM中有哪些单元?

由(PSW)=0x10可知RS1RS0=10,故通用寄存器R0-R7在内部RAM的0x10-0x17单元。(PSW的格式P22)第一次作业存在的问题:

第一题:5个存储空间,有的同学写的不全,漏SFR和位寻址区;有的同学对位寻址区的寻址范围写的不对,应为0x00-0xff而非0x20-0x2f。

第三题:内部RAM每一部分的专门作用,尤其低128B要再分类说明;片内XRAM不算片内RAM;堆栈一般在0x30-0xff,而非0x30-0x7f。

第六题:部分同学不会做;要查询PSW的格式,RS1RS0的作用,P22表2-2

8、请叙述中断的响应过程。一个中断请求从提出到CPU响应最短要多长时间?如果CPU响应中断的条件全部具备,响应中断最长的时间是多少?在什么样的情况下会出现这个响应时间?

C8051F的每个系统时钟周期对中断标志采样并对优先级译码,如果允许中断响应,则置位相应的优先级状态触发器,然后执行一条硬件长调用指令,控制转移到相应的入口,清相应中断请求标志(有些需要在中断服务程序中清除,如RI、TI),接着PC压栈(但不保护PSW),将中断服务程序的入口地址送给PC,完成中断响应。

最快需要5个系统时钟周期:1个中断检测周期,4个对ISR的调用周期(LCALL)。最慢发生在CPU正在执行RETI指令的时候,需要再执行一条指令才能进入中断服务程序,而最慢的指令是DIV需要8个系统时钟周期。因此,最慢需要18个系统时钟周期:1个中断检测周期,5个执行RETI的周期,8个执行DIV指令的周期,4个对ISR的调用周期(LCALL)。

9、C8051F020单片机的外部RAM有片内和片外之分,如何实现片外的RAM?复用与非复用方式的外部RAM

是什么意思?数据总线和地址总线是如何连接的?

通过外部数据存储器接口EMIF实现片外数据存储器,用并行口P0-P3或P4-P7实现数据总线和地址总线,数据线和地址线可以复用也可以非复用,由EMIOCF控制。

复用是指数据总线和地址总线的低8位共用一组端口信号线。非复用是指数据总线和地址总线的低8位各用单独的一组端口信号线。

若用低端端口实现,复用时用P2口提供地址高8位,P3口提供地址低8位和数据线;非复用时用P1口提供高8位地址线,P2口提供地址线低8位,P3口提供数据线。若用高端端口实现,非复用则用P5、P6提供地址高、低8位,P7做数据线,复用则用P6提供地址线高8位,P7提供地址低8位和数据线。

10.什么是优先权交叉开关译码器?C8051F020单片机有多少数字I/O口?C8051F单片机的引脚与片内资源是如何对应的?

C8051F单片机没有为定时器、串行口、A/D、D/A等提供单独的引脚信号线,而是用并行口P0-P3提供,C8051F 单片机允许使用部分数字和模拟外设,没有用到的就不用分配引脚信号,因此内部提供了一个优先交叉开关译码电路,实现P0-P3和这些资源的可编程连接,这就是优先交叉开关译码器。

C8051F单片机有64位数字I/O端口。其中P0-P3可以按照优先交叉开关译码的方式为片内资源分配引脚,用端口I/O交叉开关寄存器XBR0-XBR2实现。

11、假如一个单片机应用系统中要用到的资源位UART0、SMBus、SPI、和CP0分配端引口(共9个引脚)。另外将外部存储器解耦配置为复用方式并使用低端口。同时还将P1.2、P1.3、P1.4配置为模拟输入,以便用ADC1测量加在这些引脚上的电压。试用Config软件进行优先权交叉开关译码器的配置,写出配置步骤,配置XBR0~XBR2等相关SFR的值。

(1)按UART0EN=1(XBR0.2)、SMB0EN=1(XBR0.0)、SPI0EN=1(XBR0.1)、CP0E=1(XBR0.7)、EMIFLE=1(XBR2.1)设置XBR0、XBR1、XBR2得XBR0=0x87、XBR1=0x00、XBR2=0x02;

(2)存储器接口配置为复用方式并使用低端口,有PTRSEL=0(EMIOCF.5)、EMD2=0(EMIOCF.4);(3)P1.2~P1.4配置为模拟输入方式有:P1MDIN=0xe3;

(4)设置XBARE=1使能交叉开关,则XBR2=0x42。UART0优先级最高,P0.0、P0.1分配给TX0、RX0;SPI 优先权次之,P0.2~P0.4分配给SCK、MISO、MOSI、P0.5~P0.7分配给ALE、/RD、/WR、P1.0分配给NSS;下一个优先的是SMBUS,P1.1分配给SDA、P1.2~P1.4做模拟量输入,跳过,P1.5分配给SCL;再下面的优先权是CP0,P1.6分配给CP0;

(5)UART0的TX0(P0.0)、ALE(P0.5)、/RD(P0.6)、/WR(P0.7)的输出设置为推挽方式,P0MDOUT=0xe1;(6)P2、P3设置为推挽方式P2MDOUT=0xff、P3MDOUT=0xff;

(7)P1设置为漏极开路方式,并禁止3个模拟输入的输出驱动:P1MDOUT=0x00、P1=0xff。

13、8051F单片机进入空闲方式时,单片机的振荡器是否工作?采用何种方法能使单片机退出空闲方式?

工作。复位或中断。

14、C8051F020有几个复位源,分别是什么?自己的项目中最常使用的是什么复位源?

7个:上/电复位、外部/RST引脚复位、外部CNVSTR信号复位、软件命令复位、比较器0复位、时钟丢失检测器复位、WatchDog超时复位。

15、再简单的试验程序中,如果看门狗定时器复位不使用,该如何禁用?

向WDTCN写入0xDE后,4个系统时钟周期内再写入0xAD。该过程不应被中断。C51代码:

EA=0; //禁止中断

WDTCN=0xDE; WDTCN=0xAD; EA=1; //允许中断 第三章:

1、片外RAM 从1000H~10FFH 单元有一数据块,用汇编语言编写程序将其传送到片外RAM 的2500H 单元开始的区域中。

$INCLUDE(C8051F020.INC)

org 0000h mov dptr,#1000h

mov r2,#256(mov r2,#0) mov r3,#25h mov r4,#00h loop:movx a,@dptr

push dph

push dpl 或者 mov dph,r3 mov dpl,r4 movx @dptr,A pop dpl pop dph inc dptr inc r4 djnz r2,loop sjmp $ end

3、用汇编语言编写将累加器A 的一位十六进制数(A 的高4位为0)转换为ASC II 码的程序,转换结果仍存放在累加器A 中,要求用查表和非查表两种方式实现。

ADD A ,#30H

CJNE A ,#3AH ,CONT CONT :JNC ADD7

JMP EXIT ADD7:ADD A ,#7 EXIT :SJMP $ END

4、用汇编语言编程实现函数,设x 的值存放在片内RAM 的35H 单元,y 的值存放在片内RAM 的36H 单元。 y =x+1 ,x>10;0,5<=x<=10;-1,x<5 MOV A,35H ;取x

CJNE A,#11,NEXT1 ;与11比较,不等于11,转NEXT1 NEXT1:JNC NEXT2 ;大于等于11,转NEXT2

CJNE A,#5,NEXT3 ;小于11,再与5比较,不等于5转NEXT3

$INCLUDE(C8051F020.INC) org 0000h mov dptr,#1000h mov EMIOCN,#25H mov r2,#0H mov r0,#00H loop:movx a,@dptr movx @r0,a inc dptr inc r0 djnz r2,loop sjmp $ end

ORG 0000H SJMP MAIN ORG 0100H MAIN:MOV R4,#0

MOV DPL,#0 NEXT:MOV DPH,#10H

MOVX A,@DPTR MOV DPH,#25 MOVX @DPTR,A INC DPL

DJNZ R4,NEXT (CJNE DPL,#0,NEXT )

SJMP $

END ;若两个区域的低8位地址不同,该方法不可以

NEXT3:JNC NEXT4 ; 无借位(大于等于5),转NEXT4 MOV A,#-1 ;小于5

AJMP NEXT5

NEXT4:MOV A,#0 ;5到10之间AJMP NEXT5

NEXT2: ADD A,#1 ;大于10 NEXT5:MOV 36H,A

SJMP $

END

或(同学作业):

X EQU 35H

Y EQU 36H

ORG 0000H

AJMP START

ORG 0100H

START:MOV A,X

CLR C

SUBB A,#05H

JNC NEXT

MOV Y,#0FFH

AJMP DONE

NEXT:MOV A,X

CLR C

SUBB A,#0BH

JNC NEXT1

MOV Y,#00H

AJMP DONE

NEXT1:MOV A,X

INC A

MOV Y,A

DONE:SJMP DONE

END 补充:符号函数

MOV A,35H

JZ DONE

JNB ACC.7,POSI

MOV A,#-1(0FFH)

SJMP DONE POSI: MOV A,#1 DONE: MOV 36H,A

SJMP $

END

MOV A,35H

JZ DONE

MOV R0,#0FFH

JB ACC.7,NEG

MOV R0,#01H NEG: MOV A,R0 DONE: MOV 36H,A

SJMP $

END

6、用汇编语言编写程序,将R0中的8位二进制数的各位用其ASC II 码表示,结果保存到片内RAM 的30H 开始的单元中。

MOV R1,#30H MOV R7,#8 MOV A ,R0 NEXT: RLC A

JC 0NE

MOV @R1,#30H JMP EXIT 或者 ONE: MOV @R1,#31H EXIT: INC R1

DJNZ R7,NEXT SJMP $ END

11、用汇编语言编程求两个无符号数据块中最大值的乘积。数据块的首地址分别为片内RAM 的60H 和70H ,每

个数据块的第一字节用来存放数据块的长度。结果存入片内

MOV R0,#60H ACALL MAX

MOV B,A ;第一个数据块最大值 MOV R0,#70H ACALL MAX

MUL AB ;两个数据块最大值相乘 MOV 5FH,B MOV 5EH,A SJMP $

MAX: MOV A,@R0;数据块长度

DEC A MOV R7,A INC R0

MOV A,@R0;第一个数据

LOOP: CLR C

MOV B,A INC R0 MOV A,@R0

SUBB A,B ;两个比较,也可以用CJNE 实现 JNC NEXT MOV A,B SJMP NEXT1

$INCLUDE(C8051F020.INC) X DATA 30H Y EQU 20H ORG 0000H AJMP START ORG 0100H START:MOV DPTR,#TAB

MOV SP,#3FH MOV R1,#X MOV Y,#00H MOV A,R0

LOOP:MOV B,02H DIV AB PUSH ACC MOV A,B

MOVC A,@A+DPTR MOV @R1,A POP ACC INC R1 INC Y JNB Y.3,LOOP SJMP $

TAB :DB ‘0’,’1’ END

NEXT: ADD A,B

NEXT1:DJNZ R7,LOOP (下一行)RET

第4章:

5.利用C8051F020单片机的T0计数,每计10个脉冲,P1.0取反一次,试用查询和中断两种方式编程。确定工作方式,计算初值:选方式2计数方式,初值=256-10=246=0xf6;

查询方式程序:

sbit P1_0=P1^0;

void main(void)

{

//关看门狗

WDTCN=0xde;

WDTCN=0xad;

//配置交叉开关

XBR1=0x02;//允许T0外部输入

XBR2=0x40;//使能交叉开关

//初始化定时器0

TMOD=0x06;// 方式2计数

TL0=OxF6;

TH0=OxF6;

TR0=1;//启动T0

While(1)

{

While(!TF0);//等待计数溢出

TF0=0;

P1_0=!P1_0;

}

}

中断方式程序:

sbit P1_0=P1^0;

void main(void)

{

//关看门狗

WDTCN=0xde;

WDTCN=0xad;

//配置交叉开关

XBR1=0x02;//允许T0外部输入

XBR2=0X40;

//初始化定时器0

IE|=0x82;//允许T0中断

While(1);//等待中断

}

void T0_ISR(void) interrupt 1 {

P1_0=!P1_0;

}

TMOD=0x06;// 方式2计数 TL0=OxF6; TH0=OxF6; TR0=1;//启动T0

8.在C8051F020单片机中,已知系统时钟频率为12MHz ,编写程序使P1.0和P1.1分别输出周期为2ms 和50μs 的方波。

解:P1.0和P1.1分别每1ms 和25μs 取反一次即可。选T0方式1定时25μs ,每溢出40次P1.0取反一次。初值计算:由P157公式:10212

N

osc T M T TC f -=-

?()

,选T0M=0得: a=216-25=65511=0xffe7;

程序:

sbit P1_0=P1^0; sbit P1_1=P1^1; int count=40; void main(void) {

//关看门狗 WDTCN=0xde; WDTCN=0xad; //使能交叉开关 XBR2=0x40; //初始化定时器0

TMOD=0x01;// 方式1定时 TL0=0xe7; TH0=0xff ;

IE|=0x82;//允许T0中断 TR0=1;//启动T0 While(1);//等待中断 }

void T0_ISR(void) interrupt 1 {

TL0|=0xe7; TH0=0xff ; P1_0=!P1_0; Count--;

If(Count==0){ P1_1=!P1_1; Count=40;}

}

15.当C8051F020的串行口工作在方式2、3时,它的第9数据位可用作“奇偶校验位”进行传送,接收端用它来核对接收到的数据正确与否。试编写串行口方式2带奇偶校验的发送和接收程序。 解:发送程序: void send(char ch) {

ACC=ch; TB80=P; SBUF0=ch; While (!TI0); TI0=0; }

接收程序: char receive(void) {

While (!RI0); RI0=0; ACC=SBUF0;

If (RB80==P) return ch; }

16. 设甲乙两机采用UART0方式1通信,波特率为4800,甲机发送0、1、2…、1FH ,乙机接受并存放在内部RAM 以20H 为首地址的单元,试用查询和中断两种方式编写甲、乙两机的程序(系统时钟为12MHz) 设利用T1工作在定时方式2(自动重装初值)提供波特率,T1M=0(按振荡器12分频)计数,SMOD0=0,T1初值计算如下:

X=256-波特率)

(???-32122)11(0M T SMOD SYSCLK =256-4800

32121012)10(6???-=250=FAH

#include

unsigned char xdata tbuf[]={0x0,0x1,…,0x1f}; void main(void) {

unsigned char i;

unsigned char xdata *p=tbuf;

XBR0=0x04; //配置交叉开关 XBR2=0x40;

P0MDOUT|=0x01;//TX0(P0.0)为推挽输出方式 TMOD=0x20; //初始化并启动T1

TH1=0xfa;

TL1=0xfa;

TR1=1;

SCON0=0x40; //UART0初始化

for(i=0;i<32;i++)

{

SBUF0=*p; //一字节送发送SBUF0

p++;

while(!TI0); //等待发送完成

TI0=0;

}

}

查询方式接收程序:

#include

void main(void)

{

unsigned char i;

char data *p; //发送数据块地址指针

XBR0=0x04; //配置交叉开关

XBR2=0x40;

P0MDOUT|=0x01;//TX0(P0.0)为推挽输出方式

TMOD=0x20; //初始化并启动T1

TH1=0xfa;

TL1=0xfa;

TR1=1;

SCON0=0x50; //UART0初始化,允许接收

p=0x20; //地址指针初始化

for(i=0;i<32;i++)

{

while(!RI0); //等待UART0接收一个字符

RI0=0;

*p=SBUF0; //放入接收缓冲区

p++;

}

}

……参考P195例4.7

正弦波发生器程序:DAC0输出更新发生在写DAC0H时:

#include

#include

sfr16 DAC0=0xd2

void dac0_init(void);

void main(void)

{

uninsigned int i;

float x,y;

WDTCN=0xde;//关看门狗

WDTCN=0xad;

dac0_init();//DAC0初始化

while(1)

{

for(x=0;x<(2*3.14159);x+=0.1)

{

//12位DAC的数字容量为4K(0-0FFFH),y的值最大为4096

y=2048*(sin(x)+1);

DAC0=y;//设置待转换的值并启动DA转换

for(i=0;i<=200;i++);//延时可改变正弦波的周期

}

}

}

void dac0_int(void)

{

REF0CN=0x03;

DAC0CN|=0x08;

}

方波输出:定时器T3溢出时DAC更新。

#include

sfr16 TMR3RL=0x92;

srf16 DAC0=0xd2;

#define SYSCLK 2000000

void Timer3_Init(int counts);

void Timer3_ISR(void);

void DAC_Init(void);

void main(void)

{

unsigned int i;

WDTCN=0xde;//关看门狗

WDTCN=0xad;

Timer3_Init(SYSCLK/12/5);

DAC_Init();

EA=1;

while(1)

{

DAC0L=0xf0;//设置待转换的值0FF0H

DAC0H=0x0f;

for(i=0;i<100;i++);

DAC0L=0x0; //设置待转换的值0000H

DAC0H=0x0;

for(i=0;i<100;i++);

}

}

void DAC_init(void)

{

REF0CN=0x03;//内部偏压发生器和电压基准缓冲器工作DAC0CN|=0x88;//使能DAC0,T3溢出时更新

}

void Timer3_Init(int counts)

{

TMR3CN=0x00;//SYSCLK/12作为时基

TMR3RL=-counts;//重载值

TMR3=0xffff;//立即重载

EIE2|=0x01;//允许T3中断

TMR3CN=0x04;//启动T3

}

void Timer3_ISR(void)

{

TMR3CN&=~(0x80);//清TF3

}

实验2:查表实验

$INCLUDE(C8051F020.INC)

org 0000h

mov dptr,#table

mov a,#3

rl a

mov r1,a

movc a,@a+dptr

push dph

push dpl

mov dptr,#2000h

movx @dptr,a

pop dpl

pop dph

inc dptr

mov a,r1

movc a,@a+dptr

mov dptr,#2001h

movx @dptr,a

l1:sjmp l1

table: dw 8000h,8001h,8002h,8003h end

或:MOV A,#3

CALL SEARCH

MOV DPTR,#2000H

MOV A,R2

MOVX @DPTR,A

MOV A,R3

INC DPTR

MOVX @DPTR,A

SJMP $

SEARCH:MOV DPTR,#table

RL A

MOV B,A

MOVX A,@A+DPTR MOV R2,A

MOV A,B

INC A

MOVX A,@A+DPTR MOV R3,A RET

table: dw 8000h,8001h,8002h,8003h END

单片机课后习题答案部分筛选

第一章 2单片机具有哪些特点 (1)片内存储容量越来越大。 (2抗干扰性好,可靠性高。 (3)芯片引线齐全,容易扩展。 (4)运行速度高,控制功能强。 (5)单片机内部的数据信息保存时间很长,有的芯片可以达到100年以上。 第二章 6. 如何简捷地判断89C51正在工作? 答:用示波器观察8051的XTAL2端是否有脉冲信号输出(判断震荡电路工作是否正常?) ALE(地址锁存允许)(Address Latch Enable)输出是fosc的6分频用示波器观察ALE是否有脉冲输出(判断 8051芯片的好坏?) 观察PSEN(判断8051能够到EPROM 或ROM中读取指令码?) 因为/PSEN接外部EPROM(ROM)的/OE端子 OE=Output Enable(输出允许) 9. 读端口锁存器和“读引脚”有何不同?各使用哪种指令? 答:读锁存器(ANL P0,A)就是相当于从存储器中拿数据,而读引脚是从外部拿数据(如MOV A,P1 这条指令就是读引脚的,意思就是把端口p1输入数据送给A) 传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常用这些指令于外部通信,判断外部键盘等;字节交换XCH、XCHD算术及逻辑运算 ORL、CPL、ANL、ADD、ADDC、SUBB、INC、DEC控制转移CJNE、DJNZ都属于读锁存器。 13. 内部RAM低128字节单元划分为哪3个主要部分?各部分主要功能是什么? 答:片内RAM低128单元的划分及主要功能: (l)工作寄存器组(00H~lFH) 这是一个用寄存器直接寻址的区域,内部数据RAM区的0~31(00H~lFH),共32个单元。它是4个通用工作寄存器组,每个组包含8个8位寄存器,编号为R0~R7。 (2)位寻址区(20H~2FH) 从内部数据RAM区的32~47(20H~2FH)的16个字节单元,共包含128位,是可位寻 址的RAM区。这16个字节单元,既可进行字节寻址,又可实现位寻址。 (3)字节寻址区(30H~7FH) 从内部数据RAM区的48~127(30H~7FH),共80个字节单元,可以采用间接字节寻址 的方法访问。 15. 开机复位后,CPU使用的是哪组工作寄存器?它们的地址是什么?CPU如何确定和改变当前工作寄存器组?

单片机课后习题解答

练习练习练习 第二章单片机结构及原理 1、MCS-51单片机内部包含哪些主要功能部件?它们的作用是什么? 答:(1)一个8bit CPU是微处理器的核心,是运算和逻辑计算的中心。 (2)片内震荡器及时钟电路:提供标准时钟信号,所有动作都依据此进行。 (3)4K ROM程序存贮器:存贮程序及常用表格。 (4)128B RAM 数据存贮器:存贮一些中间变量和常数等。 (5)两个16bit定时器/计数器:完全硬件定时器 (6)32根可编程I/O口线:标准8位双向(4个)I/O接口,每一条I/O线都能独立地作输入或输出。 (7)一个可编程全双工串行口。 (8)五个中断源。 2、什么是指令?什么是程序? 答:指令是规定计算机执行某种操作的命令。 程序是根据任务要求有序编排指令的集合。 3、如何认识89S51/52存储器空间在物理结构上可以划分为4个空间,而在逻辑上又可以划分为3个空间? 答:89S51/52存储器空间在物理结构上设有4个存储器空间:片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器。在逻辑上有3个存储器地址空间:片内、片外统一的64KB程序存储器地址空间,片内256B数据存储器地址空间,片外64KB的数据存储器地址空间。 4、开机复位后,CPU使用的是哪组工作寄存器?他们的地址是多少?CPU如何确定

和改变当前工作寄存器组? 答:开机复位后,CPU使用的是第0组工作寄存器,地址为00H~07H,CPU通过改变状态字寄存器PSW中的RS0和RS1来确定工作寄存器组。 5、什么是堆栈?堆栈有何作用?在程序设计时,有时为什么要对堆栈指针SP重新赋值?如果CPU在操作中要使用两组工作寄存器,SP应该多大? 答:堆栈是一个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场。堆栈指针SP复位后指向07H单元,00H~1FH为工作寄存器区,20H~2FH 为位寻址区,这些单元有其他功能,因此在程序设计时,需要对SP重新赋值。如果CPU在操作中要使用两组工作寄存器,SP应该至少设置为0FH。 6、89S51/52的时钟周期、机器周期、指令周期是如何分配的?当振荡频率为8MHz 时,一个单片机周期为多少微秒? 答:时钟周期为时钟脉冲频率的倒数,他是单片机中最基本的、最小的时间单位。机器周期是指完成一个基本操作所需要的时间,一个机器周期由12个时钟周期组成。指令周期是执行一条指令所需要的时间,由若干个机器周期组成。 若fosc=8MHz,则一个机器周期=1/8×12μs=μs 7、89S51/52扩展系统中,片外程序存储器和片外数据存储器共处同一地址空间为什么不会发生总线冲突? 答:访问片外程序存储器和访问数据存储器使用不同的指令用来区分同一地址空间。 8、程序状态字寄存器PSW的作用是什么?常用状态标志有哪些位?作用是什么? 答:程序状态字PSW是8位寄存器,用于存放程序运行的状态信息,PSW中各位状态通常是在指令执行的过程中自动形成的,但也可以由用户根据需要采用传送指令加以改变。各个标志位的意义如下: ):进位标志位。 (C y (AC):辅助进位标志位,又称为半进位标志位。

单片机试卷及答案

一选择题 (n )1.MCS—51单片机是高档16位单片机。 (y )2.MCS—51的产品8051与8031的区别是:8031片内无ROM。 (n )3.单片机的CPU从功能上可分为运算器和存贮器。 (y )4.MCS-51的指令寄存器是一个8位寄存器,用于暂存待执行指令,等待译码。 (n )5.MCS—51的指令寄存器是对指令寄存器中的指令进行译码,将指令转变为执行此指令所需要的电信号。 (y )6.8051的累加器ACC是一个8位的寄存器,简称为A,用来存一个操作数或中间结果。 (y )7.8051的程序状态字寄存器PSW是一个8位的专用寄存器,用于存程序运行中的各种状态信息。 (n )8.MCS—51的程序存贮器用于存放运算中间结果。(y )9.MCS—51的数据存贮器在物理上和逻辑上都分为两个地址空间:一个是片内的256字节的RAM,另一个是片外最大可扩充64K字节的RAM。 (y )10.单片机的复位有上电自动复位和按钮手动复位两种,当单片机运行出错或进入死循环时,可按复位键重新启动。 (n )11.CPU的时钟周期为振荡器频率的倒数。 (n )12.单片机的一个机器周期是指完成某一个规定操作所需的时间,一般情况下,一个机器周期等于一个时钟周期组成。(y )13.单片机的指令周期是执行一条指令所需要的时间。一般由若干个机器周期组成。 (n )14.单片机系统扩展时使用的锁存器,是用于锁存高8位地址。 (n )15.MCS—51单片机上电复位后,片内数据存储器的内容均为00H。 (y )16.当8051单片机的晶振频率为12MHZ时,ALE地址锁存信号端的输出频率为2MHZ的方脉冲。 (y )17.8051单片机片内RAM从00H~1FH的32个单元,不仅可以作工作寄存器使用,而且可作为RAM来读写。 (n )18.MCS—51单片机的片内存贮器称为程序存贮器。(n )19.MCS—51单片机的数据存贮器是指外部存贮器。(y )20.MCS—51单片机的特殊功能寄存器集中布置在片内数据存贮器的一个区域中。 (y )21.微机控制系统的抗干扰问题是关系到微机应用成败的大问题. 二、单项选择题 1.MCS—51单片机的CPU主要的组成部分为a 。 A.运算器、控制器B.加法器、寄存器C.运算器、加法器D.运算器、译码器 2.单片机能直接运行的程序叫c 。 源程序B。汇编程序C。目标程序D。编译程序3.单片机中的程序计数器PC用来c 。 A.存放指令B.存放正在执行的指令地址C.存放下一条指令地址 D.存放上一条指令地址 4.单片机上电复位后,PC的内容和SP的内容为b 。A.0000H,00H B。0000H,07H C。0003H,07H D。0800H,08H 5.单片机8031的ALE引脚是b 。 输出高电平B。输出矩形脉冲,频率为fosc的1/6 C.输出低电平D。输出矩形脉冲,频率为fosc的1/2 6.单片机8031的引脚a 。 A.必须接地B。必须接+5V C。可悬空D。以上三种视需要而定7.访问外部存贮器或其它接口芯片时,作数据线和低8位地址线的是A 。 A.P0口B。P1口C。P2口D。P0口和P2口 8.PSW中的RS1和RS0用来a 。 选择工作寄存器区号B。指示复位C。选择定时器D。选择工作方式 9.上电复位后,PSW的值为d 。 A.1 B。07H C。FFH D。0 10.单片机上电复位后,堆栈区的最大允许范围是b 个单元。A.64 B。120 C。128 D。256 11.单片机上电复位后,堆栈区的最大允许范围是内部RAM的d 。 A.00H—FFH B。00H—07H C。07H—7FH D。08H—7FH 12.堆栈指针SP在内部RAM中的直接地址是c 。 A.00H B。07H C。81H D。FFH 的P0口,当使用外部存贮存器时它是一个d 。 A.传输高8位地址口A.传输低8位地址口 C.传输高8位数据口D.传输低8位地址/数据口 14.P0口作数据线和低8位地址线时b 。 A.应外接上拉电阻B.不能作I/O口C.能作I/O口D.应外接高电平 15.对于8031单片机,其内部RAM d 。 A.只能位寻址B.只能字节寻址C.既可位寻址又可字节寻址D.少部分只能位寻址 16.寻址方式就是c 的方式。 A.查找指令操作码B.查找指令C.查找指令操作数 D.查找指令操作码和操作数 17.8031 单片机若晶振频率为fosc=12MHz,则一个机器周期等于c μS。 A.1/12 B.1/2 C.1 D.2 18.MCS—51单片机的数据指针DPTR是一个16位的专用地址指针寄存器,主要用来b 。 A.存放指令B.存放16位地址,作间址寄存器使用C.存放

单片机部分习题答案

第2章:2、CIP-51有哪些存储空间?各个存储空间的功能及寻址范围是什么? 有程序存储器、内部数据存储器、外部数据存储器、特殊功能寄存器和位寻址区五个独立的地址空间。 ●程序存储器:存放程序和常数,容量为64KB,地址范围0000H-0FFFFH ●内部数据存储器:用于通用寄存器和存放数据的临时存储器,容量为256B, 地址范围00H-0FFH ●外部数据存储器:用于存放数据,容量为64KB(有4KB在芯片内部),地 址为0000-0FFFFH ●特殊功能寄存器(SFR):提供对片内资源和外设的访问和控制,以及与外 设的数据交换,C8051F020有122个,离散分布在地址80H-0FFH中。 ●位地址空间:存放位变量,进行布尔运算,容量为256位,有内部RAM的 20H-2FH(16字节,128位)和部分SFR(字节地址可以被8整除的)组成,地址范围为00H-0FFH 3、CIP-51的内部RAM空间有多少字节?它们在应用中有什么专门用途?堆栈一般应设置在什么位置? ●内部RAM有256字节 ●低128B中的00H-1FH用于通用寄存器,20H-2FH既可以字节寻址也可以 位寻址,30H-7FH作一般存储器用;高128B因为与SFR地址重叠,故只能间接寻址,也作一般存储器用 ●理论上堆栈可以设在内部数据存储器的任何位置,复位时堆栈指针SP为 07H,但为了避开通用寄存器和位地址空间,一般设在30H-0FFH。 5、读写内部RAM与外部RAM的数据时,使用的指令有什么区别?读程序存储器的数据的指令又有什么不同? 读写内部RAM用MOV指令;读写外部RAM用MOVX指令;读程序存储器用MOVC指令,写程序存储器用MOVX指令,但为与写外部RAM相区分,需要对相应SFR的相关位进行设置。 6、若(PSW)=0x10,则当前的R0~R7在内部RAM中有哪些单元? 由(PSW)=0x10可知RS1RS0=10,故通用寄存器R0-R7在内部RAM的0x10-0x17单元。(PSW的格式P22) 第一次作业存在的问题: 第一题:5个存储空间,有的同学写的不全,漏SFR和位寻址区;有的同学对位寻址区的寻址范围写的不对,应为0x00-0xff而非0x20-0x2f。

单片机试题及答案

单片机原理与接口技术习题答案 习题与思考题1 1-1 微型计算机通常由哪些部分组成?各有哪些功能? 答:微型计算机通常由控制器、运算器、存储器、输入/输出接口电路、输入设备和输出设备组成。控制器的功能是负责从内部存储器中取出指令并对指令进行分析、判断、并根据指令发出控制信号,使计算机有条不紊的协调工作;运算器主要完成算数运算和逻辑运算;存储器用于存储程序和数据;输入/输出接口电路完成CPU与外设之间相连;输入和输出设备用于和计算机进行信息交流的输入和输出。 1-2 单片微型计算机与一般微型计算机相比较有哪些区别?有哪些特点? 答:与通用微型计算机相比,单片机的硬件上,具有严格分工的存储器ROM和RAM和I/O端口引脚具有复用功能;软件上,采用面向控制的指令系统和硬件功能具有广泛的通用性,以及品种规格的系列化。单片机还具备体积小、价格低、性能强大、速度快、用途广、灵活性强、可靠性高等特点。 1-3 简述计算机的工作过程。 答:计算机的工作是由微处理器以一定的时序来不断的取指令、指令译码和执行指令的过程。 1-4 单片机的几个重要指标的定义。 答:单片机的重要指标包括位数、存储器、I/O口、速度、工作电压、功耗和温度。 1-5 单片微型计算机主要应用在哪些方面? 答:单片机的主要应用领域有智能化产品、智能化仪表、智能化测控系统、智能化接口等方面。 1-6 为什么说单片微型计算机有较高的性能价格比和抗干扰能力? 答:因为单片微型计算机主要面向特定应用而设计,设计者在硬件和软件上都高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,具备较高的性能、价格比;单片机嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中,另外单片机体积小,可以放入屏蔽设备中,从而使其具有较高的抗干扰能力。 1-7 简述单片机嵌入式系统的定义和特点。 答:单片机嵌入式系统是嵌入到对象体系中的专用计算机系统;其特点是面向特定应用、与各个行业的具体应用相结合、硬件和软件高效率、软件固化在存储器芯片或单片机本身和不具备自举开发能力。 习题与思考题2 2-1 MCS-51单片机内部包含哪些主要功能部件?它们的作用是什么? 答:MCS-51单片机在一块芯片中集成了CPU、RAM、ROM、定时/计数器、多功能I/O口和中断控制等基本功能部件。 单片机的核心部分是CPU,CPU是单片机的大脑和心脏。 程序存储器用于存放编好的程序或表格常数。数据存储器用于存放中间运算结果、数据暂存和缓冲、标志位等。 定时/计数器实质上是加法计数器,当它对具有固定时间间隔的内部机器周期进行计数时,它是定时器;当它对外部事件进行计数时,它是计数器。 I/O接口的主要功能包括:缓冲与锁存数据、地址译码、信息格式转换、传递状态(外设状态)和发布命令等。 中断控制可以解决CPU与外设之间速度匹配的问题,使单片机可以及时处理系统中许多随机的参数和信息,同时,它也提高了其处理故障与应变能力的能力。 2-2 MCS-51单片机的核心器件是什么?它由哪些部分组成?各部分的主要功能是什么? 答:单片机的核心部分是CPU,可以说CPU是单片机的大脑和心脏。它由运算器、控制器和布尔(位)处理器组成。 运算器是用于对数据进行算术运算和逻辑操作的执行部件。

单片机课后习题答案

单片机课后习题答案 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只访问片内flash Rom并执行内部程序,存储器。/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 6. 如何简捷地判断89C51正在工作? 答:用示波器观察8051的XTAL2端是否有脉冲信号输出(判断震荡电路工作是否正常?)ALE(地址锁存允许)(Address Latch Enable)输出是fosc的6分频 用示波器观察ALE是否有脉冲输出(判断8051芯片的好坏?) 观察PSEN(判断8051能够到EPROM 或ROM中读取指令码?) 因为/PSEN接外部EPROM(ROM)的/OE端子OE=Output Enable(输出允许) 7. 89C51如何确定和改变当前工作寄存器组? 答:PSW(程序状态字)(Program Status Word)中的RS1和RS0 可以给出4中组合,用来从4组工作寄存器组中进行选择PSW属于SFR(Special Function Register)(特殊功能寄存器) 9.读端口锁存器和“读引脚”有何不同?各使用哪种指令? 答:读锁存器(ANLP0,A)就是相当于从存储器中拿数据,而读引脚是从外部拿数据(如MOV A,P1这条指令就是读引脚的,意思就是把端口p1输入数据送给A)传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常用这些指令于外部通信,判断外部键盘等;字节交换XCH、XCHD算术及逻辑运算 ORL、CPL、ANL、ADD、ADDC、SUBB、INC、DEC控制转移CJNE、DJNZ

单片机课后习题答案解析

一)填空题 1. 十进制数14对应的二进制数表示为(1110B),十六进制数表 示为(0EH)。十进制数-100的补码为(9CH),+100的补码为(64H)。 2. 在一个非零的无符号二进制整数的末尾加两个0后,形成一个新的无符号二进制整数,则新数是原数的(4)倍。 3. 8位无符号二进制数能表示的最大十进制数是(255)。带符号二进制数11001101转换成十进制数是(-51)。 4. 可以将各种不同类型数据转换为计算机能处理的形式并输送到计算机中去的设备统称为(输入设备)。 5. 已知字符D的ASCII码是十六进制数44,则字符T的ASCII码是十进制数(84)。 6. 若某存储器容量为640KB,则表示该存储器共有(655360)个存储单元。 7. 在计算机中,二进制数的单位从小到大依次为(位)、(字节)和(字),对应的英文名称分别是(bit)、(Byte)和(Word)。 8. 设二进制数A=10101101,B=01110110,则逻辑运算A∨B=(11111111),A ∧B=(00100100),A⊕B=(11011011)。 9. 机器数01101110的真值是(+110),机器数01011001的真值是(+89),机器数10011101的真值是(+157或-115),机器数10001101的真值是(+206或-50)。(二)单项选择题 1. 用8位二进制补码数所能表示的十进制数范围是(D) (A)-127 ~ +127 (B)-128 ~ +128 (C)-127 ~ +128 (D)-128 ~ +127 2. 下列等式中,正确的是(B) (A)1 KB = 1024×1024 B (B)1 MB = 1024×1024 B (C)1 KB = 1024 M B (D)1 MB = 1024 B 3. 程序与软件的区别是(C) (A)程序小而软件大(B)程序便宜而软件昂贵 (C)软件包括程序(D)程序包括软件 4. 存储器中,每个存储单元都被赋予惟一的编号,这个编号称为(A) (A)地址(B)字节(C)列号(D)容量 5. 8位二进制数所能表示的最大无符号数是(B) (A)255 (B)256 (C)128 (D)127 6. 下列4个无符号数中,最小的数是(B) (A)11011001(二进制)(B)37(八进制) (C)75(十进制)(D)24(十六进制) 7. 下列字符中,ASCII码最小的是(B) (A)a (B)A (C)x (D)X 8. 下列字符中,ASCII码最大的是(C) (A)a (B)A (C)x (D)X 9. 有一个数152,它与十六进制数6A相等,那么该数是(B) (A)二进制数(B)八进制数(C)十进制数(D)十六进制数 第2章80C51单片机的硬件结构 (一)填空题

单片机原理及应用习题答案第三版(供参考)

第一章习题参考答案 1-1:何谓单片机?与通用微机相比,两者在结构上有何异同? 答:将构成计算机的基本单元电路如微处理器(CPU)、存储器、I/O接口电路和相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。 单片机与通用微机相比在结构上的异同: (1)两者都有CPU,但通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的进一步提高。例如,现今微机的CPU都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache)技术等。CPU的主频达到数百兆赫兹(MHz),字长普遍达到32位。单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据处理功能比通用微机相对要弱一些,计算速度和精度也相对要低一些。例如,现在的单片机产品的CPU大多不支持浮点运算,CPU还采用串行工作方式,其振荡频率大多在百兆赫兹范围内;在一些简单应用系统中采用4位字长的CPU,在中、小规模应用场合广泛采用8位字长单片机,在一些复杂的中、大规模的应用系统中才采用16位字长单片机,32位单片机产品目前应用得还不多。 (2) 两者都有存储器,但通用微机中存储器组织结构主要针对增大存储容量和CPU对数据的存取速度。现今微机的内存容量达到了数百兆字节(MB),存储体系采用多体、并读技术和段、页等多种管理模式。单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都为64 KB。 (3) 两者都有I/O接口,但通用微机中I/O接口主要考虑标准外设(如CRT、标准键盘、鼠标、打印机、硬盘、光盘等)。用户通过标准总线连接外设,能达到即插即用。单片机应用系统的外设都是非标准的,且千差万别,种类很多。单片机的I/O接口实际上是向用户提供的与外设连接的物理界面。用户对外设的连接要设计具体的接口电路,需有熟练的接口电路设计技术。 另外,单片机的微处理器(CPU)、存储器、I/O接口电路集成在一块芯片上,而通用微机的微处理器(CPU)、存储器、I/O接口电路一般都是独立的芯片 1-4 IAP、ISP的含义是什么? ISP:In System Programable,即在系统编程。用户可以通过下载线以特定的硬件时序在线编程(到单片机内部集成的FLASH上),但用户程序自身不可以对内部存储器做修改。 IAP:In Application Programable,即在应用编程。用户可以通过下载线对单片机进行在线编程,用户程序也可以自己对内部存储器重新修改。 1-6 51单片机与通用微机相比,结构上有哪些主要特点? (1)单片机的程序存储器和数据存储器是严格区分的,前者为ROM,后者为RAM; (2)采用面向控制的指令系统,位处理能力强; (3)I/O引脚通常是多功能的; (4)产品系列齐全,功能扩展性强; (5)功能是通用的,像一般微处理机那样可广泛地应用在各个方面。 1-7 51单片机有哪些主要系列产品? (1)Intel公司的MCS-51系列单片机:功能比较强、价格比较低、较早应用的单片机。此系列三种基本产品是:8031/8051/8751; (2)ATMEL公司的89系列单片机:内含Flash存储器,开发过程中可以容易地进行程序修改。有8位Flash子系列、ISP_Flash子系列、I2C_Flash子系列; (3)SST公司的SST89系列单片机:具有独特的超级Flash技术和小扇区结构设计,采用IAP和ISP技术;

单片机试题及答案1

一、填空题 已知x的补码数10110111B,x的真值是___201D。 进制转换:134D=__10000110B;=______86H。 32K存储容量对应的地址范围从0000H-7FFFH_。 CPU与内存或I/O接口相连的系统总线通常由_控制总线__、数据总线__、地址总线___等三种信号组成。MCS-51单片机上电复位时PC=_0000_H,SP=_07_H;工作寄存器缺省采用第___________组,这组寄存器的地址范围是从______H~_____H。 MCS-51单片机系列有__5__个中断源,可分为___2__个优先级。上电复位时外部中断0__中断源的优先级别最高。 MCS-51单片机内部RAM共分为______2__个功能区,其高端128个字节的地址空间称为特殊功能寄存器_区,其中仅有________个字节有实际意义。 8255可编程芯片通常作为_并行接口_______扩展之用;8253可编程芯片通常作为_定时器_______扩展之用。8155可编程芯片通常作为_并行接口计数器和存储器______扩展之用;8279可编程芯片通常作为_键盘/显示控制器________扩展之用。 MCS-51 的并行I/O口信息有____读引脚________和____读锁存_________两种读取方法,读一改一写操作是针对并行I/O口内的锁存器进行的。 74LS273通常用来作为简单______输出__________接口扩展;而74LS244则常用来作为简单________输入_______接口扩展。 不带输入数据锁存器的D/A转换器,CPU必须通过______锁存或寄存__器件与D/A转换器传送数据;无三态输出功能的A/D转换器,应当通过_____三态___器件与CPU传送数据。 若用并行口来扩展一个有36只按键的行列式键盘,最少需__12_根I/O线。 74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中___八_块芯片。 MCS-51单片机访问外存储器时利用_____ALE_______信号锁存来自_____P0_____口的低八位地址信号。在MCS-51系统中,当晶振频率采用12MHz时,一个机器周期等于_1__微秒。 8051的T0作为计数器用时,其计数频率不能超过晶振频率的___二十四分之一__。 二、选择题 通常所说的主机是指( C )。 (A)硬件和软件(B)CPU和磁盘存储器 (C)CPU和主存(D)运算器和控制器

单片机习题答案

《单片机应用技术》习题答案 第一章概述 1、什么就是总线?总线主要有哪几部分组成?各部分得作用就是什么? 总线就是连接计算机各部件之间得一组公共得信号线。一般情况下,可分为系统总线与外总线。 系统总线应包括:地址总线(AB)控制总线(CB)数据总线(DB) 地址总线(AB):CPU根据指令得功能需要访问某一存储器单元或外部设备时,其地址信息由地址总线输出,然后经地址译码单元处理。地址总线为16位时,可寻址范围为216=64K,地址总线得位数决定了所寻址存储器容量或外设数量得范围。在任一时刻,地址总线上得地址信息就是惟一对应某一存储单元或外部设备。 控制总线(CB):由CPU产生得控制信号就是通过控制总线向存储器或外部设备发出控制命令得,以使在传送信息时协调一致得工作。CPU还可以接收由外部设备发来得中断请求信号与状态信号,所以控制总线可以就是输入、输出或双向得。 数据总线(DB):CPU就是通过数据总线与存储单元或外部设备交换数据信息得,故数据总线应为双向总线。在CPU进行读操作时,存储单元或外设得数据信息通过数据总线传送给CPU;在CPU进行写操作时,CPU把数据通过数据总线传送给存储单元或外设 2.什么就是接口电路? CPU与接口电路连接一般应具有哪些信号线?外部设备与接口电路连接一般应具有哪些信号线? CPU通过接口电路与外部输入、输出设备交换信息, 一般情况下,外部设备种类、数量较多,而且各种参量(如运行速度、数据格式及物理量)也不尽相同。CPU为了实现选取目标外部设备并与其交换信息,必须借助接口电路。一般情况下,接口电路通过地址总线、控制总线与数据总线与CPU连接;通过数据线(D)、控制线(C)与状态线(S)与外部设备连接。 3、存储器得作用就是什么?只读存储器与随机存储器有什么不同? 存储器具有记忆功能,用来存放数据与程序。计算机中得存储器主要有随机存储器(RAM)与只读存储器(ROM)两种。随机存储器一般用来存放程序运行过程中得中间数据,计算机掉电时数据不再保存。只读存储器一般用来存放程序,计算机掉电时信息不会丢失。 4 什么就是单片机?单片机与微机相比有何特点? 单片机(Single-Chip-Microputer)又称单片微控制器,其基本结构就是将微型计算机得基本功能部件:中央处理机(CPU)、存储器、输入接口、输出接口、定时器/计数器、中断系统等全部集成在一个半导体芯片上,因此,单片机其体积小、功耗低、价格低廉,且具有逻辑判断、定时计数、程序控制等多种功能。 单片机结构上得设计,在硬件、指令系统及I/O能力等方面都有独到之处,具有较强而有效得控制功能。虽然单片机只就是一个芯片,但无论从组成还就是从其逻辑功能上来瞧,都具有微机系统得含义。另一方面,单片机毕竟就是一个芯片,只有外加所需得输入、输出设备,才可以构成实用得单片机应用系统。 5、单片机主要应用于哪些领域? (1)智能仪器。智能仪器就是含有微处理器得测量仪器。单片机广泛应用于各种仪器仪表,使仪器仪表智能化取得了令人瞩目得进展。

单片机课后习题答案

1.1 计算机经过了哪些主要发展阶段? 解:单片机的发展大致经历了四个阶段: 第一阶段(1970—1974年),为4位单片机阶段; 第二阶段(1974—1978年),为低中档8位单片机阶段; 第三阶段(1978—1983年),为高档8位单片机阶段; 第四阶段(1983年至今),为8位单片机巩固发展阶段及16位单片机、32位单片机推出阶段。 1.2 写出下列机器数的真值: (1)01101110 (2)10001101 (3)01011001 (4)11001110 解:(1)01101110的真值=+110 (2)10001101的真值=+141或-115 (3)01011001的真值=+89 (4)11001110的真值=+206或-50 说明:机器数是指计算机中使用的二进制数,机器数的值称为真值。机器数可表示为无符号数也可表示为带符号数,其中计算机中的带符号数一般为补码形式。10001101若为无符号数。则其真值为+141;若为带符号数,由于最高位(符号位)为1.所以为负数(补码形式),则其真值为-115。 1.4 写出下列二进制数的原码、反码和补码(设字长为8位)。 (1)010111 (2)101011 (3)-101000 (4)-111111 解:(1) [x]原=00010111 [x]反= 00010111 [x]补= 00010111 (2)[x]原=00101011 [x]反= 00101011 [x]补= 00101011 (3)[x]原=10101000 [x]反= 11010111 [x]补= 11011000 (4)[x]原=10111111 [x]反= 11000000 [x]补=11000001 1.5 已知X=10110110,Y=11001111,求X 和Y 的逻辑与、逻辑或和逻辑异或。 解:10000110X Y ?= 11111111X Y += 01111001X Y ⊕= 1.6 已知X 和Y ,试计算下列各题的[]X Y +补和[]-X Y 补(设字长为8位)。 (1)X=1011 Y=0011 (2)X=1011 Y=0101 (3)X=1001 Y=-0100 (4)X=-1000 Y=0101 (5)X=-1100 Y=-0100 解:(1)X 补码=00001011 Y 补码=00000011 [X+Y]补=00001110 [X-Y]补=00001000 (2)X 补码=00001011 Y 补码=00000101 [X+Y]补=00010000 [X-Y]补=00000110 (3)X 补码=00001001 Y 补码=11111100 [X+Y]补=00010000 [X-Y]补=00000110

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

第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替换。对

单片机原理及应用课后习题参考答案~章

《单片机原理及应用》习题答案 第一章计算机基础知识 1-1 微型计算机主要由哪几部分组成?各部分有何功能? 答:一台微型计算机由中央处理单元(CPU)、存储器、I/O接口及I/O设备等组成,相互之间通过三组总线(Bus):即地址总线AB、数据总线DB和控制总线CB来连接。 CPU由运算器和控制器组成,运算器能够完成各种算术运算和逻辑运算操作,控制器用于控制计算机进行各种操作。 存储器是计算机系统中的“记忆”装置,其功能是存放程序和数据。按其功能可分为RAM和ROM。 输入/输出(I/O)接口是CPU与外部设备进行信息交换的部件。 总线是将CPU、存储器和I/O接口等相对独立的功能部件连接起来,并传送信息的公共通道。 1-3 什么叫单片机?其主要由哪几部分组成? 答:单片机(Single Chip Microcomputer)是指把CPU、RAM、ROM、定时器/计数器以及I/O接口电路等主要部件集成在一块半导体芯片上的微型计算机。 1-4 在各种系列的单片机中,片内ROM的配置有几种形式?用户应根据什么原则来选用? 答:单片机片内ROM的配置状态可分四种: (1)片内掩膜(Mask)ROM型单片机(如8051),适合于定型大批量应用产品的生产; (2)片内EPROM型单片机(如8751),适合于研制产品样机; (3)片内无ROM型单片机(如8031),需外接EPROM,单片机扩展灵活,适用于研制新产品;

(4)EEPROM(或Flash ROM)型单片机(如89C51),内部程序存储器电可擦除,使用更方便。 1-5 写出下列各数的另两种数制的表达形式(二、十、十六进制) 1-6 写出下列各数的BCD参与: 第二章MCS-51单片机的硬件结构 2-1 8052单片机片内包含哪些主要逻辑功能部件? 答:8052单片机片内包括: ①8位中央处理器CPU一个 ②片内振荡器及时钟电路 ③256B数据存储器RAM。 ④8KB片内程序存储空间ROM ⑤21个特殊功能寄存器SFR ⑥4个8位并行I/O端口(32条线) ⑦1个可编程全双工串行口 ⑧可寻址64KB的外部程序存储空间和外部数据存储空间 ⑨3个16位的定时器/计数器

单片机习题集及答案

1.在MCS-51中,有7种寻址方式,它们分别为立即数寻、寄存器寻址、直接寻址、寄存器间接寻址、相对寻址、变址寻址和位寻址。 2.汇编语言的指令格式为标号:操作码操作数注释。 3.数据传送类指令执行完毕,源操作数的内容不会(会/不会)丢失。 4.8051内部RAM从20H至2FH既可位寻址,又可间接寻址,位地址空间从00H到7FH。 5.MCS-51单片机指令系统中,指令长度有一字节、二字节和(三)字节,指令执行时间有一个机器周期、两个机器周期和四机器周期,乘法指令需四机器周期。6.MOV A,20H中,20H的寻址方式称之为_直接___;SETB 20H的寻址方式为位寻址。 7.关于堆栈类操作的两条指令分别是_PUSH(入栈)指令_ 、POP(出栈)指令;堆栈操作只能是寄存器间接寻址寻址。 8.访问8031片外数据存储器MOVX指令采用的是寄存器间接寻址寻址方式。访问片外序存储器MOVC指令采用的是变址寻址方式。 9.设(A)=55H,(R5)=AAH,则执行ANL A,R5指令后的结果是(A)= 00H,(R5)= AAH;则执行ORL A,R5指令后的结果是(A)= FFH ,(R5)= AAF;则执行XRL A,R5指令后的结果是(A)= FFH,(R5)= AAH 。 10.伪指令不产生(产生/不产生)可执行目标代码。汇编语言程序结束的指令为END。11.DA指令跟在ADD,ADDC指令的后面,用与二进制数与BCD码的调整。若 (A)=0AH ,执行DA A指令后,(A)= 15。 单项选择题 1.JMP跳转范围是:(D. -128~127B) 2.MCS—51系列单片机最长的一条指令需 B. 4个机器周期。 3.MOV A,@R0这条指令中@R0的寻址方式称为:(B. 寄存器间接寻址) 4.在CPU内部,反映程序运行状态或反映运算结果的特征寄存器是:B. PSW 5.下列指令中正确的是:B. JBC TF0,L1 6.下列指令中错误的是:A. SETB 50H.0 7.将累加器的值压入堆栈的正确指令是:B. PUSH A 8.下列那条减法指令是错误的:C. SUBBC 9. 指令CJNE A ,#00H ,LOOP 影响PSW的哪一位:C.CY 10. 在MUL AB指令中,若积超过255,则C. OV=1 11.在相对寻址方式中,寻址的结果体现在A.PC中 12.在相对寻址方式中,"相对"两字是指相对于 C.当前指令的末地址 13.在寄存器间接寻址方式中,指定寄存器中存放的是B.操作数地址 14.对程序存储器的读操作,只能使用D.MOVC指令 15.必须进行十进制调整的十进制运算C.只有加法 16.执行返回指令时,返回的断点是C.调用指令下一条指令的首地址 17.下列指令中与进位标志位CY 无关的指令有D.无条件转移指令 18.可以为访问程序存储器提供或构成地址的有D.PC、A、DPTR和SP 19.以下各项中不能用来对内部数据存储器进行访问的是A.数据指针DPTR 20.若原来工作寄存器0组为当前寄存器组,现要改1组为当前寄存器组,不能使用指令C.MOV PSW.3,C 21.不能为程序存储器提供和构成地址的有:D.PSW 22.MCS-51汇编语言指令格式中,唯一不可缺少的部分是:B.操作码 23.MCS—51的立即寻址方式中,立即数前面:D.应加前缀“#”号 24.下列完成8031单片机内部数据传送的指令是:D.MOV direct,direct (25).MCS—51的立即寻址的指令中,立即数就是:A.放在寄存器R0中的内容26.单片机中PUSH和POP指令常用来:C.保护现场,恢复现场 27.MCS—51寻址方式中,操作数Ri加前缀“@”号的寻址方式是:A.寄存器间接寻址 28.MCS—51寻址方式中,位寻址的寻址空间是: D.片内RAM的20H~2FH字节中的所有位和部分专用寄存器SFR的位 29.MCS—51寻址方式中,直接寻址的寻址空间是B.专用寄存器SFR 30.执行指令MOVX A,@DPTR时,WR、RD脚的电平为:C.WR高电平,RD低电平 31.主程序执行完ACALL后返回主程序后,堆栈指针SP的值:A.不变 32.单片机中使用MOVX A,@R1指令寻址数据存贮器1050H单元。B.不能 33.下列指令判断若P1口最低位为高电平就转LP,否则就执行下一句的是:D.JNZ P1.0,LP 34.指令JB OEOH,LP中的OEOH是指:D.一个单元的地址 35.下列指令中比较转移指令是指:B.CJNE Rn,#data,rel

单片机试题及答案

试题 1 一、填空题(25 分,每空 1 分) 1.AT89S51 单片机为8 位单片机 2.MCS-51 系列单片机的典型芯片分别为8031 、8051 、8751 。 3.AT89S51的异步通信口为全双工(单工/半双工/全双工) 4.AT89S51 有 2 级中断, 5 个中断源 5.AT89S51 内部数据存储器的地址范围是00H~7FH ,位地址空间的字节地址范围是20H~2FH ,对应的位地址范围是00H~7FH ,外部数据存储器的最大可扩展容量是64K 。 6.AT89S51 单片机指令系统的寻址方式有__寄存器寻址__、直接寻址_、寄存器间接寻址__、_立即寻址_、基址寄存器加变址寄存器寻址。 7.如果(A)=34H ,(R7)=0ABH ,执行XCH A, R7;结果(A)= 0ABH ,(R7)= 34H 。 8.82C55 可以扩展 3 个并行口,其中8 条口线具有位操作功能; 9.当单片机复位时PSW=00 H,这时当前的工作寄存器区是0 区,R4 所对应的存储单元地址为04 H。 10.若 A 中的内容为67H,那么,P 标志位为 1 。 11.74LS138是具有 3 个输入的译码器芯片,其输出作为片选信号时,最多可以选中8 片芯片。 二、判断以下指令的正误:(5 分) ) ;√)

(1)MOV 28H,@R4;(× )) ;√)

3) DEC DPTR ;×) (4)CLR R0 ;(× ) (5)MOV T0,#3CF0H;(× ) 三、简答题 1、如果(DPTR)=507BH ,(SP)=32H,(30H)=50H ,(31H)=5FH,(32H)=3CH,则执 行下列指令后: POP DPH; POP DPL; POP SP; 则: __3CH___;(DPL)= ___5FH___;(SP)= 50H (DPH)= _ 2、采用6MHz 的晶振,定时1ms,用定时器方式0 时的初值应为多少?(请给出计算过程)(6分) 解:∵采用6MHZ晶振∴机器周期为2us 13-X)×2×10- 13 -6 -3 (2 6=1×10-3 ∴X=7692(D)=1E0CH=1 1110 0000 1100 (B), 化成方式0 要求格式为1111 0000 1100 B, 即0F00CH 综上可 知:TLX=0CH, THX=0F0H 3.分析下列程序的功能( 5 分) PUSH ACC PUSH B POP ACC POP B 解: 该程序的功能是通过累加器ACC 与寄存器 B 数据交换。 五、简述MCS-51 系列单片机主从结构多机通信原理,设有一台主机

相关主题
文本预览
相关文档 最新文档