单片机例题

合集下载

单片机考试题目及答案

单片机考试题目及答案

单片机考试题目及答案一、选择题(每题2分,共20分)1. 单片机是一种集成了CPU、存储器、I/O接口等功能的微型计算机,其英文缩写是:A. CPUB. RAMC. ROMD. MCU答案:D2. 下列哪个是51系列单片机的特有寄存器?A. ACCB. PSWC. SPD. PC答案:B3. 在8051单片机中,以下哪个指令是用于将累加器A的内容与外部数据存储器中的数据进行交换?A. MOV A, @DPTRB. MOVX A, @DPTRC. MOV DPTR, #20HD. MOV A, #20H答案:B4. 8051单片机的定时器/计数器0和1,其定时器模式下的工作方式有:A. 1种B. 2种C. 3种D. 4种答案:C5. 下列哪个中断源在8051单片机中具有最高优先级?A. 定时器0中断B. 外部中断0C. 定时器1中断D. 串行中断答案:B二、填空题(每空2分,共20分)1. 单片机的最小系统通常包括________、________和________。

答案:时钟电路、复位电路、电源电路2. 8051单片机的P0口是________位的双向I/O口。

答案:83. 8051单片机的中断向量地址是固定的,其中外部中断0的中断向量地址是________。

答案:03H4. 8051单片机的定时器0和定时器1都可以被配置为________模式,用于计数外部事件。

答案:计数器5. 在8051单片机中,使用MOV指令可以实现寄存器之间的数据传输,例如MOV A, R0,表示将________的数据传送到________。

答案:R0寄存器;累加器A三、简答题(每题10分,共30分)1. 请简述单片机的中断系统的作用及其重要性。

答案:单片机的中断系统允许单片机在执行程序的过程中,对外部事件或内部条件做出快速响应。

中断系统的重要性在于它能够实现多任务处理,提高系统的实时性和效率。

2. 描述8051单片机的串行通信方式及其特点。

单片机例题

单片机例题

1.P3.0按键控制P1.0灯亮灭2.按键1数码管显示1,按键2数码管显示2,按键3数码管显示3,按键4数码管显示43.用两位数码管显示一个十进制数,变化范围为00-60,开始时显示00,按键S1每按下一次,数值加1;按键S2每按下一次,数值减1;按键S3每按下一次,数值归零。

4.矩阵键盘,数码管显示各个序号5.P3.0控制灯全亮,P3.1全灭。

中断口0控制流水灯向下,中断口1控制流水灯向上6.流水灯7.数码管显示1238.数码管三位分别从0显示到F9.数码管从0显示到999910.中断控制LED灯前四盏灭和后四盏亮11.中断口1控制l ed灯闪烁12.定时器0延时1S控制第一盏灯闪烁13.中断口0控制数码管从0到60显示14.按键KEY1进行调分、调时状态切换,进入调整状态时,时钟停止走动,这时按下按键KEY2可实现分、时的调整。

按键使用外部中断来产生。

15.串口初始化16.中断,定时总结1.P3.0按键控制P1.0灯亮灭#includ e<reg51.h>#d efine LED P1sbit Key=P3^0;//按键定义void Delayxms(unsigned int xms){ unsigned int i,j;for(i=xms;i>0;i--){for(j=110;j>0;j--);}}void main(){Key=1;whil e(1){if(Key==0){Delayxms(10);if(!Key){LED=~LED;}}}}2.按键1数码管显示1,按键2数码管显示2,按键3数码管显示3,按键4数码管显示4#includ e<reg51.h>#d efine LED P1unsigned char cod e led[]={0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07,0x7F, 0x6F, 0x77, 0x7C, 0x39, 0x5E, 0x79, 0x71}; sbit Key1=P3^0;sbit Key2=P3^1;sbit Key3=P3^2;sbit Key4=P3^3;void display(unsigned char num){P2=0xf0;P0=l ed[num];}void Delayxms(unsigned int xms){unsigned int i,j;for(i=xms;i<0;i--){for(j=110;j>0;j--);}}unsigned char Key_scan(){unsigned char KeyValue;P3 |=0xf0;if(Key1==0){Delayxms(10);if(!Key1){KeyValue=1;whil e(!Key1);}}if(Key2==0){Delayxms(10);if(!Key2){KeyValue=2;whil e(!Key2);}}if(Key3==0){Delayxms(10);if(!Key3){KeyValue=3;whil e(!Key3);}}if(Key4==0){Delayxms(10);if(!Key4){KeyValue=4;whil e(!Key4);}}return KeyValue;}void main(){whil e(1){display(Key_scan());}}3.用两位数码管显示一个十进制数,变化范围为00-60,开始时显示00,按键S1每按下一次,数值加1;按键S2每按下一次,数值减1;按键S3每按下一次,数值归零。

单片机 11道编程例题及答案

单片机  11道编程例题及答案

1.把长度为10H的字符串从内部RAM的输入缓冲区inbuf向位物外部RAM的输出缓冲区outbuf传送,一直进行到遇见回车或整个字符串传送完毕。

试编程实现。

ORG 0030H MOV R0,#inbuf MOV R1,#outbuf MOV R4,#10HLOOP:MOV A,@R0 ; 从内部RAM取数 CJNE A,#0DH,LL ;是否为回车符CRSJMP STOP ;是转停止传送 LL: MOVX @R1,A ;不是则传送到外部RAMINC R0 INC R1 DJNZ R4,LL;沒传送完则循环 STOP: SJMP $2、内部RAM从list单元开始存放一正数表,表中之数作无序排列,并以“-1”作结束标志。

编程实现在表中找出最小数。

(3AH存放在运行程序时的最小的数)ORG 0030HMOV R0,#listMOV A,@R0 ;取第一个正数LOOP: INC R0 ;指向下一个正数MOV 3AH,@R0CJNE A,3AH,CHK ;前一个数与后一个数比较CHK: JC LOOP1 ;前一个数小,则转MOV A,@R0 ;前一个数大,取后一个数LOOP1: XCH A,3AHCJNE A,#0FFH,LOOPXCH A,3AH ;取最小数MOV 3BH,A SJMP $3.内部RAM的X,Y 单元中各存放一个带符号的数,试编程实现按如下条件进行的运算,并将结果存入Z单元中。

