文档视界 最新最全的文档下载
当前位置:文档视界 › 51单片机考试试题带答案

51单片机考试试题带答案

51单片机考试试题带答案
51单片机考试试题带答案

单片机原理及应用试卷A

一、填空题(每空1分,共20分)

1、单片微型计算机由CPU、存储器和I/O 三部分组成。

2、MCS-51系统中,当PSEN信号有效时,表示从P0口稳定地送出了低8位地址。

3、访问8031片外数据存储器采用的是寄存器间接寻址方式。

4、累加器(A)=80H,执行完指令ADD A,#83H后,进位位CY= 1 。

5、指令LCALL 37B0H,首地址在2000H,所完成的操作是2003H入栈,37B0H送入PC。

6、51有5个中断源,有2个中断优先级,优先级由软件填写特殊功能寄存器IP加以选择。

7、在变址寻址方式中,以A作为变址寄存器,以PC或DPTR作基址寄存器。

8、中断请求信号有电平触发和脉冲触发两种触发方式

9、用串行口扩展并行口时,串行接口的工作方式应选为方式0。

10、74LS273通常用来作简单输出接口扩展;而74LS244则常用来作简单输入接口扩展。

11、51的并行I/O口信息有读引脚和读锁存器两种读取方法,读—改—写操作是针对

并行I/O口内的锁存器进行的。

12、A/D转换器的三个重要指标是转换速度、分辨率和转换精度。

二、选择题(从备选答案中选择一个正确答案,并将代号写在括号内。每题1.分,共10分)

1、计算机能识别的语言是( C )。

(A)汇编语言(B)自然语言(C)机器语言(C)高级语言

2、MCS-51单片机外扩存储器芯片时,4个I/O口中用作数据总线的是( B )。

(A)P0和P2口(B)P0口(C)P2和P3口(D)P2口

3、在中断服务程序中,至少应有一条( D )。

(A )传送指令 (B )转移指令 (C )加法指令 (D )中断返回指令 4、访问外部数据存储器时,不起作用的信号是( C )。 (A )RD (B )WR (C )PSEN (D )ALE 5、以下指令中,属于单纯读引脚的指令是( C )。

(A )MOV P1,A (B )ORL P1,#0FH (C )MOVC C , (D )DJNZ P1,LAB 6、使用定时器T1时,有几种工作模式( C )。 (A )1种 (B )2种 (C )3种 (D )4种

7、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU 首先响应( B )。 (A )1INT (B )0INT (C )T1 (D )T0

8、MCS-51响应中断时,下面哪一个条件不是必须的( C )。

A 、当前指令执行完毕

B 、中断是开放的

C 、没有同级或高级中断服务

D 、必须有RETI 指令 9、如果8255端口A 设置为方式2,则端口B 设置为( A )。

(A )只可以方式0 (B )也可以方式2 (C )除方式2外,其它方式均可 (D )任意方式 10、当MCS-51进行多机通讯时,串行接口的工作方式应选为( C )。 (A )方式0 (B )方式1 (C )方式2 (D )方式0或方式2 三、简答题 (每题5分,共20分)

1、MCS-51单片机内部包括哪些主要逻辑功能部件 答:MCS-51单片机主要由下列部件组成: 1个8位CPU ;

1个片内振荡器及时钟电路; 4KBROM 程序存储器,256BRAM ; 21个特殊功能寄存器; 2个16位定时/计数器;

4个8位并行I/O 口及1个可编程全双工串行接口; 可寻址64KB 的外部数据存储器空间; 5个中断源、两个优先级中断嵌套中断结构。

2、 MCS-51单片机内部有几个定时/计数器它们由哪些寄存器组成

答:MCS-51单片机内部有两个16位可编程的定时/计数器,简称定时器0(T0)和定时器1(T1)。

它们分别由方式寄存器TMOD、控制寄存器TCON和数据寄存器TH0、TL0,TH1、TL1组成。

3、单片机对中断优先级的处理原则是什么

答:(1)低优先级中断源可被高优先级中断源所中断,而高优先级中断源不能被任何中断源所中断;

(2)一种中断源(不管是高优先级还是低优先级)一旦得到响应,与它同级的中断源不能再中断它。

当同时收到几个同一优先级的中断时,响应哪一个中断源取决于内部查询顺序。其优先级排列如下:

中断源同级内的中断优先级

外部中断0 最高

定时器/计数器0溢出中断

外部中断1

定时器/计数器1溢出中断

串行口中断最低

4、8255有哪几种工作方式怎样选择其工作方式

答:8255A有三种工作方式:方式0:基本输入/输出方式。方式1:选通输入输出方式。方式2:双向总线方式。

8255的工作方式选择是通过对控制口输入控制字来实现的。

四、阅读或编写程序

1、编写一程序实现将1000H单元开始的100个单元的数据转移到2000H开始的单元中。(8分)

ORG 0000H

MOV DPTR,#1000H ;给源数据块地址指针DPTR赋初值

MOV P2,#20H ;给目的数据块地址指针P2和R0赋初值

MOV R0,#00H

LOOP:MOVX A,@DPTR

MOVX @R0,A

INC DPTR

INC R0

CJNE R0,#64H,LOOP

SJMP $

2、设R0=20H,R1=25H,(20H)=80H,(21H)=90H,(22H)=A0H,(25H)=A0H,(26H)=6FH,(27H),下列程序执行后,结果如何(7分)

(20H)=20H (21H)=00H (22H)=17H (23H)=01H CY=1 A=17H R0=23H R1=28H CLR C

MOV R2,#3

LOOP:MOV A,@R0

ADDC A,@R1

