当前位置:懂科普 >

综合知识

> 秒表怎么写

秒表怎么写

1. java简易秒表怎么写

#include<regx51.h>

秒表怎么写

#define KEY P1_7

#define CON P2

#define DATA P0

#define unchar unsigned char

#define unint unsigned int

unchar second=0;

unint count=4000;

/*51实验箱共阳极笔段码(0123456789)*/

//unchar code table[]={0x84,0xf5,0x46,0x54,0x35,0x1c,0x0c,0xd5,0x04,0x14};

/*标准共阴极笔段码(0123456789)*/

unchar code table[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//共阴极笔段码(标准)

void delay();

void display();

void tmr0_int() interrupt 1

{

count--;

if(!count)

{

second++;

count=4000;

}

}

void main()

{

TMOD=0X02;//定时器0工作在方式2

TH0=0X06;

TL0=0X06;//定时器0计数初值

IE=0X82;//开总中断和定时器0中断

TR0=1;

while(1)

{

display();

}

}

void delay()

{

unchar a,b;

for(a=4;a>0;a--)

for(b=248;b>0;b--);

}

void display()

{

if(second>59)

{

second=0;

}

if(second>9)

{

CON=0XFE;

DATA=table[second/10];

delay();

CON=0XFF;

CON=0XFD;

DATA=table[second%10];

delay();

CON=0XFF;

}

else

{

CON=0XFD;

DATA=table[second%10];

}

}

2. 初中物理中的秒表怎么看

秒表的读法:大圈为秒,小圈为分。

若大圈是30分格(顶上写的是30,可能有60格,表明精度到半秒),小圈里一分钟就分为两小格,读完整的几分,若过了一小格,就在大圈秒数上加半分钟,若没过,直接读大圈秒数。

秒表是测量时间间隔的常用仪表,表盘上有一长的秒针和一短的分针,秒针转一周,分针转一格。秒表的分度值常用的有0.2s和0.1s两种。

扩展资料:

它是利用摆的等时性控制指针转动而计时的。在它的正面是一个大表盘,上方有一个小表盘(图1.4-2)。秒针沿大表盘转动,分针沿小表盘转动。分针和秒针所指的时间和就是所测的时间间隔。

在表正上方有一个表把,上有一按钮。旋动按钮,上紧发条,这是秒表走动的动力。用大拇指按下按钮,秒表开始计时;再按下按钮,秒表停止走动,进行读数;再按一次,秒表回零,准备下一次计时。

参考资料:

百度百科—秒表

3. C语言怎么写一个简易秒表

用到time.h文件

里面有个clock();函数,返回一个clock_t类型的数字,表示从程序运行开始,CPU的"滴答"数

而在time.h里有个常量CLOCKS_PER_SEC表示每秒钟有多少个"滴答".

这样,(((float)clock())/CLOCKS_PER_SEC)*1000这样的表达式就能得到从程序运行开始到现在的经过的时间.

程序的大致思路是这样的,程序按下1的时候记下当时的程序运行时间.

从这时起,每时刻捡取程序运行时间,然后减去先前的值,就可以得到已经计时的时间了.

只要让用户按下0结束计时就好了

在conio.h文件里,有个函数kbhit()是个非阻塞函数,用来检查键盘缓冲里有没有按键按下,若有,则返回1,若没有,则返回0,以此来作为判断,若返回1,则捡取按键,测试它是不是0或者1,若返回0,则表示用户没有动作,继续原来的工作,即继续计时或等待命令.

4. 秒表怎么读数

秒表的大圈为秒,小圈为分。若大圈是30分格(顶上写的是30,可能有60格,表明精度到半秒),小圈里一分钟就分为两小格,读完整的几分,若过了一小格,就在大圈秒数上加半分钟,若没过,直接读大圈秒数。

秒表的秒针沿大表盘转动,分针沿小表盘转动。分针和秒针所指的时间和就是所测的时间间隔。在表正上方有一个表把,上有一按钮。旋动按钮,上紧发条,这是秒表走动的动力。用大拇指按下按钮,秒表开始计时;再按下按钮,秒表停止走动,进行读数;再按一次,秒表回零,准备下一次计时。

扩展资料

秒表主要有机械和电子两大类,电子表又可分为三按键和四按键两大类。绝大部分体育教师使用的多是电子秒表,机械秒表在很多地方已经成为历史。

电子秒表是一种较先进的电子计时器,国产的电子秒一般都是利用石英振荡器的振荡频率作为时间基准,采用6位液晶数字显示时间,具有显示直观、读取方便、功能多等优点。

保养注意事项

1、保持电池的定期更换,一般在显示变暗时即可更换,不要等电子秒表的电池耗尽再更换。

2、电子秒表平时放置的环境要干燥、安全,做到防潮、防震、防腐蚀、防火等工作。

3、避免在电子秒表上放置物品。

4、没有把握的情况下,不要随意打开私自进行维修,应送专业人士进行维修。

参考资料来源:搜狗百科—秒表

5. 51单片机秒表的摘要怎么写

基于51单片机的温度测量系统 摘 要: 单片机在检测和控制系统中得到广泛的应用, 温度则是系统常需要测量、控制和保持的一个量。

本文从硬件和软件两方面介绍了AT89C2051单片机温度控制系统的设计,对硬件原理图和程序框图作了简洁的描述。 关键词: 单片机AT89C2051;温度传感器DS18B20;温度;测量 引言 单片机在电子产品中的应用已经越来越广泛,并且在很多电子产品中也将其用到温度检测和温度控制。

为此在本文中作者设计了基于atmel公司的 AT89C2051的温度测量系统。这是一种低成本的利用单片机多余I/O口实现的温度检测电路, 该电路非常简单, 易于实现, 并且适用于几乎所有类型的单片机。

一.系统硬件设计 系统的硬件结构如图1所示。 1.1数据采集 数据采集电路如图2所示, 由温度传感器DS18B20采集被控对象的实时温度, 提供给AT89C2051的P3.2口作为数据输入。

在本次设计中我们所控的对象为所处室温。当然作为改进我们可以把传感器与电路板分离,由数据线相连进行通讯,便于测量多种对象。

DS18B20 是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;温度测量范围为-55℃~+125℃,可编程为9位~12位A/D 转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出,支持3V~5.5V的电压范围,使系统设计更灵活、方便;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。以上特点使DS18B20非常适用于远距离多点温度检测系统。

分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20使电压、特性有更多的选择,让我们可以构建适合自己的经济的测温系统。

如图2所示DS18B20的2脚 DQ为数字信号输入/输出端;1脚GND为电源地;3脚VDD为外接供电电源输入端。 AT89C2051(以下简称2051)是一枚 8051兼容的单片机微控器,与Intel的MCS-51完全兼容,内藏2K的可程序化Flash存储体,内部有128B字节的数据存储器空间,可直接推动LED,与8051完全相同,有15个可程序化的I/O点,分别是P1端口与P3端口(少了P3.6)。

1.2接口电路 图2 单片机2051与温度传感器DS18B20的连接图 接口电路由ATMEL公司的2051单片机、ULN2003达林顿芯片、4511BCD译码器、串行EEPROM24C16(保存系统参数)、MAX232、数码管及外围电路构成, 单片机以并行通信方式从P1.0~P1.7口输出控制信号,通过4511BCD译码器译码,用2个共阴极LED静态显示温度的十位、个位。 串行EEPROM24C16是标准I2C规格且只要两根引脚就能读写。

由于单片机2051的P1是一个双向的I/O端口,所以在我们在设计中将P1端口当成输出端口用。由图2可知,P1.7作为串性的时钟输出信号与24C16的第6脚相接,P1.6则作为串行数据输出接到24C16的第5脚。

P1. 4和P1.5则作为两个数码管的位选信号控制,在P1.4=1时,选中第一个数码管(个位);P1.5=1时,选中第二个数码管(十位)。 P1.0~P1.3的输出信号接到译码器4511上作为数码管的显示。

此外,由于单片机2051的P3端口有特殊的功能,P3.0(RXD)串行输入端口,P3.1(TXD)串行输出端口,P3.2(INTO)外部中断0,P3.3(INT1)外部中断1P3.4,(T0)外部定时/计数输入点,P3.5(T1)外部定时/计数输入点。由图2可知,P3.0和P3.1作为与MAX232串行通信的接口;P3.2和P3.3作为中断信号接口;P3.4和P3.5作为外部定时/记数输入点。

P3.7作为一个脉冲输出,控制发光二极管的亮灭。 由于在电路中采用的共阴极的LED数码管,所以在设计电路时加了一个达林顿电路ULN2003对信号进行放大,产生足够大的电流驱动数码管显示。

由于4511只能进行BCD十进制译码,只能译到0至9,所以在这里我们利用4511译码输出我们所需要的温度。 1.3报警电路简介 图3 温度在七段数码管上显示连接图 本文中所设计的报警电路较为简单,由一个自我震荡型的蜂鸣器(只要在蜂鸣器两端加上超过3V的电压,蜂鸣器就会叫个不停)和一个发光二极管组成(如图3所示)。

在这次设计中蜂鸣器是通过ULN2003电流放大IC来控制。在我们所要求的温度达到一定的上界或者下界时(在文中我们设置的上界温度是45℃,下界温度是5℃),报警电路开始工作,主要程序设计如下: main()//主函数 {unsigned char i=0; unsigned int m,n; while(1) {i=ReadTemperature();//读温度} if(i>0 && i<=10) //如果温度在0到10度之间直接给七段数码管赋值 {P1=designP1[i];} else//如果温度大于10度 {m=i%10;//先给第一个七段数码管赋值 D1=1; D2=0; P1=designP1[m]; n=i/10;//再给第二个七段数码管赋值 D1=0; D2=1; P1=designP1[n]; if(n>=4&&m>=5)%%(m<=5)//判断温度的取值范围,如果大于45或小于5度,则蜂鸣器叫,发光二极管闪烁 { int a,b; Q1=1;//蜂鸣器叫 for(a=0;a<1000;a++)//发光二极管闪烁 for(b=0;b<1000;b++) Q2=1; for(a=0;a<1000;a++) for(b=0;b<1000;b++) Q2=0;}}}。

标签: 秒表
  • 文章版权属于文章作者所有,转载请注明 https://dongkepu.com/zonghezhishi/5odl94.html