历史上的今天
返回首页

历史上的今天

今天是:2025年06月16日(星期一)

正在发生

2021年06月16日 | 51单片机定时器实验

2021-06-16 来源:eefocus

一.实验要求


由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


推荐阅读

史海拾趣

Fagor Electrónica公司的发展小趣事

如今,Fagor Electrónica已经成为电子和数字领域的领军企业之一。展望未来,公司将继续秉承创新驱动的发展理念,加大在人工智能、物联网等新兴领域的投入。同时,Fagor Electrónica还将积极参与全球市场竞争,拓展更广阔的市场空间。相信在不久的将来,Fagor Electrónica将会创造更加辉煌的业绩。

Elec & Eltek公司的发展小趣事

在国内市场取得一定成绩后,Elec公司开始将目光投向国际市场。为了更好地适应国际市场的需求,Elec公司积极引进国际先进技术和管理经验,并加强与国际知名企业的合作。同时,Elec公司还加大了在海外市场的营销力度,通过参加国际展会、举办技术研讨会等方式提高品牌知名度。经过多年的努力,Elec公司的产品已远销欧美、东南亚等多个国家和地区,成为国际市场上具有竞争力的电子品牌。

GPD Optoelectronics Corp公司的发展小趣事

Eltek公司是一家专注于电力电子技术的公司,成立于20世纪中期。创始人王刚(化名)意识到电力电子技术对于提高能源利用效率的重要性,于是决定投身这一领域。在他的带领下,Eltek公司不断研发出高效、可靠的电力电子产品,如变频器、逆变器等。随着可再生能源技术的兴起,Eltek公司抓住机遇,将电力电子技术应用于可再生能源领域,如太阳能、风能等。这一创新举措让Eltek公司在可再生能源领域取得了显著的成绩。

D1 International Inc公司的发展小趣事

D1 International Inc公司深知,持续的技术创新是企业发展的核心动力。因此,公司不断加大研发投入,积极引进和培养高素质的研发人才。通过不断的创新实践,D1 International Inc公司在多个领域取得了重要的技术突破,为公司的发展注入了新的活力。

Feller US公司的发展小趣事

菲斯克(FSR.US)作为一家新兴的电动汽车制造商,自创立之初便面临着巨大的挑战。资金紧张是公司面临的首要问题,为了维持运营和推进研发,公司不得不频繁地寻求融资。在一次次的融资尝试中,菲斯克展现了其坚定的决心和创新的理念,虽然过程充满艰辛,但公司最终通过不断努力,成功获得了一笔重要的投资,为公司的发展奠定了坚实的基础。

Artesyn Embedded Technologies公司的发展小趣事

随着公司产品的不断完善和市场认可度的提高,Artesyn Embedded Technologies开始与全球众多科技大厂建立紧密的合作关系。这些大厂包括知名的通信设备制造商、数据中心运营商等。通过与这些大厂的合作,Artesyn的产品得以广泛应用于各个领域,进一步提升了公司的知名度和影响力。

问答坊 | AI 解惑

学习C语言,进阶高手必备

你必须知道的495个问题-----高手必备 学习C语言,进阶高手必备 需要的就来下载吧,这是我搜集的,自认为还不错!!!…

查看全部问答>

将DBF里的BOXNO字段内容显示到屏幕【求助】

#include #include         #include #include #include \"Header.h\" extern char msg[60]; extern char worker[21]; extern char address[21]; //====================================================== //主 ...…

查看全部问答>

驱动,串口设备绑定

在没有设备名称情况下,用PDEVICE_OBJECT IoAttachDeviceStack(IN PDEVICE_OBJECT SourceDevice,                                 & ...…

查看全部问答>

LabWindows/CVI开发的软件能在ARM9上运行吗

项目要求用NI公司的LabWindows/CVI开发一个应用软件,在ARM9平台上运行,ARM开发版是SBC-2410X,操作系统为WinCE.想问一下用CVI开发出来的软件能不能在该平台上运行.我知道ARM9有很多家公司生产,CVI开发出来的软件在所有ARM9上都能 ...…

查看全部问答>

负反馈不能产生自激振荡?

模电书上说在负反馈放大电路中,输入信号为零时,因为某种电扰动(如合闸通电),其中含有频率为f0的信号,使得AF的附加相移达到180°或-180°,@负反馈变成了正反馈,如果|AF|>1,则产生了自激振荡。我不明白的是,如果@处条件不成立,也就是不存 ...…

查看全部问答>

C8051F tools

新华龙官网找到的一些工具http://www.xhl.com.cn/   …

查看全部问答>

把小弟这两天DIY的过程分享一下,顺便晒一晒第二块板子O(∩_∩)O~

前两天做了个小板子,算是练了练手,承蒙大家夸奖 正好要开始做第二块板子,看到有朋友问了,就把过程也写一下吧,谈不上经验,大家姑且看看;P   首先是打印: 我用的是硫酸纸,按理说阻焊应该是打在菲林上的,但是出去转了一圈没有愿意 ...…

查看全部问答>

各种整流电路图解分析

各种整流电路图解分析…

查看全部问答>

[S3C6410学习心得之一]ok6410开发板基于Ubuntu9.10开发环境搭建-串口

  系统:Ubuntu9.10开发板:飞凌OK6410    最近购入一块新的开发板,芯片是基于三星的S3C6410,ARM11,使用之后发现,速度果然很不错,跟ARM9的S3C2440不可同日而语。飞凌的开发板质量很不错,跟友善之臂相比,谁比较好一目了 ...…

查看全部问答>

modelsim后仿真问题

modelsim可以前仿真,但是不能后仿真,是软件问题还是没有破解完全?我敢保证仿真过程的操作一定正确。…

查看全部问答>