导航:首页 > 装置知识 > 51单片机设计9999秒倒计时装置

51单片机设计9999秒倒计时装置

发布时间:2022-04-04 08:11:53

① Mcs-51单片机9秒倒计时课程设计

定时10mS,在中断里面计数,到一秒后-1,小于零后=9,再显示

② 求用51单片机设计一个0-9999秒倒计时器,要求是数码显示,是汇编语言的

汇编,其实比C语言简单多了。
使用汇编,只要关心单片机自身的东西即可;
使用C,垃圾概念就太多了,学C,就太浪费时间了。
先看看这些:
http://hi..com/%D7%F6%B6%F8%C2%DB%B5%C0/blog/item/2ece818af7a3f20bc9fc7aca.html
http://hi..com/%D7%F6%B6%F8%C2%DB%B5%C0/blog/item/8dd9ee9443f40e117af480ee.html

③ 求用51单片机设计一个0-9999秒正/倒计时器

两位相同的数字所占的百分比:两位数有11-99 9个
三位数有 100-900 9个(是0重复的) 不是0重复的不含0的有C3(2)C9(1)C8(1)=216个 不是0重复的含0的有 C2(1)C9(1)=18个
四位数有 C3(2)C9(1)C8(1)=216(0重复) 不是0重复的不含0的有C4(2)C(9)A8(2)=3024 不是0重复的含0的有 C3(1)C3(2)C9(1)C8(1)=648
一共为41.31%

三位数相同的数字所占的百分比:三位数的有9个
四位数有1000-9000 9个(是0重复的) 不是0重复的不含0的有C4(3)C9(1)C8(1)=288 不是0重复的含0的有C3(1)C9(1)=27
一共为3.24%

④ 51单片机9999秒倒计时

简单而明显的错误:
unsigned char i=0;

void time0() interrupt 1
{
TH0=0x3c;
TL0=0xb0;
i++;
if (i==20)
{
if (sec==0){sec=60;min--;}
sec--;
i=0;
}

}

⑤ 如何利用C8051F310单片机设计一个九秒倒计时定时器

我猜你的难点在于不会定时1秒钟
一般来说51单片机定时大概在毫秒级,假定是50ms
那你就再加一个软件计数器譬如R7,在检测到20次定时器的中断后,再执行真正地中断程序就好了

⑥ 51单片机 倒计时99和9999的区别 其实我需要9999秒倒计时的程序!

改改程序就可以了。如果原来控制变量用的单字节,你拓展成双字节就行。

⑦ 基于51单片机控制的9999秒倒计时器的设计,程序怎样做

99秒倒数的 楼主看行不
在写 很麻烦的

#include <reg51.h>
unsigned char table[]={0x90,0x80,0xf8,0x82,0x92,0x99,0xb0,0xa4,0xf9,0xc0};
unsigned char int_time ;
unsigned char second;
void delay(void)
{
unsigned char i,j;
for(i=0;i<200;i++)
for(j=0;j<20;j++);
}
void DisplaySecond(unsigned char k)
{
P2=0xf7;
P0=table[k/10];
delay();
P2=0xfb;
P0=table[k%10];
delay();
P2=0xff;
}
void main(void)
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
int_time=0;
second=0;
while(1)
{
DisplaySecond(second);
}
}
void interserve(void ) interrupt 1
{
TR0=0;
int_time++;
if(int_time==20)
{
int_time=0;
second++;
if(second==99)
second=0;
}
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
}

⑧ 51单片机做9999秒倒计时怎么原理图怎么做啊还要程序

#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,dat=0,scanled;
unsignedcharkey=0,mode,time;
unsignedchardisdat[4];

voiddischg()
{
disdat[3]=sec%10;
disdat[2]=sec%100/10;
disdat[1]=sec%1000/100;
disdat[0]=sec/1000;
}
voidext0()interrupt0
{
key++;
key%=3;
}
voidt0isr()interrupt1 //秒计时
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
dat++;
if(dat>=20)
{
dat=0;
if(sec>0)sec--;
}
dischg();
}
voidt1isr()interrupt3 //显示
{
TH1=0xec;
TL1=0x78;
P0=0xff;
switch(scanled)
{
case0:
P2=0x01;
P0=~ledtab[disdat[0]];
break;
case1:
P2=0x02;
P0=~ledtab[disdat[1]];
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=(65536-10000)/256;
TL0=(65536-10000)%256;
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:sec=0;dat=0;break;
case1:TR0=1;break;
case2:TR0=0;break;
}
}
}

⑨ 我想用51单片机做一个9999 9999秒的秒表(八位数码管),但是怎么计数到255就溢出归零了

你的dis函数输入变量i类型定义错了,也得定义成 long

⑩ 51单片机的9999倒计时程序,跪求

参考:

http://hi..com/do_sermon/item/17a6bff24edb11c8531c2691
http://hi..com/do_sermon/item/620ab2cadf946422e90f2e91

阅读全文

与51单片机设计9999秒倒计时装置相关的资料

热点内容
zhj轴承尺寸是多少 浏览:157
这些锁止装置各起到什么作用 浏览:320
机械穿什么异界套装 浏览:778
做阀门销售怎么跑业务 浏览:592
尚酷仪表盘跟什么通用 浏览:187
桑拿炉自动喷淋装置接线图 浏览:622
乙酰苯胺水解制备苯胺的实验装置 浏览:218
实验室制取硫酸装置图 浏览:458
电力系统安全自动装置题库 浏览:277
水库阀门是什么意思 浏览:418
压缩机排气阀门关闭不严 浏览:447
芜湖市华益阀门公司怎么样 浏览:174
儿科肺炎治疗仪仪器怎么用 浏览:1000
现在恒温库用什么样的制冷机 浏览:813
游戏工具箱顶部横滑 浏览:891
zy型液压自动张紧装置 浏览:664
尼尔机械纪元屠村任务怎么做 浏览:450
为什么要对化工装置进行安全设计 浏览:322
电动工具名牌有哪些要求 浏览:542
什么情况下采用双闸板阀门 浏览:130