MOV @R0,A

INC R0

INC R1

DJNZ R2,LOOP

JNC NEXT

MOV @R0,#01H

SJMP $

NEXT:DEC R0

SJMP $

五、MCS-51单片机外扩展一片2716存储器,画出系统电路原理图,写出地址分布。(15分)

MAIN:MOV SP,#30H

GAT0:CLR

MOV TMOD,#09H ;T0定时,模式1,GATE=1

MOV TL0,#058H ;T0计算初值

MOV TH0,#9EH

MOV R7,#28H ;软件计数初值

HERE1:JNB ,HERE1 ;夜晚到了吗=0(白天)转HER1即停在此语句等待,夜晚到了=1 往下

执行。

SETB TR0 ;到了,启动T0

SETB ET0 ;允许T0中断

SETB EA ;CPU开中断

HERE2:JB ,HERE2 ;白天到了吗=1(黑夜)转HERE2,即停在此语句等待,白天到了=0 往下

执行。

CLR TR0 ;到了,关T0

CLR ET0 ;禁止T0中断

CLR EA ;关中断

CLR ;关信号灯

SJMP GAT0

中断服务程序

ORG 000BH

SJMP T0INT

ORG 0020H

T0INT:MOV TL0,#058H ;重赋T0初值

MOV TH0,#9EH

DJNZ R7,EXIT ;软件计数为零吗

MOV R7,#28H ;计数已到,重赋初值

CPL ;输出取反,控制灯亮或灭

EXIT: RETI ;中断返回

END

单片机整点报时闹钟

单片机最小应用系统 设 计 报 告 指导老师:吴兆华 学生:曾雅琼 学号: 092011109 机电工程学院 2010年五月

目录 一设计题目 (3) 二设计目的 (3) 2.1 设计目的要求 (3) 2.2 系统设计意义 (3) 三系统硬件图 (3) 四程序流程图 (4) 五、系统说明与分析 (4) 5.1 系统主要组成部分 (5) 5.2 单片机最小系统部分 (5) 5.2.1 MCS-51系列单片机概述 (5) 5.2.2 MCS-51系列单片机的并行I/O口 (6) 5.2.3 MCS-51系列单片机的工作方式和时序 (7) 5.3 数码显示部分 (8) 5.3.1概述 (8) 5.3.2 LED数码管引脚结构 (8) 5.3.3 LED数码管显示原理 (9) 5.3.4 LED数码管的驱动方式 (10) 5.4电路板的制作 (11) 5.5 系统连线说明分析 (12) 六源程序 (13) 七总结 (19) 八参考文献 (20)

一设计题目 整点报时闹钟 二设计目的 该单片机最小应用系统设计目的及要求如下: 2.1 设计目的要求 1、通过本次实验,掌握单片机I/O口的使用,6位7段数码管动态显示数据的方法 以及蜂鸣器的用法; 2、通过对单片机的使用和编程,了解单片机的应用编程; 3、掌握单片机汇编语言设计和分析方法; 4、学会使用并熟练掌握电路绘制软件Protel99SE; 5、掌握电路图绘制及PCB图布线技巧。 2.2 系统设计意义 1、在系统掌握单片机相应基础知识的前提下,熟悉单片机最小应用系统的设计方法及系统设计的基本步骤。 2、完成所需单片机最小应用系统原理图设计绘制的基础上完成系统的电路图设计。 3、完成系统所需的硬件设计制作,在提高实际动手能力的基础上进一步巩固所学知识。 4、进行题目要求功能基础上的软件程序编程,会用相应软件进行程序调试和测试工作。 5、用AT89S51,DAC0823设计出题目所要求的电压输出,实现电压值动态显示,并针对实际设计过程中软、硬件设计方面出现的问题提出相应解决办法。

基于51单片机的秒表设计

江西理工大学应用科学学院信息工程系单片机原理与应用课程设计报告 设计题目:基于51单片机的秒表设计 专业:电子信息工程 班级:电信121 学号: 08060312109 参与人员:贺佳、周代元、周昶旭、张浥中 指导老师:王苏敏 完成日期: 2015年1月20日

目录 1 设计任务和性能指标 (1) 1.1 课题内容 ....................... 错误!未定义书签。 1.2 课题要求 ........................ 错误!未定义书签。 2 设计方案............................. 错误!未定义书签。 2.1 需求分析 (3) 2.2 方案论证 (3) 3系统软件设计 (5) 4.1 系统软件流程图................... 错误!未定义书签。 4.2 实验程序清单 .................... 错误!未定义书签。 4 系统硬件设计 (10) 5.1 调试步骤 (11) 5.2 性能分析 ........................ 错误!未定义书签。5系统硬件设计.......................... 错误!未定义书签。参考文献.. (14)

1 设计任务和性能指标 1 课题内容要求及目的 1.1课题内容 用AT89C51设计一个秒表,该秒表课可显示0.0~99.9秒的时间,进行相应的单片机硬件电路的设计并进行软件编程利用单片机定时 器/计数器中断设计秒表,从而实现秒、十分之一秒的计时。综合运用所学的《单片机原理与应用》理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。通过本次系统设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握。本系统利用单片机的定时器/计数器定时和记数的原理,通过采用proteus仿真软件来模拟实现。模拟利用AT89C51单片机、LED 数码管以及控件来控制秒表的计数以及计位!其中有三位数码管用来显示数据,显示秒(两位)和十分之一秒,十分之一秒的数码管计数从0~9,满十进一后显示秒的数码管的数字加一,并且十分之一秒显示清零重新从零计数。计秒数码管采用三位的数码管,当计数超过范围是所有数码管全部清零重新计数。 1.2课题要求 本课题是基于单片机的秒表系统设计,它的具体要求有以下几点: (1)用单片机AT89C51实现; (2)以0.1秒为最小单位进行显示; (3)秒表量程为0.0-99.9秒,用 LED显示;

