51单片机定时器实验

发布者:ularof不加糖最新更新时间:2021-06-16 来源: eefocus关键字:51单片机  定时器  编程方法 手机看文章 扫描二维码
随时随地手机看文章

一.实验要求


由8031内部定时器1,按方式1工作,即作为16位定时器使用每0.05秒钟T1溢出中断一次。P1口的P1.0-P1.7分别接八个发光二极管。要求编写程序模拟一时序控制装置。开机后第一秒钟L1,L3亮,第二秒钟L2,L4亮,第三秒钟L5,L7亮,第四秒钟L6,L8亮,第五秒L1,L3,L5,L7亮,第六秒钟L2,L4,L6,L8亮,第七秒钟八个二极管全亮,第八秒钟全灭,以后又从头开始,L1,L3亮,然后L2,L4亮......一直循环下去。


二.实验目的


1.学习8031内部计数器的使用和编程方法。


2. 进一步掌握中断处理程序的编程方法。


三.实验电路及连线

P1.0--P1.7 接 L1--L8


四.实验说明


1.关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。内部计数器在单片机中主要有定时器和计数器两个功能。本实验用的是定时器,有关计数器的说明请查阅实验七。


2.内部计数器用作定时器时,是对机器周期计数。每个机器周期的长度是12个振荡器周期。因为实验系统的晶振是11.0592MHz,所以定时常数的设置可按以下方法计算:

机器周期=12÷11.0592MHz=1.0857μS

(65536-定时常数)*1.0857μS=50mS

定时常数=4C00H


3.定时器的有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。TMOD用于设置定时器/计数器的工作方式0~3,并确定用于定时还是用于计数。TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行

或停止等。


4.在例程的中断服务程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。




五.实验程序

ORG 0000H

AJMP START

ORG 001BH ;T1中断入口地址

AJMP INT_T1

ORG 0100H

START:

MOV SP,#60H

MOV TMOD,#10H ;置T1为方式1

MOV TL1,#00H ;延时50mS的时间常数

MOV TH1,#4BH

MOV R0,#00H

MOV R1,#20

SETB TR1

SETB ET1

SETB EA ;开中断

SJMP $

INT_T1: ;T1中断服务子程序

PUSH ACC ;保护现场

PUSH PSW

PUSH DPL

PUSH DPH

CLR TR1 ;关中断

MOV TL1,#00H ;延时50mS常数

MOV TH1,#4BH

SETB TR1 ;开中断

DJNZ R1,EXIT

MOV R1,#20 ;延时一秒的常数

MOV DPTR,#DATA ;置常数表基址

MOV A,R0 ;置常数表偏移量

MOVC A,@A+DPTR ;读常数表

MOV P1,A ;送P1口显示

INC R0

ANL 00,#07H

EXIT:

POP DPH ;恢复现场

POP DPL

POP PSW

POP ACC

RETI

;LED显示常数表

DATA: DB 0FAH,0F5H,0AFH,05FH,0AAH,55H,00H,0FFH

END


关键字:51单片机  定时器  编程方法 引用地址:51单片机定时器实验

上一篇:C51单片机编程规范总则
下一篇:Keil c51指针变量

推荐阅读最新更新时间:2024-11-13 12:36

