实验四:定时器实验[通俗易懂]

实验四:定时器实验[通俗易懂]一、实验目的1、掌握单片机定时/计数器的使用方法。2、掌握定时/计数器编程方法。二、实验设备及软件1、PC机2、KEIL513、PROTEAUS三、实验任务1、循环点亮流水等D1-D2-D3…D8, 延时采用定时器T0定时100ms2、循环点亮流水等D1-D2-D3…D8, 延时采用定时器T1定时1s四、仿真电路

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
一、实验目的

1、掌握单片机定时/计数器的使用方法。

2、掌握定时/计数器编程方法。

二、实验设备及软件

1、PC机

2、KEIL51

3、PROTEAUS

三、实验任务

1、循环点亮流水等D1-D2-D3…D8,   延时采用定时器T0定时100ms

2、循环点亮流水等D1-D2-D3…D8,   延时采用定时器T1定时1s

四、仿真电路

 

 
实验四:定时器实验[通俗易懂]

五、实验源程序

1)T0定时100毫秒:

#include<reg51.h>
#include<intrins.h>
void timer0() interrupt 1
{
     TH0=(65536-50000)/256;
     TL0=(65536-50000)%256;
     P0=_crol_(P0,1);
}
int main()
{
     TMOD=0x01;
     TH0=(65536-50000)/256;
     TL0=(65536-50000)%256;
     EA=1;
     ET0=1;
     TR0=1;
     P0=0xfe;
     while(1);
}

2)T1定时1秒:

#include<reg51.h>
#include<intrins.h>
unsigned int count=0;
void timer0() interrupt 3
{
     TH1=(65536-50000)/256;
     TL1=(65536-50000)%256;
     count++;
}
int main()
{
     TMOD=0x50;
     TH1=(65536-50000)/256;
     TL1=(65536-50000)%256;
     EA=1;
     ET1=1;
     TR1=1;
     P0=0xfe;
     while(1)
     {
          if(count==20)
          {
               count=0;
               P0=_crol_(P0,1);
          }
     }
}

六、思考题:利用8051定时/计数器设计一个计时秒表,计时时间0~15秒,十六进制在一个数码管显示输出。

实验四:定时器实验[通俗易懂]

代码:

#include<reg51.h>
#include<intrins.h>
code char tab[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
//共阳极的接法计数
unsigned int count=0;               //定时器计数
unsigned int number=0;             //数码管计数
sbit p1_0=P1^0;
void timer0() interrupt 1
{
     TH0=(65536-50000)/256;
     TL0=(65536-50000)%256;
     count++;
}
int main()
{
     TMOD=0x01;
     TH0=(65536-50000)/256;
     TL0=(65536-50000)%256;
     EA=1;
     ET0=1;
     TR0=1;
     while(1)
     {
          if(count==20)
          {
               count=0;
               p1_0=1;                         //开关处于闭合状态
               P0=tab[number];
               number++;
               if(number==16)
               {
                    number=0;
               }
          }
     }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158846.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python Input输入

    python Input输入实例age:数字类型age:字符串类型age:输入数字类型转换字符串类型方式2%d数字%f浮点方式3

    2022年7月5日
    23
  • Dreamweaver CS6 完全自学教程 (一)[通俗易懂]

    Dreamweaver CS6 完全自学教程 (一)[通俗易懂]DreamweaverCS6完全自学教程DreamweaverCS6教程下载地址(百度网盘):https://pan.baidu.com/s/1fIUk4O36JCNVCfOQSH22vw百度网盘下载(压缩包):https://pan.baidu.com/s/17G11dm_uXFCWVn5y…

    2022年6月11日
    29
  • mysql数据库多表查询练习题[通俗易懂]

    mysql数据库多表查询练习题[通俗易懂]下面练习题中设计四个表。分别为:dept表emp表salgrade表tbyear表1.查出至少有一个员工的部门。显示部门编号、部门名称、部门位置、部门人数。SELECTd.deptno,d.dname,d.loc,e1.`count(*)`FROMdeptdINNERJOIN(SELECTdeptno,COUNT(*)FROMemp…

    2022年5月21日
    56
  • MODIS数据产品介绍

    MODIS数据产品介绍中分辨率成像光谱仪(MODerate-resolutionImagingSpectroradiometer)-MODIS是Terra和Aqua卫星上搭载的主要传感器之一,两颗星相互配合每1-2天可重复观测整个地球表面,得到36个波段的观测数据,这些数据将有助于我们深入理解全球陆地、海洋和低层大气内的动态变化过程,因此,MODIS在发展有效的、全球性的用于预测全球变化的地球系统相互作用模型中

    2022年5月30日
    25
  • DispatcherServlet作用

    DispatcherServlet作用

    2021年11月13日
    40
  • 微机原理与接口技术课件_微型计算机原理与接口技术课后答案

    微机原理与接口技术课件_微型计算机原理与接口技术课后答案原标题:微机原理与接口技术课程教与学(教学大纲)《微机原理与接口技术》教学大纲文/牟琦英文名称:MicrocomputerPrincipleandInterfaceTechnology适用专业:计算机类专业、自动化类专业、电子信息类专业教材:牟琦.微机原理与接口技术(第3版).[M].北京:清华大学出版社,2018一、课程的性质“微机原理与接口技术”是计算机类、电子信息类、自动化类等相关专业…

    2022年10月2日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号