[业务]51单片机期末考试试卷及答案2

[业务]51单片机期末考试试卷及答案2 一、填空题 1、设X=5AH,Y=36H,则X与Y“或”运算为7EH,X与Y的“异或”运算为 6CH。 2、若机器的字长为8位,X=17,Y=35,则X,Y=110100,X,Y=11101110(要求 结果写出二进制形式)。 3、单片机复位后,堆栈指针SP的值是07h。 4、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为1/6us,机器周期为2us。 5、一个函数由两部分组,即说明部分和语句部分。 6、C语言中输入和输出操 作是由库函数scanf和printf等函数来完成。 7.当MCS-51引脚 ALE 信号有效时,表示从Po口稳定地送出了低8位地址. 8.MCS-51的堆栈是软件填写堆栈指针临时在_片内数据存储_器内开辟的区域. 9.MCS-51有4组工作寄存器,它们的地址范围是 00H-1FH 。 10.MCS-51片内 20H-2FH 范围内的数据存储器,既可以字节寻址又可以位寻址. 11.计算机的系统总线有数据总线、地址总线、控制总线。 12.一个机器周期等于 6个状态周期,振荡脉冲2分频后产生的时钟信号的周期定义为状态周期。 13、单片机的复位操作是_高电平,寄存器IE的值是_EA、ES、ET1、EX1、 ET0、EX0_。 14、若选择内部程序存储器,应该设置为高电平(高电平/低电平),那么,PSEN信号的处理方式为不用。 15、单片机程序的入口地址是0000H ,外部中断1的入口地址是0013H 。 16、片机的内部RAM区中,可以位寻址的地址范围是20H-2FH ,特殊功能寄存器中,可位寻址的地址是能被8整除的地址。

语音芯片时钟电路(整点报时名闹铃设置)程序

#include unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; unsigned char code tab[]={0xfd,0xfb,0xf7,0xef,0xdf,0xbf}; unsigned char code ts[]={0x00,0x08,0x10,0x18,0x20,0x28,0x30,0x38,0x40,0x48,0x50}; unsigned char wei[]={0,1,2,3,4,5}; unsigned char sec,min,hou,rsec,rmin,rhou,tcont; unsigned char a0,a1,a2; unsigned char smh; void delay(void) //延时子程序 { unsigned char i,j; for (i=10;i>0;i--) for(j=248;j>0;j--); } void delay2(void) //1420专用延时子程序 { unsigned char i,j,k; for (i=200;i>0;i--) for(j=248;j>0;j--) for(k=20;k>0;k--); } void play(unsigned char temp) //1420播放子程序 { P1=0;P3_0=1;P3_1=1;P1=temp; P3_1=0; delay2(); P1=0; P3_1=1; } void display(void) //显示子程序 { for(a2=0;a2<6;a2++) { wei[0]=hou/10; wei[1]=hou%10; wei[2]=min/10; wei[3]=min%10; wei[4]=sec/10; wei[5]=sec%10; P2=tab[a2]; P0=table[wei[a2]]; delay(); } } void rdisplay(void) //闹钟显示子程序 { for(a2=0;a2<6;a2++) { wei[0]=rhou/10; wei[1]=rhou%10;

51单片机课程设计

课程设计说明书
课程设计名称






学生姓名
指导教师
单片机原理及应用课程设计 电子信息工程 140405 20141329 李延琦 胡黄水
2016 年 12 月 26 日

课程设计任务书
课程设计 题目
酒精测试仪
起止日期
2016 年 12 月 26 日— 2017 年 1 月 6 日
设计地点
计算机科学与工程学 院单片机实验室 3409
设计任务及日程安排: 设计任务:分两部分: (一)、设计实现类:进行软、硬件设计,并上机编程、联线、调试、 实现; 1.电子钟的设计 2.交通灯的设计 3.温度计的设计 4.点阵显示 5.电机调速 6.电子音乐发声(自己选曲) 7.键盘液晶显示系统 (二)、应用系统设计类:不须上机,查资料完成软、硬件设计画图。 查资料选定题目。 说明:第 1--7 题任选其二即可。(二)里题目自拟。 日程安排: 本次设计共二周时间,日程安排如下: 第 1 天:查阅资料,确定题目。 第 2--4 天:进实验室做实验,连接硬件并编写程序作相关的模块实验。 第 5--7 天:编写程序,并调试通过。观察及总结硬件实验现象和结果。 第 8--9 天:整理资料,撰写课程设计报告,准备答辩。 第 10 天:上交课程设计报告,答辩。 设计报告要求:
1. 设计报告里有两个内容,自选题目内容+附录(实验内容),每 位同学独立完成。 2. 自选题目不须上机实现,要求能正确完成硬件电路和软件程序 设计。内容包括: 1) 设计题目、任务与要求 2)硬件框图与电路图 3) 软件及流程图 (a)主要模块流程图 (b)源程序清单与注释 4) 总结 5) 参考资料 6)附录 实验上机调试内容
注:此任务书由指导教师在课程设计前填写,发给学生做为本门课程设计 的依据。

51单片机实验 秒表设计