若X为正奇数,Z =X+Y;若X为正偶数,Z =X∨Y;若X为负奇数,Z =X∧Y;若X为负偶数,Z =X⊕Y。

分析:负数:第7位为1,正数:第7位为0 奇数:第0位为1,偶数:第0位为0 ORG 0000H MOV A,20H CLR C RL A JC FS ;移到负数处处理RR A RR A ;第0位移到C 再判定一下是不是1 JC ZJS ;到正奇数处MOV A,20H ORL A,21H MOV 22H,A SJMP OKZJS: MOV A,20H ADD A,21H MOV 22H,A SJMP OKFS: MOV A,20H CLR C RR A JC FJS ;第0位是1,移到正奇数处理MOV A,20H XRL A,21H MOV 22H,A SJMP OKFJS: MOV A,20H ANL A,21H MOV 22H,A OK: END4、把一个8位二进制数的各位用ASCII码表示之(亦即为“0”的位用30H表示,为“1”的位用31H表示)。

(完整版)单片机试题及其答案

(完整版)单片机试题及其答案

一填空题1. A T89S51单片机芯片共有 40 个引脚,MCS-51系列单片机为 8 位单片机。

2. AT89S51单片机有 2 级优先级中断。

3. AT89S51内部数据存储器的地址范围是 00H-7FH ,位地址空间的字节地址范围是20H-2FH ,对应的位地址范围是 00H-7FH ,外部数据存储器的最大可扩展容量是64k字节。

4. 单片机也可称为微控制器或嵌入式控制器。

5.当MCS-51执行MOVC A,@A+PC指令时,伴随着 PSEN 控制信号有效。

6. 当单片机复位时PSW= 00 H,当前的工作寄存器区是0区,R4所对应的存储单元地址为 04 H。

7. MCS-51系列单片机指令系统的寻址方式有寄存器寻址、直接寻址、寄存器间接寻址、立即寻址、基址加变址、位寻址。

(相对寻址也可)8. 51系列单片机的典型芯片分别为AT89S51 、 8031 、 AT89C51 。

9. A T89S51的 p3 口为双功能口。

10. 由A T89S51组成的单片机系统在工作时EA引脚应该接地。

二选择题1.如果(A)=45H,(R1)=20H,(20H)=12H,执行XCHD A, @ R1;结果(A)=(A)A.42HB.20HC.12HD.15H2. AT89S51复位后,PC与SP的值为分别为(B)A.0000H、00HB.0000H、07HC.FFFFH、00HD.0000H、FFH3. 堆栈数据的进出原则是(B)A.先进先出 B.先进后出 C.后进后出 D.进入不出4. 已知:R0=28H (28H)=46H,顺序执行下面三条指令后MOV A,#32H; MOV A,45H ; MOV A,@R0执行结果A的内容为( A )A.46HB.28HC.45HD.32H5. AT89S51单片机中,唯一一个用户不能直接使用的寄存器是(C).A. PSWB.DPTR C . PC D. B三判断题1.AT89S51单片机可执行指令:MOV 35H,@R3。

单片机原理例题和习题

单片机原理例题和习题

例 4.1(顺序结构)被加数存于片内RAM的32H、31H、30H 单元,加数存于片内RAM的35H、34H、33H单元相加之和存于片内RAM的32H、31H、30H单元,进位存于片内RAM 的00H单元。

程序如下:START: MOV R0, #30HMOV R1, #33HMOV A, @R0ADD A, @R1MOV @R0, AINC R0INC R1MOV A, @R0ADDC A, @R1MOV @R0, AINC R0INC R1MOV A, @R0ADDC A, @R1MOV @R0, ACLR AADDC A, #00HMOV 00H, ARET例 4.2(分支结构)假定在片外RAM的2000H、2001H、2002H 这3个连续单元中,2000H和2001H单元存放着两个无符号数。

要求找出两个无符号数中较大者,并存放于2002H单元。

程序如下:ORG 0100HSTART: CLR CMOV DPTR, #2000HMOVX A, @DPTRMOV R2, AINC DPTRMOVX A, @DPTRSUBB A, R2JNC LOOP1XCH A, R2LOOP0: INC DPTRMOVX @DPTR, ARETLOOP1: MOVX A, @DPTRSJMP LOOP0例4.5两个多字节数的减法。

设有2个n字节无符号数,分别存放在片内的ram单元中,低字节在前,高字节在后。

CLR CMOV R2,#NLOOP:MOV A,@R0SUBB A,@R1MOV @R0,AINC R0INC R1DJNZ R2,LOOPRET 例4.3(循环结构)将片内RAM的20H单元为起始地址的数据串(最长为32 Bytes),传送到外部RAM的2000H单元为首地址的区域,直到发现“$”字符的ASCⅡ码为止。

程序如下:START: MOV R0, #20HMOV DPTR, #2000HMOV R7, #32LOOP0: MOV A, @R0XRL A, #24HJZ LOOP1MOV A, @R0MOVX @DPTR, AINC R0INC DPTRDJNZ R7, LOOP0LOOP1: RET例4.7假设被乘数放在r6和r7中,乘数放在r4和r5中,求乘积放于40H~43H单元中,低字节在前。

单片机考试题及答案

单片机考试题及答案

单片机考试题及答案一、选择题(每题2分,共20分)1. 单片机的英文缩写是:A. CPUB. MCUC. ROMD. RAM答案:B2. 下列哪个不是单片机的组成部分?A. 中央处理器B. 存储器C. 输入/输出接口D. 显示器答案:D3. 8051单片机的内部RAM是:A. 128字节B. 256字节C. 512字节D. 1024字节答案:B4. 单片机的程序存储器通常使用的是:A. RAMB. ROMC. EPROMD. EEPROM答案:C5. 单片机的I/O口可以配置为:A. 只读B. 只写C. 推挽输出D. 开漏输出答案:D6. 下列哪个不是单片机的中断源?A. 定时器溢出B. 外部中断C. 串行通信D. 显示器答案:D7. 8051单片机的定时器/计数器的计数范围是:A. 0到255B. 0到511C. 0到1023D. 0到2047答案:A8. 单片机的看门狗定时器的主要作用是:A. 计时B. 计数C. 监视程序运行D. 控制I/O口答案:C9. 下列哪个不是单片机的常用编程语言?A. C语言B. 汇编语言C. Java语言D. C++语言答案:C10. 单片机的I/O口的模式设置通常包括:A. 推挽输出B. 开漏输出C. 上拉输入D. 以上都是答案:D二、填空题(每题2分,共20分)1. 单片机的CPU主要由______、______和______组成。

答案:算术逻辑单元、控制单元、寄存器组2. 单片机的______存储器用于存储程序代码。

答案:程序3. 8051单片机的定时器/计数器有______个。

答案:24. 单片机的中断优先级可以通过______寄存器来设置。

答案:IP5. 单片机的______模式可以减少功耗。

答案:睡眠6. 单片机的______接口允许单片机与外部设备进行数据交换。

答案:I/O7. 单片机的______寄存器用于存储程序计数器的值。

答案:PC8. 单片机的______功能可以防止程序死循环。

单片机考试试题及答案

单片机考试试题及答案

单片机考试试题及答案一、选择题(每题2分,共20分)1. 单片机中,CPU的主要功能是()。

A. 存储数据B. 处理数据C. 传输数据D. 显示数据答案:B2. 在8051单片机中,下列哪个寄存器是用于存储程序计数器的地址?A. SPB. PCC. DPTRD. ACC答案:B3. 下列哪项不是单片机的I/O接口?A. 定时器/计数器B. 串行通信接口C. 模数转换器D. 键盘答案:C4. 单片机的中断系统通常由哪两部分组成?A. 中断源和中断服务程序B. 中断向量表和中断服务程序C. 中断向量表和中断源D. 中断源和中断向量表答案:B5. 在8051单片机中,下列哪个指令用于将累加器的内容传送到外部数据存储器?A. MOVXB. MOVC. MOVCD. MUL答案:A二、填空题(每题2分,共20分)1. 单片机的______是单片机的核心部件,负责执行程序。

答案:CPU2. 8051单片机的定时器/计数器共有______个。

答案:23. 在8051单片机中,______指令用于将内部RAM的某个单元的内容传送到累加器。

答案:MOV4. 单片机的______接口用于实现单片机与外部设备的通信。

答案:串行通信5. 单片机的______功能允许它在执行当前任务的同时响应外部事件。

答案:中断三、简答题(每题10分,共30分)1. 请简述单片机的中断优先级是如何工作的?答案:单片机的中断优先级是指在多个中断请求同时发生时,单片机根据中断源的重要性来决定先响应哪一个中断请求。

通常,中断优先级由中断向量表中的地址顺序决定,优先级高的中断源对应的中断向量地址在表中靠前。

2. 描述单片机的I/O接口的作用。

答案:单片机的I/O接口是单片机与外部设备进行数据交换的通道。

它允许单片机接收外部设备的数据输入,并将处理后的数据输出到外部设备。

3. 简述单片机的定时器/计数器的作用。

答案:单片机的定时器/计数器用于提供精确的时间控制和事件计数。

单片机课堂例题

