久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
幫忙看下為什么不能實現(xiàn)數(shù)碼管的閃爍
[打印本頁]
作者:
q415246555
時間:
2012-3-27 15:51
標題:
幫忙看下為什么不能實現(xiàn)數(shù)碼管的閃爍
#include
char code table[]={ //共陽極0~f數(shù)碼管編碼 0xc0,0xf9,0xa4,0xb0,//0~3 0x99,0x92,0x82,0xf8,//4~7 0x80,0x90,0x88,0x83,//8~b 0xc6,0xa1,0x86,0x8e}; //c~f char code wetable[]={0xfb,0xf7,0xef,0xdf,0xbf,0x7f};// char m, f, s,s1,num=0,mi,i=0,num1=0,num2=0,f1,flge,c,a,flge1=0;//申明 sbit k1=P3^2;//申明按鍵 sbit d1=P1^1; // sbit p1=P2^7; // sbit p2=P2^6; // sbit p3=P2^5; // sbit p4=P2^4; // sbit p5=P2^3; // sbit p6=P2^6; // void display();//申明函數(shù) void init(); // 申明函數(shù) void delay(int z);//申明延時函數(shù) void key(); //申明函數(shù) void main() { init();//初始化 while(1) { key();//按鍵 display();//顯示 } } void display() { m=num/10; //分離 mi=num%10; f=num1/10; f1=num1%10; s=num2/10; s1=num2%10; if(flge1==1) //標志位控制顯示 { p1=1; p2=1; d1=0; } else { P2=0x7f; P0=table[mi]; P0=0xff; P2=0xbf; P0=table[m]; P0=0xff; } if(flge1==2) { p3=1; } else { P2=0xef; P0=table[f]; P0=0xff; } if(flge1==2) { p4=1; } else { P2=0xdf; P0=table[f1]; P0=0xff; } if(flge1==3) { p5=1; } else { P2=0xfb; P0=table
; P0=0xff; } if(flge1==3) { p5=1; } else { P2=0xf7; P0=table[s1]; P0=0xff; } } void init() { TMOD=0x11; TH0=(65536-50000)/256; //晶振設(shè)為12MHS 溢出為50MS TL0=(65536-50000)%256; TH1=(65536-50000)/256; TL1=(65536-50000)%256; EA=1; //開啟CPU中斷 ET0=1; //開啟定時器0中斷 ET1=1; // 開啟定時器1中斷 TR1=1; //啟動定時器1 TR0=1; //啟動定時器0 } void time() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; i++; if(i==20) { i=0; num++; if(num==60) //秒為60 秒清零 分加1 { num=0; num1++; if(num1==60) //分為60 分清零 時加1 { num1=0; num2++; if(num2==12) { if(num2==24)//時為24 時清零 分清零 秒清零 { num2=0; num=0; num1=0; } } } } } } void time2() interrupt 3 { TH1=(65536-50000)/256; TL1=(65536-50000)%256; a++; if(a==10) { a=0; if(flge1==1) //取反實現(xiàn)閃爍 { p1=~p1; p2=~p2; d1=~d1; } } if(flge1==2) { if(a==10) { p3=~p3; p4=~p4; a=0; } } if(flge1==3) { if(a==10) { p5=~p5; p6=~p6; a=0; } } } void key() { if(k1==0) { delay(10); if(k1==0) { flge++; while(!k1); //消抖 if(flge==1) //數(shù)碼管暫停 { TR0=0; } if(flge==2) //按鍵控制標志位 { flge1=1; } if(flge==3) { flge1=2; } if(flge==4) { flge1=3; } if(flge==5) { TR0=1; flge=0; flge1=0; } } } } void delay(int z) { int x,y; for(x=z;x>0;x--) for(y=500;y>0;y--); }
作者:
q415246555
時間:
2012-3-27 15:53
#include <reg52.h>
char code table[]={ //共陽極0~f數(shù)碼管編碼
0xc0,0xf9,0xa4,0xb0,//0~3
0x99,0x92,0x82,0xf8,//4~7
0x80,0x90,0x88,0x83,//8~b
0xc6,0xa1,0x86,0x8e}; //c~f
char code wetable[]={0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//
char m, f, s,s1,num=0,mi,i=0,num1=0,num2=0,f1,flge,c,a,flge1=0;//申明
sbit k1=P3^2;//申明按鍵
sbit d1=P1^1; //
sbit p1=P2^7; //
sbit p2=P2^6; //
sbit p3=P2^5; //
sbit p4=P2^4; //
sbit p5=P2^3; //
sbit p6=P2^6; //
void display();//申明函數(shù)
void init(); // 申明函數(shù)
void delay(int z);//申明延時函數(shù)
void key(); //申明函數(shù)
void main()
{
init();//初始化
while(1)
{
key();//按鍵
display();//顯示
}
}
void display()
{
m=num/10; //分離
mi=num%10;
f=num1/10;
f1=num1%10;
s=num2/10;
s1=num2%10;
if(flge1==1) //標志位控制顯示
{
p1=1;
p2=1;
d1=0;
}
else
{
P2=0x7f;
P0=table[mi];
P0=0xff;
P2=0xbf;
P0=table[m];
P0=0xff;
}
if(flge1==2)
{
p3=1;
}
else
{
P2=0xef;
P0=table[f];
P0=0xff;
}
if(flge1==2)
{
p4=1;
}
else
{
P2=0xdf;
P0=table[f1];
P0=0xff;
}
if(flge1==3)
{
p5=1;
}
else
{
P2=0xfb;
P0=table
;
P0=0xff;
}
if(flge1==3)
{
p5=1;
}
else
{
P2=0xf7;
P0=table[s1];
P0=0xff;
}
}
void init()
{
TMOD=0x11;
TH0=(65536-50000)/256; //晶振設(shè)為12MHS 溢出為50MS
TL0=(65536-50000)%256;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
EA=1; //開啟CPU中斷
ET0=1; //開啟定時器0中斷
ET1=1; // 開啟定時器1中斷
TR1=1; //啟動定時器1
TR0=1; //啟動定時器0
}
void time() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
i++;
if(i==20)
{
i=0;
num++;
if(num==60) //秒為60 秒清零 分加1
{
num=0;
num1++;
if(num1==60) //分為60 分清零 時加1
{
num1=0;
num2++; if(num2==12)
{
if(num2==24)//時為24 時清零 分清零 秒清零
{
num2=0;
num=0;
num1=0;
}
}
}
}
}
}
void time2() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
a++;
if(a==10)
{
a=0;
if(flge1==1) //取反實現(xiàn)閃爍
{
p1=~p1;
p2=~p2;
d1=~d1;
}
}
if(flge1==2)
{
if(a==10)
{
p3=~p3;
p4=~p4;
a=0;
}
}
if(flge1==3)
{
if(a==10)
{
p5=~p5;
p6=~p6;
a=0;
}
}
}
void key()
{
if(k1==0)
{
delay(10);
if(k1==0)
{
flge++;
while(!k1); //消抖
if(flge==1) //數(shù)碼管暫停
{
TR0=0;
}
if(flge==2) //按鍵控制標志位
{
flge1=1;
}
if(flge==3)
{
flge1=2;
}
if(flge==4)
{
flge1=3;
}
if(flge==5)
{
TR0=1;
flge=0;
flge1=0;
}
}
}
}
void delay(int z)
{
int x,y;
for(x=z;x>0;x--)
for(y=500;y>0;y--);
}
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
99热视
|
欧美专区在线视频
|
男人的天堂亚洲
|
放个毛片看看
|
国产一区二区三区
|
国产在线网站
|
久久久久亚洲
|
亚洲成人精品
|
www.v888av.com
|
亚洲国产精品人人爽夜夜爽
|
精品久久久999
|
亚洲精品久久久久久一区二区
|
国产成人在线视频
|
国产精品一区三区
|
日日干夜夜草
|
久久久久亚洲
|
中文字幕一二三
|
国产精品一区二区三
|
热久久999
|
久久中文字幕一区
|
黄色网毛片
|
国产精品一卡二卡三卡
|
久久免费看
|
日日夜夜精品免费视频
|
亚洲一区中文
|
成人3d动漫一区二区三区91
|
国产免费一区二区
|
国产福利91精品一区二区三区
|
国产乱码精品一区二区三区忘忧草
|
成人激情视频在线播放
|
久久久精品一区
|
一区视频
|
国产一区中文字幕
|
56pao在线
|
亚洲 欧美 激情 另类 校园
|
jizz视频
|
午夜男人天堂
|
国产精品久久久久久久久久久久
|
91精品国产综合久久久久久丝袜
|
欧洲亚洲视频
|
97久久精品午夜一区二区
|