实验报告 一、实验名称 10秒计时的秒表设计 二、实验内容 精确到0.1秒的秒表 三、相关模块 led数码管、usb、独立键盘 四、实验代码 #include "reg52.h" typedef unsigned int u16; //对数据类型进行声明定义 typedef unsigned char u8; sbit LSA=P2^2; sbit LSB=P2^3; sbit LSC=P2^4; sbit k1=P3^1; sbit k2=P3^0; sbit k3=P3^2; sbit k4=P3^3; u8 code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; u16 s,sec; unsigned int i; unsigned int j; unsigned int a,b,c,d; u8 mb[2]; void Timer0Init() { TMOD|=0X01;//选择为定时器0模式,工作方式1,仅用TR0打开启动。 TH0=0XFC; //给定时器赋初值,定时1ms TL0=0X18; TR0=0;//打开定时器 } void delay(u16 n) { while(n--); } void DigDisplay1(u16 i)

{ switch(i) { case(0): LSA=0;LSB=0;LSC=0; break; case(1): LSA=1;LSB=0;LSC=0; break; case(2): LSA=0;LSB=1;LSC=0; break; case(3): LSA=1;LSB=1;LSC=0; break; case(4): LSA=0;LSB=0;LSC=1; break; case(5): LSA=1;LSB=0;LSC=1; break; case(6): LSA=0;LSB=1;LSC=1; break; case(7): LSA=1;LSB=1;LSC=1; break; } if (i==1) { P0=smgduan[mb[i]]+0x80;//发送段码 } else { P0=smgduan[mb[i]]; } delay(1); //间隔一段时间扫描 P0=0x00;//消隐 } void DigDisplay2(u16 i) { i=i+3; switch(i) { case(0): LSA=0;LSB=0;LSC=0; break; case(1): LSA=1;LSB=0;LSC=0; break; case(2): LSA=0;LSB=1;LSC=0; break; case(3): LSA=1;LSB=1;LSC=0; break;

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

一、选择题 从下列各题4个备选答案中选出一个或二个正确答案 并将其代号写在题干后面的括号内。 1、8051基本型单片机内部程序存储器容量为 C 。 A、16KB B、8KB C、4KB D、128B 2、8051基本型单片机内部RAM容量为D。 A、16KB B、8KB C、4KB D、128B 3、当优先级的设置相同时 若以下几个中断同时发生 A 中断优先响应。 A、外部中断0 B、T1 C、串口 D、T0 4、在80C51单片机应用系统中 可以作为时钟输出的是 C 引脚。 A、EA B、RST C、ALE D、PSEN 5、当CPU响应外部中断1 的中断请求后 将自动转向 B 。 A、0003H B、0013H C、000BH D、001BH 6、为了能够使MCS-51单片机在正常工作中及时服务于多个外设 以下传送方式最适用的是 D 。 A、异步 查询 传送 B、同步 无条件 传送 C、DMA传送 D、中断传送 7、已知1只共阴极LED显示器 其中a笔段为字形代码的最低位 若需显示数字1 它的字形代码应为(A )。A、06H B、0F9H C、30H D、0CFH 8、已知1只共阳极LED显示器 其中a笔段为字形代码的最低位 若需显示小数点“.” 它的字形码应为(A)。A、7FH B、0F9H C、30H D、80H 9、已知1只共阴极LED显示器 其中a笔段为字形代码的最低位 若需显示小数点“.”共阳极 它的字形码应为(A )。A、80H B、0F9H C、30H D、7FH 10、下列数据字定义的数表中 (C、D)是错误的。 A、DW “AA” B、DW “A” C、DW “OABC” D、DW 1ABC2H 11、若P1口接有一个4×4的行列键盘 则P1口一定有 C、D 。 A、8位输入口 B、8位输出口 C、4位输入口 D、4位输出口 12、以下指令中能够产生WR信号的是 B、D 。 A、MOV @R0,A B、MOVX @R0,A C、MOVX A @DPTR D、MOVX @DPTR,A 13、8031单片机的定时器T1用作定时方式时是 A、B 。 A、以内部时钟频率为定时基准 12个时钟周期加1 B、以内部时钟频率为定时基准 1个机器周期加1 C、以外部脉冲为定时基准 12个脉冲加1 D、以外部脉冲为定时基准 每个脉冲加1 14、DAC0832在单片机系统中是一种 B、D 器件。 A、输入 B、输出 C、将数字量转换成模拟量 D、将模拟量转换成数字量 15、家用电器中使用的单片机应属于计算机的 B 。 A、辅助设计应用B.测量、控制应用C.数值计算应用 D.数据处理应用 16、对程序存储器的读操作 只能使用 D 。 A MOV指令 B. PUSH指令 C. MOVX指令 D. MOVC指令 17、若82C55的PC口接有一个4×4的行列键盘 则PC口一定有 C、D 。 A、8位输入口 B、8位输出口 C、4位输入口 D、4位输出口 18、下列说法正确的是 A、B 。 A、立即数寻址方式是操作数本身就在指令中 而不是它的地址在指令中。

基于51单片机设计的带有测温功能的电子时钟汇总

、 职业技能训练之 电子技术课程设计报告 学院电子与信息学院 设计题目基于51单片机设计的带有测温功能的电子时钟班级XXX 姓名XXX 学号XXX 指导教师XXX 时间2012年06月25日

目录 一、设计要求 二、课程设计的方案、目的及意义 三、硬件设计方案 四、软件设计方案 五、总结 六、参考资料

一、设计要求 用51单片机设计带温度显示的电子时钟,具体要求如下: 1、利用DS1302时钟芯片实现时钟功能模块。 2、时钟要求可以调节时间:年、月、日、时、分、秒。 3、利用LCD1602显示。 4、利用DS18B20芯片实现温度功能模块。 5、利用按键完成各项功能。 二、课程设计方案、目的及意义 1、总体方案: 用STC89C51单片机作为CPU主控制器,DS1302时钟芯片提供准确时钟信号,DS18B20温度传感器采集温度信息,三个按键进行加减调整、功能切换作用,通过LCD1602对外多功能显示。 2、具体方案: CPU控制所有模块,通过循环反复从DS1302中读取时钟信息,传送至LCD1602显示,得到基本时钟功能。当分为59,秒为56时开始,每隔一秒LED 灯点亮240毫秒,0分0秒时LED灯点亮700毫秒。从而实现整点光报时。 定时循环从DS18B20中读取温度信息,传送至LCD1602显示,得到基本温度计功能。当温度高于30度(包括30度)时,点亮红色LED灯,提醒当天为高温天气。低于0度时,点亮蓝色LED灯,提醒当天为冰冻天气。 键盘使用扫面方式,MENU键控制功能切换,完成时钟和温度间的转换。OK键控制时间调整与确定,UP、DOWN键调节时间,R、L 键选择调整对象。进入调整时,暂停DS1302数据读取,并将改变的时间数据写入DS1302,并送LCD1602显示,同时,启动LCD1602光标闪烁,确定调整对象,完成人机对话。退出调整时,停止写入数据,重新读取DS1302时钟信息。从而完善时钟功能。 3、目的及意义 可作为产品生产,作为居家的时钟显示与温度计。

51单片机课程设计 AD转换

课程设计报告 华中师范大学武汉传媒学院 传媒技术学院 电子信息工程2011 仅发布百度文库,版权所有.

AD转换 要求: A.使用单片机实现AD转换 B.可以实现一位AD转换,并显示(保留4位数字)设计框图:

方案设计: AD转换时单片机设计比较重要的实验。模数转换芯片种类多,可以满足不同用途和不同精度功耗等。 外部模拟量选择的是简单的电位器,通过控制电位器来改变模拟电压。显示电压值采用一般的四位七段数码管。而AD转换芯片采用使用最广的ADC0809 ADC0809芯片有28条引脚,采用双列直插式封装,如图所示。 下面说明各引脚功能: ?IN0~IN7:8路模拟量输入端。 ?2-1~2-8:8位数字量输出端。 ?ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。?ALE:地址锁存允许信号,输入端,高电平有效。 ?START: A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。 ?EOC: A/D转换结束信号,输出端,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。 ?OE:数据输出允许信号,输入端,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 ?CLK:时钟脉冲输入端。要求时钟频率不高于640KHz。

?REF(+)、REF(-):基准电压。 ?Vcc:电源,单一+5V。 ?GND:地 工作原理: 首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC 变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。 本次实验采用中断方式 把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。 不管使用上述哪种方式,只要一旦确定转换完成,即可通过指令进行数据传送。 首先送出口地址并以信号有效时,OE信号即有效,把转换数据送上数据总线,供单片机接受。 采用中断可以减轻单片机负担。并可以使程序有更多的空间作二次开发。

基于51单片机的跑表,秒表程序c语言程序

基于51单片机的跑表,秒表程序c语言程序#include #define uchar unsigned char #define uint unsigned int uchar table[]=" 00:00:00:00 "; bit flag=0; sbit en=P2^0; sbit rs=P2^1; sbit s1=P1^0; sbit s2=P1^1; sbit bb=P1^2; uchar shi,fen,miao,biao,tt,num1,aa; void delay(uint z) { uint i,j; for(i=z;i>0;i--) for(j=110;j>0;j--); } void write_com(uchar com) { rs=0; P0=com;

delay(10); en=1; delay(10); en=0; } void write_date(uchar date) { rs=1; P0=date; delay(10); en=1; delay(10); en=0; } void display(uchar com1,uchar date1) { uchar aa,bb; aa=date1/10; bb=date1%10; write_com(0x80+com1); write_date(0x30+aa);

write_date(0x30+bb); } void init() { TMOD=0x01; ET0=1; TR0=0; EA=1; TH0=(65536-10000)/256; TL0=(65536-10000)%256; en=0; write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01); write_com(0x80+0x40); for(num1=0;num1<17;num1++) { write_date(table[num1]); delay(5); }

51单片机原理期末考试题

1.若累加器A中的数据为67H,则PSW中的P=_1__。 2. 一个机器周期= _6_个状态周期=12个振荡周期。 3.89C51的堆栈是按照先进后出的原则进行存取的RAM区。 4. 用一条指令实现以下功能: 若A中数据不等于200,则程序转至PROM_ CJNZ A,#200H,PROM__。 5. 为了使10H—17H作工作寄存器使用RS1, RS0的取值为__1,0。 6. 89C51中21个特殊功能寄存器,其地址凡是能被8整除的都有位寻址功能。 7. 89C51单片机有片内ROM容量_4KB , RAM容量128。 8. 某串行通信中有1个起始位,8个数据位和1个停止位,应选择的异步串行通信方式为方式1。 9. 在89C51单片机初始化时,SP存放的是07H。 10. 当89C51引脚ALE信号有效时,表示从P0口稳定地送出了_数据和地信息。 四、判断题(每小题2分,共20分) 1.如果发生除法溢出错误,则PSW标志位P置1。(∨) 5.对于89C51单片机,当CPU对内部程序存储器寻址超过4K时,系统会自动在外部程序存储器中寻址(∨)。 6.外加晶振频率越高,系统运算速度也就越快,系统性能也就越好(∨)。 7. 位TF0是定时器T1的溢出中断标志位。(∨) 8.在定时器T0和外部中断1都设为高优先级时,外部中断1优先级高于定时器T0。(×) 9.子程序的返回指令是RETI ,中断程序的返回指令是RET。(×) 10.波特率是数据传输的速率,指每秒传送的字节数。(∨) 3、51有 5个中断源,有2个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择 4、中断请求信号有电平触发和脉冲触发两种触发方式。 6、74LS273通常用来作简单输出接口扩展;而74LS244则常用来作简单输入接口扩展。 7、A/D转换器的三个重要指标是转换速度、分辨率和转换精度。 二、选择题(从备选答案中选择一个正确答案,并将代号写在括号内。每题2分,共10分) 1、MCS-51单片机外扩存储器芯片时,4个I/O口中用作数据总线的是( B )。 (A)P0和P2口(B)P0口(C)P2和P3口(D)P2口 2、访问外部数据存储器时,不起作用的信号是( C )。 (A)RD (B) WR (C) PSEN (D)ALE 3、使用定时器T1时,有几种工作模式( C )。 (A)1种(B)2种(C)3种(D)4种 4、MCS-51响应中断时,下面哪一个条件不是必须的( C )。 A、当前指令执行完毕 B、中断是开放的 C、没有同级或高级中断服务 D、必须有RETI指令 5、当MCS-51进行多机通讯时,串行接口的工作方式应选为( C )。 (A)方式0 (B)方式1 (C)方式2 (D)方式0或方式2 三、简答题(每题15分,共30分) 1、MCS-51单片机内部有几个定时/计数器?它们由哪些寄存器组成? 答:MCS-51单片机内部有两个16位可编程的定时/计数器,简称定时器0(T0)和定时器1(T1)。它们分别由方式寄存器TMOD、控制寄存器TCON和数据寄存器TH0、TL0,TH1、TL1组成。

51单片机c语言电子钟(已加入调时、闹铃、整点报时功能)

51单片机c语言电子钟(已加入调时、闹铃、 整点报时功能) 效果图:

程序如下: //51单片机c语言电子钟(已加入调时、闹铃、整点报时功能) //WHJWNAVY 2011/10/14 #include #include #define uchar unsigned char #define uint unsigned int /*七段共阴管显示定义*/ //此表为 LED 的字模, 共阴数码管 0-9 - uchar code dispcode[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f, 0x40}; //段码控制 /*定义并初始化变量*/ uchar seconde=0;//秒 uchar minite=0;//分 uchar hour=12; //时 uchar mstcnt=0;//定时器计数,定时50ms,mstcnt满20,秒加1 uchar shi=0;//闹铃功能 uchar fen=0;

uchar bjcs;//报警次数 sbit P1_0=P1^0; //second 调整定义sbit P1_1=P1^1; //minite调整定义sbit P1_2=P1^2; //hour调整定义sbit P1_5=P1^5; //整点报时 sbit P1_3=P1^3; //闹铃功能,调整时间 sbit P1_6=P1^6; //调整时 sbit P1_7=P1^7; //调整分 sbit P1_4=P1^4; //关闭闹铃 /*函数声明*/ void delay(uint k ); //延时子程序 void time_pro( ); //时间处理子程序 void display( ); //显示子程序 void keyscan( ); //键盘扫描子程序 /*延时子程序*/ void delay (uint k) { uchar j; while((k--)!=0) { for(j=0;j<125;j++)

基于单片机的秒表设计单片机课程设计

基于单片机的秒表设计单片机课程设计

单片机课程设计 项目名称基于单片机的秒表设计 专业班级通信102班 学生姓名青瓜 指导教师… 2012年11 月20日

摘要 本课程设计的数字电子秒表系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。将软、硬件有机地结合起来,使得系统能够实现五位LED显示,显示时间为0~99.99秒,计时精度为0.01秒,能精确地进行计时,并可以随时暂停和开始。软件系统采用C语言编写,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,硬件系统利用PROTEUS强大的功能来实现,简单且易于观察,在仿真中就可以观察到系统实际的工作状态。 关键词:AT89C51单片机;数字秒表;数码管

Abstract This course is designed digital electronic stopwatch system uses the AT89C51 microcontroller devices, the use of timer / counter timing and counting principle, combined with the display circuit LED digital tube as well as the external interrupt circuit designed timer. The hardware and software combine to enable the system to achieve five LED display, the display time of 99.99 seconds, the timing accuracy of 0.01 seconds, the correct timing, and the right to suspend and start. Software system using C language, including the display program, the timer interrupt service external interrupt service routine, delay procedures, hardware system to implement the use of the PROTEUS powerful functionality, simple cut easily observed in the simulation to the actual work can be observed status. Keywords: AT89C51 Microcontroller; Digital stopwatch; Digital tubes

单片机期末考试试题7(带答案)

试题7 一、填空(25分,每空1分) 1. PSW中的RS0、RS1=01B,此时R2的字节地址为( 0AH )。 2. 假定DPTR的内容1000H,A中的内容为40H,执行指令: 2000H: MOVC A,@A+DPTR 后,送入A的是程序存储器( 2040 H )单元的内容。 3. 假定A中的内容为79H,R5中的内容为78H,执行指令: ADD A,R5 DA A 的内容为( 1 )。 后,累加器A的内容为( 5E )H,C Y 4.当AT89S51单片机响应中断后,必须用软件清除的中断请求标志是( TI,RI )。 5.TMOD中的GATEx=1时,表示由两个信号TRx和( INT1(F非) )控制定时器的启停。 6.在AT89S51单片机的RESET端出现(持续时间大于两个机器周期)的高电平后,便可以可靠复位,复位后的PC中的内容为( 00000 )H。 7.当AT89S51单片机与慢速外设进行数据传输时,最佳的传输方式是(查询方式)。 8.DA转换器的两个最重要的技术指标为(分辨率)和(建立时间)。 9.在存储器扩展中,无论是线选法还是译码法,最终都是为扩展芯片的( 片选 )端提供(片选)信号。 10. 波特率定义为 ( 每秒传送的位数 )。串行通信对波特率的基本要 求是互相通信的甲乙双方必须具有 ( 相同 ) 的波特率。 11. 若串行通信按方式1传送,每分钟传送3000个字符(8位/每字符),其波特率是(400bit/s )。 12. AT89S51片内( 20H-2FH )地址范围内的数据存储器,既可以字节寻址又可以位寻址。 13.8KB RAM存储器的首地址若为1000H,则末地址为(2FFFH)H。 14.AT89S51单片机控制TPμP-40A/16A微型打印机打印英文或数字时,要把打印字符的()码送给微型打印机。 15.已知8段共阴极LED显示器显示字符“H”的段码为76H,则8段共阳极LED显示器显示字符“H”的段码为()。 16.当键盘的按键数目少于8个时,应采用()式键盘。当键盘的按键数目

基于51单片机控制的语音报时万年历课程设计报告书

基于51单片机控制的语音报时万年历 -----20/11/2013 SDU(WH) 一.实验要求 运用单片机及相关外设实现以下功能: 1)万年历及时钟显示 2)时间日期可调 3)可对时间进行整点报时和随机报时 二.方案分析 根据实验要求,选用STC公司的8051系列,STC12C5A16S2增强型51单片机。此单片机功能强大,具有片EEPROM、1T分频系数、片ADC转换器等较为实用功能,故选用此款。 实验中,对日期和时间进行显示,显示的字符数较多,故选用12864LCD屏幕。该屏幕操作较为便捷,外围电路相对简单,实用性较强。 为了实现要求中的时间日期可调,故按键是不可缺少的,所以使用了较多的按键。一方面,单片机的I/O口较为充足;另一方面,按键较多,选择的余地较大,方便编程控制。 实验中,并未要求对时间和日期进行保存和掉电续运行,所以并未添加EEPROM和DS12C887-RTC芯片。实际上,对万年历来说,这是较为重要的,但为了方便实现和编程的简单,此处并未添加,而是使用单片机的定时器控制时间,精度有差别。且上电默认时间为2014-01-01 09:00:00 之后需要手动调整为正确时间。 要求中的语音报时功能,这里选用ISD1760芯片的模块来帮助实现。此模块通过软件模拟SPI协议控制。先将所需要的声音片段录入芯片的EEPROM区域,之后读出各段声音的地址段,然后在程序中定义出相应地址予以控制播放哪一声音片段。 三.电路硬件设计 实际效果图 四.程序代码部分