单片机课堂例题
D7
D6
D5
D4
D3
D2
D1
D0
GATE
C/T
M1
M0
GATE
C/T
M1
M0
T1控制
TMOD=10H
T0控制
中断方式:
ORG 0000H
LJMP MAIN
ORG 001BH
AJMP LOOP
MAIN: MOV TMOD,#10H
MOV TH1,#0FFH
MOV TL1,#083H
SETB EA
SETB ET1
sbit K3=P1^6;
code uchar
seg7code[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
0x80,0x90};
code uchar seg7bit[6]={0x01,0x02,0x04,0x08,0x10,0x20};
main()
{
KEY3接P1.6。KEY0按下个位显示“1”,KEY1按下
十位显示“2”, KEY2按下百位显示“3” KEY3按
下千位显示“4”
C4
C1
C2
30PF
30PF
X1
R14
R15
R16
R17
R18
R19
R20
R21
10k10k10k10k10k10k10k10k
U1
10uF
19
XTAL1
CRYSTAL
VREF--标准电压, DAC0832:-10V~+10V
• 分析:
DELAY: MOV
• 1VDx=51;2VDx=102
R7,#N
上升段:

单片机操作题库(28例附答案)

单片机操作题库(28例附答案)

单片机28例1、利用位操作法点亮第三盏灯。

#include <reg52.h>void main(){P2=0xbb;P0=0x99;while(1);}2、利用位操作法点亮第五盏灯。

#include <reg52.h>void main(){P2=0x00;P0=0x80;while(1);}3、利用位操作法点亮第六盏灯。

#include <reg52.h>void main(){P2=0xed;P0=0xb0;while(1);}4、利用位操作法点亮第八盏灯。

#include <reg52.h>void main(){P2=0xb2;P0=0x86;while(1);}5、利用位操作法点亮第一、三、六、八盏灯。

#include <reg52.h>sbit led0=P1^0;sbit led1=P1^1;sbit led2=P1^2;sbit led3=P1^3;sbit led4=P1^4;sbit led5=P1^5;sbit led6=P1^6;sbit led7=P1^7;void main(){led0=0;led1=0;led2=0;led3=0;led4=0;led5=0;led6=0;led7=0;}6、利用位操作法点亮第四、五、六、七盏灯。

#include <reg52.h>sbit led3=P1^3;sbit led4=P1^4;sbit led5=P1^5;sbit led6=P1^6;void main(){led3=0;led4=0;led5=0;led6=0;}7、利用位操作法点亮第一、三、五、八盏灯。

#include<reg52.h>#define uint unsigned intvoid delay1s(){uint i,j;for(i=300;i>0;i--)for(j=110;j>0;j--);}void main(){P2=0xfe;while(1){P0=0xc0;delay1s();P0=0xf9;delay1s();P0=0xa4;delay1s();P0=0xb0;delay1s();P0=0x99;delay1s();P0=0x92;delay1s();P0=0x82;delay1s();P0=0xf8;delay1s();P0=0x80;delay1s();P0=0x90;delay1s();}}8、利用位操作法点亮八盏灯。

单片机练习题及例题【精选】

单片机练习题及例题【精选】

单片机课堂练习题/例题总结习题和思考题一1、一个完整的单片微机芯片内至少有哪些部件?2、根据程序存储器的差别单片机可以分为那些类型?3、单片机的主要特性是什么?它适宜于构成一个通用微机系统还是专用微机系统?为什么?习题与思考题二1、8051单片机内包含哪些主要逻辑功能部件?2、MCS-51单片机结构上有哪些主要特点?习题和思考题三1、详细描绘MCS-51单片机的存储器配置图。

2、MCS-51单片机是通过哪些方法将程序存储器和数据存储器严格分开的?3、什么是单片机的特殊功能寄存器?8051/8052各有几个特殊功能寄存器?这些特殊功能寄存器占有的地址范围?4、MCS—51单片机有哪些可直接寻址的位?5、什么是堆栈?8031的堆栈区可以设在什么地方?一般应设在什么区域?如何实现?试举例说明。

习题和思考题四1、试根据P1口和P3口的结构特性,指出它们作为输入口或第二功能输入/输出的条件。

2、MCS-51中无ROM型单片机在应用中P2口和P0口能否直接作为输入/输出连接开关、指示灯之类的外围设备?为什么?3、画出MCS-51系列单片机进行系统扩展时的三总线结构图。

课堂练习一1、8031有四个工作寄存器区,由PSW状态字中的RS1、RS0两位的状态来决定,单片机复位后,若执行SETB RS1 指令,此时只能使用()区的工作寄存器。

A、0区B、1区C、2区D、3区2. 09H位所在的单元地址是()A.02H B.21H C.08H D.20H3.单片机在进行取指令操作时,指令的地址是由()的内容决定。

A.SP B.PC C.DPTR D.PSEN和ALE4. P1口作输入用途之前必须( )。

A.外接高电平B.外接上拉电阻C.相应端口先置0 D.相应端口先置15.程序计数器PC用来( )。

A.存放指令B.存放上一条的指令地址C.存放下一条的指令地址D.存放正在执行的指令地址思考题1. 数123可能是( )。

A. 二进制数B. 八进制数C. 十六进制数D.四进制数 E.十进制数2. 8031单片机内部RAM包括( ) 。

单片机考试题目及答案

单片机考试题目及答案

单片机考试题目及答案一、单项选择题(每题2分,共20分)1. 单片机中,以下哪个寄存器用于存储程序计数器(PC)的值?A. SPB. PCC. DPTRD. SCON答案:B2. 在8051单片机中,下列哪个指令用于将累加器A的内容传送到外部数据存储器?A. MOV A, @R0B. MOVX A, @DPTRC. MOV A, #dataD. MOV A, R0答案:B3. 下列哪个指令是8051单片机的无条件跳转指令?A. SJMPB. CJNEC. DJNZD. JZ答案:A4. 在8051单片机中,以下哪个中断源的中断优先级最高?A. 外部中断0B. 定时器0中断C. 外部中断1D. 串行通讯中断答案:C5. 8051单片机的定时器/计数器工作在方式1时,其计数器的计数范围是多少?A. 0到255B. 0到65535C. 0到32767D. 0到65536答案:C6. 8051单片机中,哪个指令用于将累加器A的内容与立即数进行逻辑“或”操作?A. ORL A, #dataB. ORL A, directC. ORL A, @R0D. ORL direct, #data答案:A器R0的内容进行逻辑“与”操作?A. ANL A, R0B. ANL R0, AC. ANL A, #dataD. ANL direct, A答案:A8. 8051单片机中,哪个指令用于将累加器A的内容与直接地址中的数据进行逻辑“异或”操作?A. XRL A, #dataB. XRL A, directC. XRL direct, AD. XRL A, @R0答案:B器R0的内容进行逻辑“异或”操作?A. XRL A, R0B. XRL R0, AC. XRL A, #dataD. XRL direct, A答案:A10. 8051单片机中,哪个指令用于将累加器A的内容与寄存器R0的内容进行逻辑“与”操作后,结果存回R0?A. ANL A, R0B. ANL R0, AC. ANL A, #dataD. ANL direct, A答案:B二、填空题(每题2分,共20分)1. 8051单片机的内部RAM分为______和______两部分。

单片机 c语言例题

单片机 c语言例题

单片机 c语言例题单片机 C 语言例题在单片机教学中,C 语言的例题是帮助学生理解和掌握单片机编程的重要工具。

通过例题的学习,学生可以更好地理解C语言语法和单片机的工作原理。

本文将介绍几个单片机 C 语言例题,帮助读者更好地了解单片机的应用。

例题一:LED 灯的闪烁以下是一个简单的单片机 C 语言例题,通过控制单片机上的LED 灯,实现灯的闪烁效果。

```c#include <reg51.h> // 单片机头文件// 主函数void main() {while(1) { // 循环执行P1 = 0x00; // 将 P1 置为低电平(LED 灯熄灭)Delay(); // 延时P1 = 0xFF; // 将 P1 置为高电平(LED 灯亮)Delay(); // 延时}}// 延时函数void Delay() {int i, j;for(i = 0; i < 800; i++) { // 大约延时 1 秒for(j = 0; j < 1000; j++) {}}}```在上述例题中,我们使用了一个延时函数 `Delay()`,通过循环控制LED 灯的亮灭状态,实现了灯的闪烁效果。

通过修改延时循环,可以改变灯闪烁的频率。

例题二:数码管显示数字以下是另一个单片机 C 语言例题,通过控制单片机上的数码管,实现数字的显示效果。

```c#include <reg51.h> // 单片机头文件sbit LED = P2^0; // 数码管的引脚定义// 数码管显示数字函数void Display(int num) {switch (num) {case 0: LED = 0xFC; break; // 数字0显示case 1: LED = 0x60; break; // 数字1显示case 2: LED = 0xDA; break; // 数字2显示case 3: LED = 0xF2; break; // 数字3显示case 4: LED = 0x66; break; // 数字4显示case 5: LED = 0xB6; break; // 数字5显示case 6: LED = 0xBE; break; // 数字6显示case 7: LED = 0xE0; break; // 数字7显示case 8: LED = 0xFE; break; // 数字8显示case 9: LED = 0xF6; break; // 数字9显示default: LED = 0xFF; break; // 其他情况,不显示数字 }}// 主函数void main() {int num = 0; // 待显示的数字while(1) { // 循环执行Display(num); // 数码管显示数字num++; // 数字自增if (num > 9) { // 数字大于9后重置为0 num = 0;}Delay(); // 延时}}// 延时函数void Delay() {int i, j;for(i = 0; i < 800; i++) { // 大约延时 1 秒 for(j = 0; j < 1000; j++) {}}}```在上述例题中,我们通过控制数码管的引脚,并编写了一个显示数字的函数 `Display()`,通过循环控制数码管显示不同的数字,实现了数字的切换和显示效果。

单片机典型例题

单片机典型例题

单片机典型例题[例题] 指出下列指令的寻址方式MOV A,R1 ;A←(R1)寄存器寻址ADD A,#05H ; A←(A)+立即数05H 立即寻址MOV A,@R1 ; A ←((R1)) 寄存器间接寻址MOV 30H,4AH ; 30H ←(4AH)直接寻址MOVC A,@A+DPTR ;A←((A)+(DPTR)) 变址寻址SJMP LP ; PC←(PC)+ 2 + 偏移量相对寻址MOV C, 65H ; Cy ←(65H))位寻址【例】MOV DPTR,#1234H ;(DPTR)=1234H该指令也可以用两条8位数据传送指令实现:MOV DPH,#12H ;(DPH)=12HMOV DPL,#34H ;(DPL)=34H,(DPTR)=1234H例1:读下面程序,写出41H、42H单元内容MOV R0,#40HMOV R1,#41HMOV A,#11HMOV 40H,#32HMOV @R1,AMOV 42H ,@R0解:(41H)=11H,(42H)=32H例2:将片内RAM中30H~3FH单元的内容复制到50H~5FH单元中。

MOV R0,#30H ;30h →R0MOV R1,#50H ;50h →R1MOV R7,#10H ;10h →R7LOOP:MOV A,@R0 ;( (R0 )) →AMOV @R1,A ;A →(R1 )INC R0 ;(R0 )+1 →R0INC R1 ;(R1 )+1 →R1DJNZ R7,LOOP ;R7内容不为零转LOOPRET例1 :已知外部RAM的88H单元有一个数x,试编程将x送外部RAM的1818H单元。

【解】:外部RAM中的数据是不能直接传送的,因此必须使用两次MOVX 指令完成此操作。

ORG 2000HMOV R0,#88H ;为8位指针赋值MOVX A,@R0 ;取x 到累加器AMOV DPTR,#1818H ;为16位指针赋值MOVX @DPTR,A ;x 送RAM的1818h单元已知RAM50h单元有一个0~9的数,试编程将它变成相应的ASCII码。

单片机考试题目及答案

单片机考试题目及答案

单片机考试题目及答案单片机原理与应用考试题目一、选择题(每题2分,共20分)1. 单片机的核心部件是()。

A. 微处理器B. 存储器C. 定时器D. I/O接口2. 下列哪种设备不属于单片机的外围设备?A. 显示器B. 键盘C. 鼠标D. CPU3. 在单片机中,堆栈的作用是()。

A. 存储程序代码B. 存储数据C. 保存函数调用的返回地址D. 存储操作系统4. 单片机的I/O端口通常具有()功能。

A. 仅输入B. 仅输出C. 输入/输出D. 仅定时器5. 下列哪种单片机是51系列单片机?A. 8051B. 8052C. 8031D. 80486. 在单片机程序设计中,通常使用()语言编写程序。

A. 机器语言B. 汇编语言C. 高级语言D. 网络语言7. 单片机的定时器/计数器可以用来()。

A. 计数外部事件B. 生成时间延迟C. 产生音乐D. 所有以上功能8. 串行通信与并行通信相比,其主要优点是()。

A. 速度快B. 传输距离远C. 抗干扰能力强D. 线路简单9. 在单片机系统中,EEPROM是指()。

A. 电可擦除只读存储器B. 电子擦除可编程只读存储器C. 电子擦除可编程可擦写存储器D. 电可擦除可编程可擦写存储器10. 下列哪种中断源在单片机中是可屏蔽的?A. 外部中断0B. 外部中断1C. 定时器0中断D. 串行口中断二、填空题(每题2分,共20分)1. 单片机中的______是指具有微处理器、存储器、I/O接口以及其他功能模块集成在同一芯片上的微型计算机。

2. 在51单片机中,P1、P2、P3分别是______、______、______端口。

3. 单片机的程序存储器通常采用______型存储器。

4. 单片机中,______的作用是在程序执行过程中为子程序调用提供返回地址。

5. 单片机的串行通信接口可以实现______位数据的串行传输。

6. 在单片机中,______是指在程序执行过程中,由于外部事件或内部条件触发而中断当前程序执行的过程。

单片机习题库含答案

单片机习题库含答案

单片机习题库含答案一、单选题(共107题,每题1分,共107分)1.AT89C1051单片机的字长是()位。

A、4B、8C、16D、32正确答案:B2.8051单片机的串行接口具有()种工作方式。

A、2B、1C、4D、3正确答案:C3.AT89C51单片机是()位机。

A、4B、8C、16D、32正确答案:B4.十进制数127其对应的无符号十六进制可表示为()。

A、7EB、(B)7FC、(C)80D、81H正确答案:B5.AT89C1051单片机的字长是()位。

A、4B、8C、16D、32正确答案:B6.MCS-51单片机复位后堆栈指针SP=()。

A、07B、0FC、7FD、0FFH正确答案:A7.单片机上电后或复位后,工作寄存器R7是在内部RAM的()。

A、07H单元B、0FH单元C、17H单元D、1FH单元正确答案:A8.累加器A的内容是23H,执行SWAPA指令后累加器的内容变为()。

A、02HB、03C、32D、13H正确答案:C9.8031单片机的堆栈位于()中。

A、内部RAMB、外部RAMC、程序存储器D、特殊功能寄存器正确答案:A10.AT89C51单片机有()个中断优先级。

A、4B、3C、2D、1正确答案:C11.下列指令中有错误的是()。

A、CLRB、MOVXC、(C)MOVD、JE、TF0,LOOP正确答案:A12.MCS-51单片机的RS1,RS0=11时,当前寄存器R0~R7占用内部RAM()单元。

A、00H—07B、(B)08H—0FC、(C)10H—17D、18H—1FH正确答案:D13.MCS-51系列单片机的堆栈指针SP始终是指示()。

A、堆栈大小B、堆栈长度C、堆栈底部单元的地址D、堆栈顶部单元的地址正确答案:D14.下列操作系统中属于嵌入式操作系统的是()。

A、DOSB、WindowsC、WindowsD、EE、Windows正确答案:C15.8051单片机有()个中断源。

单片机复习题(含答案)

单片机复习题(含答案)

四、程序分析题1、已知(A)=83H,(R0)=17H,(17H)=34H,执行下列程序段后:ANL A ,#17HORL 17H ,AXRL A ,@R0CPL A问:(A)= CBH ,(R0)= 17H ,(17H)= 37H 。

2、已知(10H)=5AH,(2EH)=1FH,(40H)=2EH,(60H)=3DH ,执行下列程序段后:MOV 20H ,60HMOV R1 ,20HMOV A ,40HXCH A ,R1XCH A ,60HXCH A ,@R1MOV R0 ,#10HXCHD A ,@R0问:(A)= 5AH (10H)=1FH (2EH)= 3DH(40H)= 2EH (60H)= 3DH 3、执行下列程序段:MOV A ,#00HMOV R7 ,#0FFHMOV PSW, #80HADDC A ,R7问:(CY )= 1 (AC )= 1(P)= 0(ACC)= 00H (R7 )= 0FFH4、写出执行每条指令后的结果。

MOV A,#25HCLR A; (A)=00HCPL A; (A)=0DAH5、写出下列指令执行后的结果。

MOV A,#37HMOV R0,#20HMOV @R0,AANL A,#0FH(A)=__07H___ (R0)=__ 20H __ (20H)=__37H __6、执行如下三条指令后,30H单元的内容是___0EHMOV R1,#30HMOV 40H,#0EHMOV ﹫R1,40H7、请分析下面程序执行后的操作结果,(A)=__40H_ ,(R0)=__60H_。

MOV A,#60HMOV R0,#40HMOV @R0 ,AMOV 41H,R0XCH A,R08、已知:(R0)=00H,写出执行指令后的结果。

ORG 0000HMOV A,R0JZ L1MOV R1,#00HAJMP L2L1: MOV R1,#0FFHL2: SJMP L2END执行完整段程序后,(A)= __00H __ (R1)= __0FFH __。

单片机考试题目及答案

单片机考试题目及答案

单片机考试题目及答案一、选择题(每题2分,共20分)1. 单片机的英文缩写是()。

A. CPUB. MCUC. RAMD. ROM2. 下列哪个不是51单片机的内部存储器类型?()A. ROMB. RAMC. EPROMD. EEPROM3. 单片机的I/O口在默认情况下是()。

A. 推挽输出B. 开漏输出C. 高阻态D. 悬浮态4. 单片机的中断系统具有()个优先级。

A. 1B. 2C. 3D. 45. 单片机的定时器/计数器可以用于()。

A. 定时B. 计数C. 脉冲宽度测量D. 所有以上6. 下列哪个指令不是51单片机的指令类型?()。

A. MOVB. ADDC. JUMPD. CALL7. 51单片机的外部中断INT0和INT1的触发方式分别是()。

A. 电平触发,边沿触发B. 边沿触发,电平触发C. 边沿触发,边沿触发D. 电平触发,电平触发8. 下列哪个不是单片机的串行通信协议?()。

A. UARTB. SPIC. I2CD. USB9. 单片机的看门狗定时器主要功能是()。

A. 定时复位B. 定时唤醒C. 定时计数D. 定时中断10. 51单片机的定时器0和定时器1的计数方式分别是()。

A. 8位计数器,16位计数器B. 13位计数器,16位计数器C. 16位计数器,8位计数器D. 13位计数器,13位计数器答案:1. B 2. D 3. C 4. B 5. D 6. C 7. A 8. D 9. A 10. A二、填空题(每题2分,共10分)1. 单片机的最小系统包括_____、_____和_____。

答案:时钟电路,复位电路,电源电路2. 51单片机的P0口作为I/O口使用时,需要外接_____。

答案:上拉电阻3. 单片机的中断服务程序结束后,需要通过_____指令返回。

答案:RETI4. 单片机的I2C通信协议中,主设备通过_____来控制从设备。

答案:时钟信号5. 单片机的看门狗定时器如果未在预定时间内重置,将会导致_____。

单片机练习题库(含参考答案)

单片机练习题库(含参考答案)

单片机练习题库(含参考答案)一、单选题(共107题,每题1分,共107分)1.ALU的中文含义是()。

A、静态随机存储器B、加法器C、算术单元D、算术逻辑单元正确答案:D2.当T1向51系列单片机的CPU发出中断请求时,若CPU允许并接受中断时,程序计数器PC的内容将被自动修改为()。

A、0003B、000BC、0013D、001BH正确答案:D3.对于MCS-51系列单片机来说,变址间接寻址可寻址的空间是()。

A、程序存储器B、内部RAMC、外部RAMD、特殊功能寄存器正确答案:A4.MCS—51系列单片机扩展存储器芯片时,4个I/O口中做为地址总线的是()。

A、P0口和P2口B、仅P0口C、P2口和P3口D、仅P2口正确答案:A5.8051单片机有()个中断源。

A、3B、4C、6D、5正确答案:D6.当8051单片机系统的振荡晶体频率为6MHz时,其一个机器周期的时间是()。

A、0.5μSB、2μSC、1μSD、4μS正确答案:B7.对于MCS-51系列单片机来说,基址加变址寻址可寻址的空间是()。

A、内部RAM中0-7FH的空间和SFRB、内部RAM和外部RAMC、程序存储器D、外部RAM正确答案:C8.下列单片机中具有4KEPROM的是()。

A、89C51B、8031C、8052D、8751正确答案:D9.AT89C2051是()位的单片机。

A、4B、8C、准16D、16正确答案:B10.MCS-51系列单片机内部计数器可实现的最大计数值是()。

A、128B、256D、65536正确答案:D11.下列单片机中没有片内程序存储器的是()。

A、8052B、8051C、8751D、8031正确答案:D12.AT89C52单片机有()个中断源。

A、3B、4C、5D、6正确答案:D13.当AT89C52单片机系统的振荡晶体频率为24MHz时,其一个机器周期的时间是()。

A、0.5μSB、1μSC、2μSD、4μS正确答案:A14.MCS-51单片机的串行口有()种工作方式。

蓝桥杯单片机小例题

蓝桥杯单片机小例题

1、在蓝桥杯单片机比赛中,常用的单片机类型是什么?
A. ARM Cortex系列
B. 8051系列(答案)
C. AVR系列
D. PIC系列
2、单片机中,I/O端口的主要功能是什么?
A. 仅用于输入数据
B. 仅用于输出数据
C. 可用于输入或输出数据(答案)
D. 用于存储程序
3、下列哪项不是单片机编程中常用的语言?
A. C语言(答案应为非此选项,但为保持格式一致,此处标记为错误选项)
B. 汇编语言
C. Python(答案)
D. C++(部分情况下)
4、在单片机系统中,晶振的主要作用是什么?
A. 提供稳定的电压
B. 提供稳定的电流
C. 提供时钟信号(答案)
D. 提供复位信号
5、单片机中的定时器/计数器,通常用于什么功能?
A. 计算程序运行时间(答案)
B. 存储数据
C. 放大信号
D. 转换电压
6、下列哪种通信方式不是单片机常用的?
A. UART(串行通信)
B. SPI(串行外设接口)
C. HDMI(高清多媒体接口)(答案)
D. I2C(集成电路总线)
7、在单片机编程中,中断的主要作用是什么?
A. 使程序暂停运行
B. 使程序跳转到特定地址执行(答案)
C. 加快程序运行速度
D. 减少程序占用的存储空间
8、单片机复位后,程序计数器(PC)通常指向哪个地址?
A. 0x0001
B. 0x0000(答案,对于大多数单片机而言)
C. 0xFFFF
D. 随机地址。

单片机例题

单片机例题

1.例:假定(A)=85H,(R0)=20H,(20H)=0AFH。

执行指令“ADD A,@R0”后,(A)=34H ,(CY)= 1 ,(OV)= 1 ,(P)=1。

(理论值是134H,发生溢出)1000 0101+) 1010 1111=1 0011 01002.例:设程序执行前F0=0,RS1RS0=00B,请问机器执行如下程序后MOV A,#0FH ;A←0FH ADD A,#F8H ;PSW中各位的状态是什么?解:上述加法指令执行时的人工算式是:0000 1111B + 1111 1000B = 1 0000 0111BF0、RS1和RS0由用户设定,加法指令也不会改变其状态;均为0;PSW=C1HCY为进位标志,为1;AC为半进位标志,也为1;P为奇偶标志,也为1;3.如:设片外RAM的2000H单元中有一个数X,若要把它取入累加器A,则可采用如下程序:MOV DPTR, #2000H ;DPTR←2000HMOVX A, @DPTR ;A←X(第二条指令MOVX的助记符“X”指示DPTR中的2000H是外部RAM 地址,而不是外部ROM地址,第三章将深入讨论,如是外部ROM地址,用MOVC)4.已知(SP)=60H,(DPTR)=3456H,在执行下列指令后PUS H DPHPUS H DPL(SP)=_62H___,内部RAM(61H)=_34H_ , RAM(62H)=_56H_ 。

