91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 578KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-22
  • 語言: 其他
  • 標簽: Keilc編程??單片機??

資源簡介

設(shè)計一60秒LED旋轉(zhuǎn)顯示的電子鐘,且能定時響鬧。要求“秒”在圓周上的LED實時顯示,“分”與“時”各2位在LED數(shù)碼管上顯示。設(shè)置有3個鍵,3個鍵的功能如下: 復(fù)位鍵:把“分”與“時”清零; 校時鍵:能夠調(diào)整“分”與“時”; 定鬧鍵:能夠設(shè)置響鬧時間(分與時)。 內(nèi)含Proteus仿真電路和keilc源程序。

資源截圖

代碼片段和文件信息

/*
程序功能:60秒LED旋轉(zhuǎn)顯示的電子鐘程序,可調(diào)時間,且能定時響鬧,
作者:于海超?(轉(zhuǎn)載請注明出處)
*/
#include
#include?
#define?uint?unsigned?int?
#define?uchar?unsigned?char?

uchar?temp1temp2aabbK1numK2numK1K2num;
uint?miaofenfen1shishi1;fengefenshishigeshishifen1gefen1shishi1geshi1shiNflag1flag2flag3flag4;
uchar?code?table[]={0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f};//共陰數(shù)碼管的編碼

sbit?K1=P1^0; //兩個按鍵
sbit?K2=P1^1;
sbit?beep=P1^2;???//蜂鳴器
sbit?B4=P1^4;???//四位數(shù)碼管的位選端
sbit?B5=P1^5;
sbit?B6=P1^6;
sbit?B7=P1^7;

void?init(); //聲明初始化函數(shù)
void?delay(uint?z); //聲明延時函數(shù)
void?display(uint?fengeuint?fenshiuint?shigeuint?shishi); //聲明顯示函數(shù)
void?keyscan(); //聲明鍵盤掃描函數(shù)

void?main()
{

init();//初始化子程序
while(1)
{
keyscan();
fenge=fen%10; //取分鐘的個位,下同
fenshi=fen/10; //取分鐘的十位,下同
shige=shi%10;
shishi=shi/10;
fen1ge=fen1%10;
fen1shi=fen1/10;
shi1ge=shi1%10;
shi1shi=shi1/10;
if(flag4==1)?display(fengefenshishigeshishi);
else?display(fen1gefen1shishi1geshi1shi);
}
}