Main.h #ifndef _MAIN_H #define _MAIN_H #include "reg52.h" #include "INTRINS.H" #include "math.h" #include "string.h" #include "key.h" #include "led.h" #include "12864.h" #include "main.h" #include "isd1700.h" #include "sound.h" extern unsigned int count; extern unsigned int key_time[8]; extern unsigned char key_new; extern unsigned char key_old; extern unsigned char stop_flag; extern unsigned char key_follow[8]; extern unsigned int key_num[8]; sbit BEEP=P3^7; sbit ISD_SS=P0^7; sbit ISD_MISO=P0^4; sbit ISD_MOSI=P0^5; sbit ISD_SCLK=P0^6; extern unsigned char date_show[]; extern unsigned char time_show[]; extern unsigned char sec; extern unsigned char min; extern unsigned char hour; extern unsigned char day; extern unsigned char month; extern unsigned char year_f; extern unsigned char year_l; extern unsigned char leap_year_flag;

51单片机课程设计实验报告

51单片机课程设计报告 学院: 专业班级: 姓名: 指导教师: 设计时间:

51单片机课程设计 一、设计任务与要求 1.任务:制作并调试51单片机学习板 2.要求: (1)了解并能识别学习板上的各种元器件,会读元器件标示; (2)会看电路原理图; (3)制作51单片机学习板; (4)学会使用Keil C软件下载调试程序; 用调试程序将51单片机学习板调试成功。 二、总原理图及元器件清单 1.总原理图 2.元件清单 三、模块电路分析 1. 最小系统: 单片机最小系统电路分为振荡电路和复位电路, 振荡电路选用12MHz 高精度晶振, 振荡电容选用22p和30p 独石电容;