5.外部ROM2000H单元内容送内部RAM20H单元:MOV A,#00HMOV DPTR,#2000HMOVC A,@A+DPTRMOV 20H,A(如送R0:则最后一条指令改为: MOV R0,A)6.外部RAM0020H单元内容送内部RAM20H单元:MOV DPTR ,#0020HMOVX A,@DPTRMOV 20H,A7..程序中执行二字节绝对调用指令“8100H :ACALL 48FH” 后,构造的目的地址是?PC+2→PC=8102,addr0~10→PC0~10 ,PC11~15不变048FH=0000 0 100 1000 1111 B8102H=1000 0 001 0000 0010 BPC = 1000 0 100 1000 1111 B=848FH8.分支结构:假定在外部ram中有ST1、ST2、ST3、共3个连续单元,其中st1和st2中存放两个无符号二进制数,要求找出其中的大数并存放入ST3.START: CLR CMOV DPTR ,#ST1MOVX A,@DPTRMOV R2,AINC DPTRMOVX A,@DPTRSUBB A ,R2JNC BIG1XCH A,R2BIG0: INC DPTRMOVX @DPTR,ARETBIG1: MOVX A,@DPTRSJMP BIG09.循环结构:设两个10字节的无符号数分别存放在内部RAM以20H和60H开始的单元中,要求相加后的结果要求存放在以60H开始单元的数据区。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

