导航:首页 > 操作系统 > 单片机课程电子秒表

单片机课程电子秒表

发布时间:2025-08-03 12:39:21

❶ 用51单片机制作倒计时秒表需要什么元件,麻烦列个清单。新手刚刚开始学

至少需要:
1、单片机--1
2、30p电容--2
3、12M晶振--1
4、10u电容--1
5、8.2K电阻--1
6、按钮开关--1
7、数码管组--1(4个数码管)
8、8电阻排--1
9、辅料(导线、焊锡等)

❷ 51单片机制作一个秒表

//功能:0~99秒的简易秒表设计,两个静态数码管,定时器采用中断方式
#include"reg51.h"
#define uchar unsigned char
#define uint unsigned int

uchar count=0;//对50ms定时时间进行计数
uchar miao=0; //秒计数器

//函数名:timer_1()
//函数功能:定时器T1的中断函数,T1在工作方式1下每50秒产生中断,执行该中断函数
//形式参数:无
//返回值:无
void timer_1() interrupt 3 //T1的中断类型号为3
{
TH1=(65536-50000)/256; //重新设置T1计数初值高8位
TL1=(65536-50000)%256; //重新设置T1计数初值低8位
count++; //50ms计数器加1
if(count==20) //1s时间到
{
count=0; //50ms计数器清0
miao++; //秒计数器加1
if(miao==100)miao=0; //miao计数到100,则从0开始计数
}
}

bit b=0;
void int_0() interrupt 0
{
if(b == 0){TR1 = 0;b = 1;}
else
{
b = 0;
TR1 = 1;
}
}

void int_1() interrupt 2
{
miao=0;
count = 0;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TR1=1;
}

//函数名:disp
//函数功能:将i的值显示在两个静态连接的数码管上
//形式参数:i,取值范围0~99
//返回值:无
void disp(uchar i)
{
uchar led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
//定义0~9显示码,共阳极数码管
P1=led[i/10]; //显示i高位
P2=led[i%10]; //显示i地位
}
void main()
{
TMOD=0x10;//设置T1在工作方式1
TH1=(65536-50000)/256;//设置T1计数初值高8位,定时时间50ms
TL1=(65536-50000)%256;//设置T1计数初值低8位
ET1=1;//开放T1中断允许
EX0 = 1;
IT0 = 1;
EX1 = 1;
IT1=1;
EA=1;//开放总中断允许
TR1=1;//启动T1开始计时
while(1)
{
disp(miao);//显示秒计数器值
}
}

❸ 用51单片机设计一个秒表,计时范围从00:00-59:59.

#include<reg51.h>
#include"intrins.h"
#include"absacc.h"
#defineucharunsignedchar
ucharcodeledtab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0xff};//0-9
unsignedcharsec=0,min=0,scanled;
unsignedcharkey=0,mode,time;
unsignedchardisdat[4];

voiddischg()
{
disdat[3]=sec%10;
disdat[2]=sec/10;
disdat[1]=min%10;
disdat[0]=min/10;
}
voidext0()interrupt0
{
key++;
key%=3;
}
voidt0isr()interrupt1 //秒计时
{
TH0=0x3c;
TL0=0xb0;
time++;
if(time==20)
{
time=0;
sec++;
if(sec>59)
{
sec=0;
min++;
if(min>59)min=0;
}
}
dischg();
}
voidt1isr()interrupt3 //显示
{
TH1=0xec;
TL1=0x78;
P0=0xff;
switch(scanled)
{
case1:
P2=0x02;
P0=~(ledtab[disdat[1]]|0x80);
break;
case2:
P2=0x04;
P0=~ledtab[disdat[2]];
break;
case3:
P2=0x08;
P0=~ledtab[disdat[3]];
break;
default:break;
}
scanled++;
scanled%=4;
}
main()
{
TMOD=0x11;
TH0=0x3c;
TL0=0xb0;
TH1=0xec;
TL1=0x78;
TR1=1;
TR0=0;
ET0=1;
ET1=1;
EX0=1;
IT0=1;
EA=1;
scanled=0;
time=0;
mode=1;
dischg();
while(1)
{
switch(key)
{
case0:TR0=0;break;
case1:TR0=1;break;
case2:sec=0;min=0;break;
}
}
}

❹ 51单片机做数字电子钟

这么复杂的东西给这么少分 晕死了 你也太小气了吧,分多的话还可能帮你动动脑

❺ 采用AT89C51单片机设计一只电子秒表,倒计时(60~1每间隔1秒倒数)

硬件电路 有2位数码管可以显示秒表的时间 0~10秒

有3个按键 K1为开始计时 K2为停止计时 K3为清零

软件设计:

K1按下则启动定时器定时 每到1秒 显示器缓冲单元内容加1

K2按下则停止定时器定时

K3按下则将显示器缓冲单元内容清零。

❻ 单片机编程制作电子秒表能显示分(0-99),秒(0-59)

你好
楼主。
很幸运的看到你的问题。
但是又很遗憾到现在还没有人回答你的问题。也可能你现在已经在别的地方找到了答案,那就得恭喜你啦。
对于你的问题我爱莫能助!
可能是你问的问题有些专业了。或者别人没有遇到或者接触过你的问题,所以帮不了你。建议你去问题的相关论坛去求助,那里的人通常比较多,也比较热心,可能能快点帮你解决问题。
希望我的回答也能够帮到你!
祝你好运。
快过年了,
最后祝您全家幸福健康快乐每一天!

阅读全文

与单片机课程电子秒表相关的资料

热点内容
新手选股指标源码 浏览:805
彩虹发卡源码60 浏览:119
手机文件夹后缀名格式 浏览:172
三菱plc模块化编程 浏览:47
火车加密开行视频 浏览:249
百份比怎么算法 浏览:84
海康威视如何添加服务器地址 浏览:884
马来西亚找吃的有什么app 浏览:695
飞思卡尔编译错误 浏览:85
群晖如何建立ftp服务器 浏览:568
反投影重建算法 浏览:764
有限元基础pdf 浏览:365
联通送话费在app怎么缴 浏览:261
万达换票券app上怎么用 浏览:642
外面工作用什么app看孩子 浏览:453
程序员仿写百度搜索 浏览:648
亿图数控系统编程 浏览:954
什么软件可以编译生成 浏览:197
前端编程思维模式训练 浏览:930
服务器地址域名或ip地址 浏览:547