图 1 图 2 复位电路使用RC 电路,使用普通的电解电容与金属膜电阻即可; 图 3 当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST 为高电平,之后随着时间推移电源负极通过电阻对电容放电,放完电时RST 为低电平。正常工作为低电平,高电平复位。 2. 显示模块: 分析发光二极管显示电路: 图 4 发光二极管显示电路分析:它是半导体二极管的一种,可以把电能转化成光能,常简写为

LED。发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。当给发光二极管加上正向电压后,产生自发辐射的荧光。图中一共有五个发光二极管 其中一个为电源指示灯,当学习板通电时会发光以指示状态。其余四个为功能状态指示灯,实际作用与学习板有关 分析数码管显示电路 图 5 数码管显示电路分析:数码管按段数分为七段数码管和八段数码管,图中所用为八段数码管(比七段管多了一个小数点显示位),按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管.共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。数码管主要用来显示经电路板处理后的程序的运行结果。图中使用了八个八段数码管,可以显示八个0-15的数字。使用数码管可以直观的得到程序运行所显示的结果.也可以显示预置在学习板上的程序,主要通过16个开关来控制。 四、硬件调试 1、是否短路 用万用表检查P2两端是短路。电阻为0,则短路,电阻为一适值,电路正常。 2、焊接顺序 焊接的顺序很重要,按功能划分的器件进行焊接,顺序是功能部件的焊接--调试--另一功能部件的焊接,这样容易找到问题的所在。 3、器件功能 1)检查原理图连接是否正确 2)检查原理图与PCB图是否一致 3)检查原理图与器件的DA TASHEET上引脚是否一致 4)用万用表检查是否有虚焊,引脚短路现象 5)查询器件的DA TASHEET,分析一下时序是否一致,同时分析一下命令字是否正确 6)通过示波器对芯片各个引脚进行检查,检查地址线是否有信号的 7)飞线。用别的的口线进行控制,看看能不能对其进行正常操作,多试验,

