秒表计时器

制作一个秒表计时器,记录0-15秒时间。要求精准,可控。

1.能够用按键控制秒表开始

2.能够用按键控制秒表停止

3.能够用按键控制秒表清零

4.使用定时器控制时间,要求精确。

5.使用1个数码管和多个按键实现功能。

先根据需求判断所需的功能,再改变电路图

然后根据要求开始写代码

 1 #include<reg52.h>
 2 sbit an = P1^0;
 3 sbit qing = P1^1;
 4 unsigned int i = 0;
 5 unsigned int s = 0;
 6 code unsigned char LED_CODE[] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xA7,0xA1,0x86,0x8E};
 7 void INT_T0(void)
 8 {
 9     TMOD = 0X01; //打开定时器0 ,使用模式1定时
10     TH0 = 0XFC;
11     TL0    = 0X18; //初始值
12     EA = 1;//打开总开关
13     ET0 = 1;//打开中断T0开关
14 }
15 void main(void)
16 {
17     INT_T0();
18     TR0 = 0; //定时功能关闭
19     while(1)
20     {
21         if(an == 0)
22             TR0 = 1;       //判断按键按下  ,是则打开定时功能
23         else
24             TR0 = 0;       //  关闭定时功能
25         if(qing == 0)
26             break;            //跳出循环,关闭程序,重新启动
27     }
28 }
29 void time0(void) interrupt 1
30 {
31     TH0 = 0XFC;
32     TL0    = 0X18; //初始值
33     if(i < 1000)
34     {
35         i++;
36     }
37     else
38     {
39         P0 = LED_CODE[s];
40         i = 0;
41         if(s<15)
42             s++;
43         else
44             s = 0;
45     }
46 }

按下P1^0的按钮开始程序,再次按下就停止

按下P1^1的按钮重启程序

原文地址:https://www.cnblogs.com/bmsy/p/11811300.html

时间: 2024-07-31 08:29:18

秒表计时器的相关文章

期中测试( 制作一个秒表计时器 )

制作一个秒表计时器,记录0-15秒时间.要求精准,可控. 1.能够用按键控制秒表开始 2.能够用按键控制秒表停止 3.能够用按键控制秒表清零 4.使用定时器控制时间,要求精确. 5.使用1个数码管和多个按键实现功能. #include<reg52.h> #define LED P0 sbit KEY1 =P1^0; sbit KEY2 =P1^4; unsigned int i = 0; unsigned char n = 0; unsigned char LED_NUM[] = {0xc0,

期中考试秒表计时器

制作一个秒表计时器,记录0-15秒时间.要求精准,可控. 要求: 能够用按键控制秒表开始 能够用按键控制秒表停止 能够用按键控制秒表清零 使用定时器控制时间,要求精确. 使用1个数码管和多个按键实现功能. 1.首先根据要求把电路图加上2个按钮,如图下图所示 2.根据要求写出代码,下面是参考代码 #include<reg52.h> #define LED P0 unsigned int i = 0; unsigned int j =0; sbit KEY1 = P1^0; //暂停,开始按钮 s

开发板制作秒表计时器---我太难了丶

制作一个秒表计时器,记录0-15秒时间.要求精准,可控. 1.能够用按键控制秒表开始 2.能够用按键控制秒表停止 3.能够用按键控制秒表清零 4.使用定时器控制时间,要求精确. 5.使用1个数码管和多个按键实现功能. 将下面代码复制粘贴到C51软件里,编译运行生成.hex文件,再将文件添加到下面电路中,运行.(软件文件,安装方法,创建工程,电路图在我前面博客里有) 右边数码管呈现从1到9数字一次增加,鼠标点击连接接口P1的按钮,数码管启动,再次按下数码管数字停止:点击连接接口P2的按钮,数码管数

[FPGA]Verilog 60s秒表计时器(最大可计时间长达9min)

[FPGA]Verilog 60s秒表计时器 1.引述 这次的实验来自于本人本科课程数电结课时的自选题目.由于这次上传是后知后觉,学校已将小脚丫板子回收,所以在这篇文章中没法贴出代码结果的效果图了,但最终效果已经过测试,可放心食用.那么下面就贴上代码并略加讲解供大家参考. 2.分频模块 我们要实现一个秒表,自然要将实验板中的时钟脉冲clk分频为一个周期为1s的脉冲,已知小脚丫板子的晶振为12MHz.下面贴上分频模块的代码. module divide # ( //parameter是verilo

IOS之秒表计时器

1.利用xib方式新建一个秒表计数器. 功能实现: 该应用有三个按钮:开始,记次,复位 开始:开始控制着秒表的开始,点击后,按钮文字变成停止,在没有开始的情况下不允许记次操作 记次:可以记录多个你点击的时间, 复位:复位可以让秒表归零 实现效果图如下:                                                   1. 新建一个类,勾选xib,然后新建一个试图监控器,然后加载到根视图中 在AppDelegate.m中代码如下: //新建一个视图控制器 Mai

使用setTimeout setInterval实现秒表计时器( 开始/暂停 停止计时)

<!doctype html>   <html lang="en">   <head>   <meta charset="UTF-8">   <meta name="Generator" content="EditPlus®">   <meta name="Author" content="">   <meta

js 秒表计时器(开始,停止,清零)

<html> <head><script type="text/javascript">var c=0var t function timedCount() { document.getElementById('txt').value=c c=c+1 t=setTimeout("timedCount()",1000) } function stopCount() {         clearTimeout(t)     }fun

【转】MATERIAL DESIGN设计规范学习心得

编者按:自学笔记就该这么做!今天分享@東門王三 同学关于Material Design的自学成果,他的学习笔记严谨有序,触类旁通,从Material Design到其他系统的设计规范都有所研究,还认真地做了思维导图,同学们可以边学习边借鉴他的自学方法,一举两得呦. 自学的一大重点就是读书,推荐同学们看一下华为设计总监的经验:<华为设计总监尤原庆:怎样读设计书> 想读好书的同学,可直接到:设计师图书导航 挑选. @東門王三 :随着Android系统从Android 4.4逐步升级到Android

MATLAB命令大全

一.常用对象操作:除了一般windows窗口的常用功能键外.1.!dir 可以查看当前工作目录的文件. !dir& 可以在dos状态下查看.2.who 可以查看当前工作空间变量名, whos 可以查看变量名细节.3.功能键:功能键 快捷键 说明方向上键 Ctrl+P 返回前一行输入方向下键 Ctrl+N 返回下一行输入方向左键 Ctrl+B 光标向后移一个字符方向右键 Ctrl+F 光标向前移一个字符Ctrl+方向右键 Ctrl+R 光标向右移一个字符Ctrl+方向左键 Ctrl+L 光标向左移