51单片机定时器(考小题大题)
- 格式:ppt
- 大小:559.51 KB
- 文档页数:36


一、选择题从下列各题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)是错误的。
Yybmec
1
51单片机中断系统
51单片机中断级别
中断源 默认中断级别 序号(C语言用)
INT0---外部中断0 最高 0
T0---定时器/计数器0中断 第2 1
INT1---外部中断1 第3 2
T1----定时器/计数器1中断 第4 3
TX/RX---串行口中断 第5 4
T2---定时器/计数器2中断 最低 5
中断允许寄存器IE
位序号 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
符号位 EA ------- ET2 ES ET1 EX1 ET0 EX0
EA---全局中允许位。
EA=1,打开全局中断控制,在此条件下,由各个中断控制位确定相应中断的打开或关闭。
EA=0,关闭全部中断。
-------,无效位。
ET2---定时器/计数器2中断允许位。 EA总中断开关,置1为开;
ET2=1,打开T2中断。 EX0为外部中断0(INT0)开关,……
ET2=0,关闭T2中断。 ET0为定时器/计数器0(T0)开关,……
ES---串行口中断允许位。 EX1为外部中断1(INT1)开关,……
ES=1,打开串行口中断。 ET1为定时器/计数器1(T1)开关,……
ES=0,关闭串行口中断。 ES为串行口(TX/RX)中断开关,……
ET1---定时器/计数器1中断允许位。 ET2为定时器/计数器2(T2)开关,……
ET1=1,打开T1中断。
ET1=0,关闭T1中断。
EX1---外部中断1中断允许位。
EX1=1,打开外部中断1中断。
EX1=0,关闭外部中断1中断。
ET0---定时器/计数器0中断允许位。
ET0=1,打开T0中断。
单片机原理与嵌入式系统设计
实验四:定时器
Write By 别处仰望
2016-4-10
其实一开始我是拒绝的
电路图自己画
大概是这样的
代码是这样的
Ps:将下面的三段程序加入你的工程,就可以运行了
就前两个文件,做一下说明——可以将它们作为你以后的工具,加入到你以后的实验中去。
补充说明:这个程序要求定时,可以采用查询方式和中断方式实现功能,在下面的程序我都一一列举出来了,题目中还要求倒计时,那就你们自己做吧。不能什么都不做,毕竟你们还是要学点东西的。
1 common.h
#include /* special function register declarations */
#include /* prototype declarations for I/O functions */
#include
#include
#include
#include
#define byte unsigned char #define uchar unsigned char
#define word unsigned int
#define uint unsigned int
#define ulong unsigned long
#define BYTE unsigned char
#define WORD unsigned int
#define TRUE 1
#define FALSE 0
extern void initUart(void);/*初始化串口*/
extern void time(unsigned int ucMs);//延时单位:ms
2 common.c
#include /* special function register declarations */
#include
/*********************************************************
图1:蜂鸣器驱动信号示意图 1秒发声 (1500KHZ) P1.1 大连理工大学实验报告
实验时间: 2013 年 7 月 5 日 星期 五实验室(房间号):综420 实验台号码: 6
班级: 电子1004 学号: 201081163 姓名: 黄佳卿
指导教师签字: 成绩:
MCS-51单片机“定时器编程”思考题
(一) 编程要求:
编制一个1秒钟发声程序(参见图1),利用定时器控制无源蜂鸣器发生的时间和频率,单片机的端口驱动蜂鸣器发声。(参见实验教程的6.4.3 定时/计数器的编程实验(二): 蜂鸣器驱动实验)
(二)要求:分别利用T0、T1实现1秒钟发声(1500HZ)操作,其中:
一个定时器控制蜂鸣器的发生频率(1500HZ),使用查询法编程;
另一个定时器做1秒钟定时(50mS×20),使用中断法编程。
(三)实验内容及步骤
1.首先选择一个定时器编程、调试1500HZ的定时周期并通过端口驱动蜂鸣器发声:
2.编制一个1秒钟定时程序;
3.将两者综合起来,实现持续一秒钟的发声持续,1秒钟后停止发声。
(四)实验电路
单片机的P1.1与与蜂鸣器电路连接(参见图2); BUZZ
RET TRi=1?
驱动蜂鸣器发声 N
Y
参考流程图
(五)程序清单及流程图(主程序和中断服务子程序流程图)
编程提示:将发声部分操作编写为子程序(BUZZ),在BUZZ子程序中,判断TRi=1?,如果TRi=1则驱动蜂鸣器发声,如果TRi=0则不发声,直接返回(参见流程图)。
程序清单:
MCS-51
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6