基于51单片机秒表的程序设计[1]

基于51单片机秒表的程序设计 1.设计目的: (1)利用单片机定时器中断和定时器计数方式实现秒、分定时。 (2)通过LED显示程序的调整,熟悉8155与8051,8155与LED的接口技术,熟悉LED动态显示的控制过程。 (3)通过键盘程序的调整,熟悉8155与矩阵式键盘的接口技术,熟悉键盘扫描原理。 (4)通过阅读和调试简易秒表整体程序,学会如何编制含LED动态显示、键盘扫描和定时器中断等多种功能的综合程序,初步体会大型程序的编制和调试技巧。 2.设计步骤与要求 (1)要求:以8位LED右边2位显示秒,左边6位显示0,实现秒表计时显示。以4×4矩阵键盘的KE0、KE1、KE2等3键分别实现启动、停止、清零等功能。 (2)方法:用单片机定时器T0中断方式,实现1秒定时;利用单片机定时器1方式3计数,实现60秒计数。用动态显示方式实现秒表计时显示,用键盘扫描方式取得KE0、KE1、KE2的键值,用键盘处理程序实现秒表的启动、停止、清零等功能。 (3)软件设计:软件整体设计思路是以键盘扫描和键盘处理作为主程序,LED动态显示作为子程序。二者间的联系是:主程序查询有无按键,无按键时,调用二次LED动态显示子程序(约延时8ms)后再回到按键查询状态,不断循环;有按键时,LED动态显示子程序作为按键防抖延时被连续调用二次(约延时16ms),待按键处理程序执行完后,再回到按键查询状态,同时兼顾了按键扫描取值的准确性和LED动态显示的稳定性。秒定时采用定时器T0中断方式进行,60秒计数由定时器1采用方式3完成,中断及计数的开启与关闭受控于按键处理程序。由上述设计思路可设计出软件流程图如图1.1所示。 (5)程序编制:编程时置KE0键为“启动”,置KE1键为“停止”,置KE2键为“清零”,因按键较少,在处理按键值时未采用散转指令“JMP”,而是采用条件转移指令“CJNE”,每条指令后紧跟着一条无条件跳转指令“AJMP”,转至相应的按键处理程序,如不是上述3个按键值则