定时/计数器应用1
本题要求:AT89C51单片机扩展16KB外部程序存储器,目代码存放于外部存储器中,P1.0口接一个发光二极管,编写程序,控制发光二极管闪烁,时间间隔1s,采用AT89C51内部定时器计时。

基础知识:关于内部计数器的编程,主要是定时常数的设置和有关控制寄存器的设置。

内部计数器在单片机中主要有定时器和计数器两个功能。

本题目使用的是定时器,定时1s。

CPU运行定时中断方式,实现每1s输出状态发生一次反转,即发光管每隔1s亮一次。

定时器有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。

TMOD 用于设置定时器/计数器的工作方式0~3,并确定用于定时还是计数。

TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。

内部计数器用作定时器时,是对机器周期计数。

每个机器周期的长度是12个振荡器振荡周期。

本题中单片机晶振采用12MHz,定时/计数器工作于方式2(8位自动重装方式)定时器,定时器100微妙中断一次,所以定时常数的设置可按以下方法计算:
机器周期=12/12MHz=1μs
(256−定时常数)×1μs=100μs
定时常数=156。

然后对100微妙中断次数计数10000次,就是1s。

在本题的中断处理程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完成之后再打开相应的中断。

在Proteus ISIS编辑环境中按表1所列的元件清单添加元件,并在Proteus ISIS 的编辑区域中按图1所示的原理图连接硬件电路。

