欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
51單片機999秒倒計時繼電器控制源程序
[打印本頁]
作者:
凱爾特
時間:
2018-5-6 15:28
標題:
51單片機999秒倒計時繼電器控制源程序
實驗板 K1按鍵 按一下 開始倒計時
K2按鍵 按一下 停止倒計時
單片機程序如下
#include<reg51.h>
sbit Key_UP=P3^2;
sbit Key_DOWN=P3^3;
unsigned char KeyV,TempKeyV;
sbit P25=P2^5;//數碼管第5位
sbit P26=P2^6;//數碼管第6位
sbit P27=P2^7;//數碼管第7位
sbit JDQ=P3^7;//繼電器
unsigned int js;
unsigned int ds;//倒計時初始時間
unsigned char jsflag;
static unsigned int i;
unsigned char code LEDDis[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xFF,0xBF};
void Delay(unsigned int ii) //1MS
{
unsigned int jj;
for(;ii>0;ii--)
for(jj=0;jj<125;jj++)
{;}
}
void main()
{
EA = 1; //允許CPU中斷
ET0 = 1; //定時器0中斷打開
ET1=1; //定時器1中斷打開
TMOD = 0x11; //設定時器0 1為模式1,16位模式
TH0=0xB8;
TL0=0x00; //設定時值為(20ms)
TH1=0xdc; //設定時值為(10ms)
TL1=0x00;
TR0 = 1;
TR1=1;
ds=999;
KeyV = 0;
TempKeyV = 0;
jsflag=0;
while(1);
}
//定時器0中斷外理中鍵掃描和顯示
void Key_Time0(void) interrupt 1 using 2
{
TH0=0xB8;
TL0=0x00; //設定時值為20000us(20ms)
if (!Key_UP)
KeyV = 1;
if (!Key_DOWN)
KeyV = 2;
if (KeyV!= 0) //有鍵按下
{
Delay(10); //延時防抖 按下10ms再測
if (!Key_UP)
TempKeyV = 1;
if (!Key_DOWN)
TempKeyV = 2;
if (KeyV == TempKeyV) //兩次值相等為確定接下了鍵
{
if (KeyV == 1){
jsflag=0;
if(ds==0){
ds=600;
}
js=js+1;
JDQ=0; //繼電器吸合
if(js==50){
js=0;
ds=ds-1;
}
}
if(KeyV==2){
jsflag=1;
}
}
}
if(jsflag==1){
JDQ=1;
}
if(ds==0){
JDQ=1;
jsflag=1;
KeyV=0;
}
}
void disp_Time1(void) interrupt 3 using 3
{ TH1=0xdc;
TL1=0x00;
P0=LEDDis[ds/100];
P25=0;
Delay(2);
P25=1;
P0=LEDDis[(ds%100)/10];
P26=0;
Delay(2);
P26=1;
P0=LEDDis[ds%10];
P27=0;
Delay(2);
P27=1;
}
復制代碼
999秒倒計時繼電器控制程序.rar
2018-5-6 15:27 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
23.2 KB, 下載次數: 23, 下載積分: 黑幣 -5
作者:
admin
時間:
2018-5-6 18:19
樓主能分享個原理圖嗎?
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1