51单片机课程设计报告

成绩: 单片机原理及应用课程设计 课程名<<单片机原理及应用>> 学部机械与电子信息工程学部 专业移动通信技术 学号 姓名 指导教师 日期

一、设计任务与要求 1.任务:制作并调试51单片机学习板 2.要求: (1)了解并能识别学习板上的各种元器件,会读元器件标示; (2)会看电路原理图; (3)制作51单片机学习板; (4)学会使用Keil C软件下载调试程序; 用调试程序将51单片机学习板调试成功。 二、实验内容 (5)AT89S52芯片工作电路,利用晶振提供控制信号。 (6)10引脚下载口与A T89S52芯片相关引脚相连完成下载电路。 (7)8个10K电阻与AT89S52芯片P0口相连,利用上拉电阻组成上拉电路。 (8)使用开关与5.1K电阻连成外部中断0、1电路和复位电路。 (9)利用16个开关做成键盘,实现输入号对已编程的AT89S52芯片的控制并通过数码管显示0--F。 (10)用2片74HC573N具有锁存功能芯片与8个数码管相连,通过编程的A T89S52位选和段选实现输出信号的显示功能。 (11)使用74HC573N锁存功能结合ULN2003AG芯片8非门芯片和74HC04N6非门芯片与4个2N5551三极管实现对步进电机的控制,和控制步进电机的信号结 合LED输出显示的功能。 (12)6、利用1片74HC573N芯片与8个共阴极LED实现跑马灯功能。 三、总原理图 1.总原理图

四、硬件调试 1、是否短路 用万用表检查P2两端是短路。电阻为0,则短路,电阻为一适值,电路正常。 2、焊接顺序 焊接的顺序很重要,按功能划分的器件进行焊接,顺序是功能部件的焊接--调试-- 另一功能部件的焊接,这样容易找到问题的所在。 3、器件功能 1)检查原理图连接是否正确 2)检查原理图与PCB图是否一致 3)检查原理图与器件的DATASHEET上引脚是否一致 4)用万用表检查是否有虚焊,引脚短路现象 5)查询器件的DATASHEET,分析一下时序是否一致,同时分析一下命令字是否正确 6)通过示波器对芯片各个引脚进行检查,检查地址线是否有信号的 7)飞线。用别的的口线进行控制,看看能不能对其进行正常操作,多试验,才能找到问题出现在什么地方。 五、软件调试 1、设置硬件仿真环境 设置硬件仿真环境的具体操作步骤如下: 首先,点击所建工程:Project菜单中的Options for Target…Targer 1?,出现工程的配置窗口,

相关文档
相关文档 最新文档