表1 元件清单
元件名称所属类所属子类
AT89C51 Microprocessor ICs 8051 Family
CAP Capacitors Generic
CAP-POL Capacitors Generic
CRYSTAL Miscellaneous
RES Resistors Generic
BUTTON Switches & Relays Switches
LED-YELLOW Optoelectronics LEDs
NOT Simulator Primitives Gates
图1 电路原理图
1、程序流程
主程序
定时器中断服务程序
2、源程序
定时/计数器应用2
本题要求:用AT89C51单片机的定时/计数器T0产生2s的定时时间,每当2s定时到来,更换指示灯闪亮,每个指示灯闪亮的时间为0.2s。

即,开始D1指示灯闪亮0.2s,当2s定时到来之后,D2开始闪亮0.2s,如此循环,0.2s的闪亮时间也由定时/计数器T0来完成。

扩展32KB外部程序存储器,目代码存放于外部存储器中。

基础知识:AT89C51单片机的内部16位定时/计数器是一个可编程定时/计数器,它既可以工作在13位定时方式,也可以工作在16位定时方式和8位定时方式。

只要通过设置特殊功能寄存器TMOD,即可完成。

定时/计数器的启动时间也是通过软件设定TCON寄存器来完成的。

本题目中选择16位定时工作方式,对于T0来说,最大定时65536μs,即65.536ms,无法达到所需的2s定时,须通过软件来处理这个问题。

