永发信息网

51单片机30秒倒计时,用数码管显示的,c程序,元件只有at89c51和数码管,没有其他的,

答案:2  悬赏:40  手机版
解决时间 2021-02-05 10:23
51单片机30秒倒计时,用数码管显示的,c程序,元件只有at89c51和数码管,没有其他的,
最佳答案
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit dula=P2^6;
sbit wela=P2^7;
sbit d1=P1^0;
uchar num,num1;tt;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void delay(uint z);
void main()
{
num=0;
tt=0;
TMOD=0x11;//设置定时器0为工作方式1
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
TH1=(65536-20000)/256;
TL1=(65536-20000)%256;
//EA=1;//开总中断
ET0=1;//开定时器0中断
ET1=1;
TR0=1;//启动定时器0
TR1=1;
wela=1;//11101010
P0=0xea;
wela=0;
dula=1;
P0=0x3f;
dula=0;
while(1)
{
if(num1==25)
{
num1=0;
P1=~P1;
}
if(tt==100)
{
tt=0;
num++;
if(num==16)
num=0;
dula=1;
P0=table[num];
dula=0;
}
}
}
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void time0() interrupt 1
{
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
tt++;
}
void time1() interrupt 3
{
TH1=(65536-20000)/256;
TL1=(65536-20000)%256;
num1++;
}
自己发掘吧
全部回答
你好!原理图有了吗?把原理图发一下,程序要根据原理图来写
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
手上没挑破的血泡凝固了怎么办
【自组词】组词自()自()
求一个骚点的名字三字的
不同种类汽车的名称,有哪些
小明同学在倒置的漏斗里放一个乒乓球,用手指
下图是某森林在遭受大火完全烧毁前后(b点为发
智能锁如何在外面反锁
陈伟渔家院怎么去啊,有知道地址的么
首轮融资出让多少股份
我的工行信用卡额度3000,这个月刷了几次,刷
金视通卫星机顶盒可以wa网上缴费吗?
风车口地址有知道的么?有点事想过去
法国朗德鹅适合北方养殖吗?
安徽省电子商务进农村示范县(广德)土特产品展
在纸折的星星里写什么好?
推荐资讯
考验期间女生都在考虑什么
创造和谐感英文翻译
2018年上班族还能报大专,本科吗?听说国家改
如何曝光淘宝商家做虚假活动
元音音素20个都有哪些
悴沮的意思是什么啊?知道的请说下!
芜湖市捷运汽车运输有限责任公司北京路客运站
查询kfr32gw格力空调是不是是节能的
内侄的意思是什么啊?知道的请说下!
某厂有3台起重机.在负荷持续率为60%时额定功
为什么现在家庭条件不好的女孩子要求还那么高
微信100个赞怎么裁剪图片大小
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?