void?delay(uint?z) //延時函數(shù)
{
uint?xy;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

void?init() //初始化函數(shù)
{
aa=0; //中斷累加次數(shù)初始化
bb=0;
K1num=0;
K2num=0;
K1K2num=0;
miao=0; //系統(tǒng)時間初始化
fen=0;
shi=0;
N=0; //N用于控制校時或定鬧時時間閃爍顯示,以提醒為校時或是定鬧狀態(tài)
fen1=1; //定時時間初始化
shi1=0;
flag1=1; //flag1=1用于標記鬧鐘沒有響鬧,flag1=0用于標記鬧鐘正在響鬧,這兩種情況下按下K2鍵所起的作用是不一樣的
flag2=1; //鬧鐘是否響鬧的一個標記變量,如果flag2=1,則鬧鐘時間到,鬧鐘響鬧,如果此時按下K2鍵,將置flag2=0,是鬧鐘停止響鬧
flag3=1; //flag3用于控制當調(diào)整鬧鐘時間時,鬧鐘不可以響鬧
flag4=1; //flag4=1用于控制調(diào)用顯示函數(shù)顯示的是系統(tǒng)的時間,flag4=0用于控制當K2被按下后,調(diào)用顯示函數(shù)顯示的是定時的時間
beep=0; //蜂鳴器初始化
temp1=0xfe; //點亮LED的初始化,點亮第一組第一個
temp2=0x01; //點亮LED的初始化,選中第一組
P3=temp2;
P2=temp1;
TMOD=0x01;//設(shè)置定時器0為工作方式1
TH0=(65536-50000)/256; //計數(shù)器裝入初值
TL0=(65536-50000)%256;
EA=1;//開總中斷
ET0=1;//開定時器0中斷
TR0=1;//啟動定時器0

}

void?keyscan() //鍵盤掃描函數(shù)
{
if(K2==0&&flag1==0); //flag1=0代表此時鬧鐘正在響鬧,如果按下K2鍵,則使鬧鐘停止響鬧
{
delay(5);
if(K2==0)
{
flag2=0; //定鬧鍵按下,停止鬧鐘
}
}
if(K1==0&&K2num==0) //判斷K1按下按下前沒有按下K2鍵,則開始修改系統(tǒng)時間
{
delay(5);
if(K1==0)
{
TR0=0; //關(guān)閉計數(shù)器0
N=500; //N=500用于控制校時或定鬧時時間閃爍顯示,以提醒為校時或是定鬧狀態(tài)
K1num++; //K1按鍵次數(shù)累加
while(!K1)
if(K1num==1)
{
//第一次按下校時鍵調(diào)整分鐘,見下面的代碼
}
if(K1num==2)
{
//第二次按下校時鍵時,調(diào)整小時,見下面的代碼
}
if(K1num==3) //第三項按下校時鍵,系統(tǒng)時間調(diào)解完畢,
{
N=0; //數(shù)碼管不再顯示
K1num=0; //清零K1num
TR0=1; //開啟定時器
???
}
}
}

if((K2==0)&&(K1num==0)&&(flag1==1)) //判斷K2按下按下前沒有按下K1鍵,并且鬧鐘沒有響鬧,則開始修改鬧鐘時間
{
delay(5);
if(K2==0)
{
N=500; //N=500用于控制校時或定鬧時時間閃爍顯示,以提醒為校時或是定鬧狀態(tài)
K2num++; //K2按鍵次數(shù)累加
flag3=0; //flag3=0用于控制當調(diào)整鬧鐘時間時,鬧鐘不可以響鬧
flag4=0; //flag4=0用于控制當K2被按下后,調(diào)用顯示函數(shù)顯示的是定時的時間
while(!K2)
if(K2num==1)
{
//第一次按下定鬧鍵調(diào)整分鐘
}
if(K2num==2)
{
//第二次按下定鬧鍵調(diào)整小時
}
if(K2num==3)
{
N=0; //N=0用于控制校時或定鬧時時間停止閃爍
K2num=0;
flag3=1;
flag4=1; ???
}
}
}

if(K

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????196213??2010-05-30?01:36??0701201班于海超題2\Last?Loaded?pro2.DBK

?????文件??????11154??2010-05-24?18:28??0701201班于海超題2\pro.M51

?????文件??????13395??2010-05-24?18:30??0701201班于海超題2\pro.omf.plg

?????文件???????8506??2010-05-24?18:45??0701201班于海超題2\pro2

?????文件???????6468??2010-05-30?01:55??0701201班于海超題2\pro2.c

?????文件?????196213??2010-05-30?01:46??0701201班于海超題2\pro2.DSN

?????文件???????2872??2010-05-30?01:55??0701201班于海超題2\pro2.hex

?????文件??????16245??2010-05-30?01:55??0701201班于海超題2\pro2.LST

?????文件??????14899??2010-05-30?01:55??0701201班于海超題2\pro2.M51

?????文件??????13650??2010-05-30?01:55??0701201班于海超題2\pro2.OBJ

?????文件??????11017??2010-05-30?01:55??0701201班于海超題2\pro2.omf

?????文件????????356??2010-05-30?01:56??0701201班于海超題2\pro2.omf.plg

?????文件???????1014??2010-05-30?01:37??0701201班于海超題2\pro2.Opt

?????文件???????3167??2010-05-24?18:49??0701201班于海超題2\pro2.plg

?????文件???????1363??2010-05-30?01:56??0701201班于海超題2\pro2.PWI

?????文件???????1987??2010-05-29?20:54??0701201班于海超題2\pro2.Uv2

????.......??????1014??2010-05-29?21:26??0701201班于海超題2\pro2_Opt.Bak

?????文件???????2049??2010-05-24?21:41??0701201班于海超題2\pro2_Uv2.Bak

?????文件???????5115??2002-04-16?15:32??0701201班于海超題2\STARTUP.A51

?????文件??????11768??2010-05-24?15:52??0701201班于海超題2\STARTUP.lst

?????文件?????538624??2010-05-30?01:41??0701201班于海超題2\說明文檔.doc

?????目錄??????????0??2010-05-30?01:56??0701201班于海超題2

-----------?---------??----------?-----??----

??????????????1057089????????????????????22


評論

共有 條評論

相關(guān)資源