若取T0的最大定时为50ms,即要定时1s需经过40次的50ms的定时。

对于这40次可以采用软件方法来统计。

因此,设定TMOD=00000001B,即TMOD=01H。

要给T0定时/计数器的TH0,TL0装入预置初值,通过下面的公式可以计算

TH0=(2 −50000)256
TL0=(2 −50000) MOD 256
定时2s,采用16位定时50ms,共定时40次才可达到2s,每50ms产生一次中断,定时的40次数在中断服务程序中完成,同样,对于0.2s的定时,需要4次中断才可达到0.2s。

由于每次2s定时完成时,D1~D4要交替闪亮。

采用ID 号来识别,当ID=0时,D1闪亮;当ID=1时,D2在闪亮;当ID=2时,D3闪亮;当ID=3时,D4闪亮。

在Proteus ISIS编辑环境中按表1所列的元件清单添加元件,并在Proteus ISIS 的编辑区域中按图1所示的原理图连接硬件电路。

表1 元件清单
元件名称所属类所属子类
AT89C51 Microprocessor ICs 8051 Family
CAP Capacitors Generic
CAP-ELEC Capacitors Generic
CRYSTAL Miscellaneous
RES Resistors Generic LED-YELLOW Optoelectronics LEDs
图1 电路原理图
1、程序流程
2、源程序
定时/计数器应用3
本题要求:用AT89C51单片机的定时/计数器T0产生1s的定时时间,作为秒计数时间,当1s产生时,秒计数加1;秒计数到60时,自动从0开始。

扩展32KB外部程序存储器,目代码存放于外部存储器中。

基础知识:AT89C51单片机的内部16位定时/计数器是一个可编程定时/计数器,它既可以工作在13位定时方式,也可以工作在16位定时方式和8位定时方式。

只要通过设置特殊功能寄存器TMOD,即可完成。

定时/计数器的启动时间也是通过软件设定TCON寄存器来完成的。

本题目中选择16位定时工作方式,对于T0来说,最大定时65536μs,即65.536ms,无法达到所需的1s定时,须通过软件来处理这个问题。

若取T0的最大定时为50ms,即要定时1s需经过20次的50ms的定时。

对于这20次可以采用软件方法来统计。

因此,设定TMOD=00000001B,即TMOD=01H。

要给T0定时/计数器的TH0,TL0装入预置初值,通过下面的公式可以计算

TH0=(2 −50000)256
TL0=(2 −50000) MOD 256
一、硬件设计
在Proteus ISIS编辑环境中按表3所列的元件清单添加元件,并在Proteus ISIS 的编辑区域中按图3所示的原理图连接硬件电路。

表3 元件清单
元件名称所属类所属子类
AT89C51 Microprocessor ICs 8051 Family
CAP Capacitors Generic
CAP-ELEC Capacitors Generic
CRYSTAL Miscellaneous
RES Resistors Generic 7SEG-COM-CAT-GRN Optoelectronics 7-Segment Displays PULLUP Modelling Primitives Digital [Miscellaneous]
图3 电路原理图
二、程序设计
1、程序流程
2、源程序
PWM输出控制
本题要求:用电位器调节AT89C51的PWM输出占空比,将A/D转换后的数据作为延时常数。

当电位器阻值发生变化时,ADC0808输出的值发生相应变化,进而调节单片机输出的PWM占空比。

基础知识:PWM是单片机上常用的模拟量输出方法,通过外接的转换电路,可以将脉冲的占空比变成电压。

程序中通过调整占空比来调节输出模拟电压。

占空比是指脉冲中高电平与低电平的宽度比。

一、硬件设计
在Proteus ISIS编辑环境,按表1所列的元件清单添加元件。

按原理图连接硬件电路(包括晶振和复位电路)
表1 元件清单
元件名称所属类所属子类
AT89C51 Microprocessor ICs 8051 Family
CAP Capacitors Generic
CAP-ELEC Capacitors Generic
CRYSTAL Miscellaneous —
RES Resistors Generic
POT-HG Resistors Variable
ADC0808 Data Converters A/D Converters
二、程序设计 1、程序流程
2、源程序
1、单片机概述
1.1 8051单片机简介
1.2 8051引脚介绍
1.3 8051单片机定时/计数器
2、硬件设计
2.1 8051单片机振荡电路2.2 8051单片机复位电路
2.3 “题目要求的电路设计”
3、软件设计
3.1 程序流程图
3.2 源程序
4、设计结果
4.1 电路原理图
4.2 程序运行结果图
参考文献。

相关文档
最新文档