51单片机驱动点阵16*16左移
这个点阵左移,曾经让我......如今在朋友指导下.........主要部分在红色部分,请大家理解那里就行了!会了也没有什么!硬件:行采用74HC154+S8550,列采用74HC595! #include reg52.h #define uchar unsigned char #define uint unsigned int #define LINE P0//定义行线IO口,即74HC154控制端 #define shudu 20//字移动的速度 sbit DATA=P1^4;//74HC595数据端 sbit CLK=P1^5;//74HC595移位脉冲端 sbit CLKR=P1^6;//74HC595数据锁存端 u
[单片机]
<font color='red'>51单片机</font>驱动点阵16*16左移
51单片机(二十八)—— 外部中断实验
一、外部中断介绍 在前面文章中,我们对中断的概念进行了介绍。STC89C516单片机内部有6个中断源,它们分别为: INT0—外部中断0,由P32端口线引入,低电平或下降沿触发中断。 INT1—外部中断1,由P33端口线引入,低电平或下降沿触发中断。 T0—定时器/计数器0中断,由T0计数器计满回零引起。 T1—定时器/计数器1中断,由T1计数器计满回零引起。 T2—定时器/计数器2中断,由T2计数器计满回零引起。 TI/RI—串行口中断,串行端口完成一帧字符发送/接收后引起。 在定时器实验中,我们已经对T0、T1、T2中断进行了学习,本文我们对INT0和INT1这两个外部中断进行学习。与这两个外部中断
[单片机]
<font color='red'>51单片机</font>(二十八)—— 外部中断实验
基于51单片机的电子时钟课程设计
第一章 设计目的及要求 1.目的 通过对电子时钟系统进行编程与Protues仿真,进一步掌握单片机的组成,P1、P0、P2、P3口的应用,蜂鸣器的应用,定时中断程序的编写及应用,对之前学习的单片机课程进行回顾与应用;初步掌握Protues仿真方法以及用keil软件编写程序的方法。 2.题目与要求 本次课程设计的题目为:电子时钟的设计,其具体要求为: (1)能实现时、分、秒的显示; (2)能实现12、24小时制的切换; (3)能设定时间; (4)能设定闹钟; 整个系统要设计键盘和显示器,利用单片机内部时钟完成定时器的定时设计。 第二章 理论基础 1.AT89C52芯片 AT89C52芯片的引脚图如图1所示。 图1 AT
[单片机]
基于<font color='red'>51单片机</font>的电子时钟课程设计
单片机学习笔记51单片机基础
1980年因特尔退出MCS-51单片机 现在扩展告诉IO口 AD转换器 PWM WDT(看门狗) IIC等 MCS-51停产 与MCS-51兼容的有 Atmel公司 AT89C5X 停产 不支持ISP下载 已经被AT89S5X取代 这个可以ISP下载 SST公司 SST89E5X 带监控程序 可以简单仿真 宏晶STC(大陆的) STC89C5X 支持串口下载 STC89C52 AT表示 Atmel公司的芯片 9表示flash存储器 S表示可以下载的flash LV表示低电压 3.3V 52是型号 2表示8K的ROM 24表示最高使用晶振24M P表示双列直插封装的 D陶瓷封装
[单片机]
单片机学习笔记<font color='red'>51单片机</font>基础
基于51单片机的炭黑复合导电材料的电阻一温度测量系统
0 引 言 随着电子工业及信息技术等产业的迅速发展,对于具有导电功能的高分子材料的需求越来越迫切。导电复合材料具有质量轻、无锈蚀、易于加工成各种复杂形状,尺寸稳定性好,电导率在较大范围内可调,易于大批量生产以及价格便宜等特点,因此广泛应用于抗静电、微波吸收、自控温发热材料、电磁波屏蔽等领域。其中,炭黑复合导电材料是目前应用最广,用量最大的一种。在此以AT89S51单片机为核心,设计一种简易的测量炭黑复合导电材料电阻和温度系统,系统框图如图1所示。 单片机通过热电偶放大器芯片采集当前的温度值;通过电压转换电路采集电阻值,送到FM24C02以备查询,LCD显示当前的电阻和温度情况,使用者可以方便地读出电阻和温度的变化,还可以通
[单片机]
基于<font color='red'>51单片机</font>的炭黑复合导电材料的电阻一温度测量系统
单片机定时器中断时间误差的解决方案
1 前言 单片机内部一般有若干个定时器。如8051单片机内部有定时器0和定时器1。在定时器计数溢出时,便向CPU发出中断请求。当CPU正在执行某指令或某中断服务程序时,它响应定时器溢出中断往往延迟一段时间。这种延时虽对单片机低频控制系统影响甚微,但对单片机高频控制系统的实时控制精度却有较大的影响,有时还可能造成控制事故。为扩大单片机的应用范围,本文介绍它的定时器溢出中断与CPU响应中断的时间误差、补偿误差的方法和实例。 2 误差原因、大小及特点 产生单片机定时器溢出中断与CPU响应中断的时间误差有两个原因。一是定时器溢出中断信号时,CPU正在执行某指令;二是定时器溢出中断信号时,CPU正在执行某中断服务程序。 2.1. CP
[单片机]
51单片机】1602自定义字符原理及示例(”汉“、爱心及摄氏度示例)
原理 设置1602屏幕的对比度的时候我们能够看到5*8的点阵,其实液晶显示的都是字符的字模(下图),而CGROM里面都是已经定义好的,只能读不能写,而RAM是可以读写的所以我们只要将我们自定义的字符字模写入对应的CGRAM中就好,CGRAM一共有8个对应的地址分别为(0x40,0x48,0x50,0x58,0x60,0x68,0x70,0x78),因为每个字模对应8行所以每写完一个字模以后要加8,按照指令写入CGRAM时需要加0x40所以对应地址就如上了,然而其实CGRAM的实际地址是0x00-0x07所以在后面写入数据的时候需要按照实际地址来写入。CGROM中的字模也是同样的原理 字模代码:1602显示模式为5*
[单片机]
【<font color='red'>51单片机</font>】1602自定义字符原理及示例(”汉“、爱心及摄氏度示例)
51单片机对SAA3010T编码芯片进行解码的方法
  单片机电路原理图见下图硬件还可以加个蜂鸣器加以指示。      //功能实现对p1口八个发光二级管控制,程序中设置了串行口来查看遥控器的发送的编码IRCode
[单片机]
用<font color='red'>51单片机</font>对SAA3010T编码芯片进行解码的<font color='red'>方法</font>
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多往期活动

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved