導航:首頁 > 操作系統 > 51單片機數碼管萬年歷

51單片機數碼管萬年歷

發布時間:2022-09-27 21:21:30

⑴ 51單片機萬年歷能加什麼功能

51萬年歷最基本的可以實現年月日的顯示,如果想要豐富功能,可以加入按鍵,用來調節時間。可以用蜂鳴器實現鬧鍾功能,除了在數碼管上顯示外,還可以用led點陣顯示……能加的東西很多,要根據你想的功能來實現。

⑵ 單片機做萬年歷用數碼管的優缺點

優點,定時精準,缺點,電路復雜成本高。
數碼管萬年歷的設計原理是利用AT89C5單片機內部定時/計數器TO的模式2(8位自動重裝初值)產生一個時間為250us的信號,再計數4000次產生1S的時間後發出中斷,再由單片機進行數據處理後,送人數碼管(共陰極數碼管)顯示(動態顯示)。

⑶ 用51單片機單片機做數碼管萬年歷,要什麼晶元驅動數碼管比較好呢

用74HC573鎖存器,只如果是14個數碼管的話,用3個鎖存器就夠了。
一共需要用到單片機的11個IO口

⑷ 51單片機做的萬年歷兩個8位數碼管顯示日期時間,一個兩位數碼管顯示溫度,一個一位數碼管顯示星期,

用單片機做萬年歷,最好是再加一片DS1302之類的時鍾晶元,還有電池(超級電容也可以)。
否則時間不準的。還容易出問題,程序量也大。
52單片機驅動19位數碼管沒什麼問題,內存中建立每一位的緩存變數,中斷裡面依次動態掃描就行了。

⑸ 求一基於51單片機的萬年歷,顯示年 月 日 農歷 星期 溫度 時間 ,不用實時的時鍾晶元 。用數碼管顯示,

建議改下方案,用實時時鍾晶元會方便些,因為,通過編程做時鍾運行沒問題,精度也絕對可以做到比一些常用的時鍾晶元高,但做成萬年歷時,星期還好,大小月、閏月等等很麻煩,如果在加上農歷,就更麻煩,另外這樣的系統一旦斷電就要重新設置,至於EEPROM等也不一定很穩定。

⑹ 51單片機實現萬年歷

可以實現秒.MS都可以
時鍾晶元用DS12887就可以了,15元左右,挺方便,不用外接其他東西.
不過需要注意一下,好象DS12887的讀引腳是高電平有效,和單片機連的餓時候要接反向器,或者用三極體也行.

⑺ 基於51單片機製作萬年歷,用數碼管,定時器,不用時鍾晶元,不用液晶,怎麼做求大神解,原理圖和C程序

基於51單片機製作萬年歷,用兩個8位一體的共陰數碼管,顯示日期和時間。數碼管位選用兩片74HC138,便於動態掃描顯示,又節省引腳。用3個按鍵調時,K1為選擇調時狀態,K2為加1鍵,K3為減1鍵。

模擬圖如下:

⑻ C51單片機8位數碼管萬年歷時間+日期

這個不難,但是很繁瑣的。
1、你要實現按鍵功能,目測你要軟體查詢實現。
2、LCD1602驅動,不難,網上代碼一堆。
3、計時功能:要用到定時器,也不是很難。
4、實現數字加減,數字位置(很煩)
5、校時(其實就是調整數字)
6、日歷和時間沒有本質區別,都一樣。

⑼ 用51單片機設計數碼管萬年歷系統 要求 ⑴能顯示陽歷年、月、日、星期(2)能夠人為校正年、月、日、星期

不好意思,現在比較忙,幫你做實在是不行,不過我有之前做過的畢設,你可以改改,想要的話可以聯系我

⑽ C51單片機的萬年歷程序設計

我這有個數碼管顯示的程序
以前做的,。。
你可以在我這個程序上修改修改
包括鍵盤掃描,還有動態顯示



【。。。】
#include
//常量參數
#define TMODW 0x01;
#define SCONW 0x00;
#define xplay 0x04;//顯示分頻系數
//顯示位選
unsigned char data stb;
//鍵值緩存,0xFF無鍵命令
unsigned char data keynum;
//顯示字型變數
unsigned char data play[8];
//工作參數
unsigned char data l,m;
//字型碼
unsigned char code BCDPC[10]=
{0x3F,0x06,0x5B,0x4F,0x66,
0x6D,0x7D,0x07,0x7F,0x6F};
//字位碼
unsigned char code STBCODE[8]=
{0x01,0x02,0x04,0x08,
0x10,0x20,0x40,0x80 };
//400Hz xplay分頻計數
unsigned char data cttime;
//時鍾參數
unsigned char data hr,min,sec,sec100;
//調整時鍾參數(時鍾「走」)
void ct1()
{sec100++;
if (sec100==100)
{sec100=0;sec++;
if (sec==60)
{sec=0;min++;
if (min==60)
{min=0;hr++;
if (hr==24) hr=0;
}
}
}
}
//時鍾參數→LED 顯示緩存7段參數轉換函數;
void xcplay()
{play[0]=BCDPC[hr/10];
play[1]=BCDPC[hr%10];
play[2]=BCDPC[min/10];
play[3]=BCDPC[min%10];
play[4]=BCDPC[sec/10];
play[5]=BCDPC[sec%10];
play[6]=BCDPC[sec100/10];
play[7]=BCDPC[sec100%10];
}
//顯示掃描
void cplay()
{T0=1;//T0-高電平消隱
T1=0;//T1-低電平準備發脈沖前沿
TI=0;//?
P1=0;//?
SBUF=STBCODE[stb];
while (TI==0)
{
};
TI=0;
SBUF=play[stb];
while (TI==0)
{
};
T1=1;
T0=0;
stb=++stb&0x07;
}

extern void cthl0();
//定時器0中斷處理程序
void ct0(void) interrupt 1 using 1
{cthl0();
cttime--;
if (cttime==0)
{cttime=xplay;
ct1();//調用時鍾「走」函數
xcplay();//調用時鍾參數→Led顯示緩存轉換函數
};
cplay();
}
void w20ms()
{for (l=0;l<41;l++)
{for (m=0;m<81;m++)
{
}
}
}
void tkey()
{P1=0xF0;
keynum=0xFF;
if (P1!=0xF0)
{w20ms();
P1=0xF0;
if (P1!=0xF0)
{P1=0xFE;
switch (P1)
{case 0xEE:keynum=0;break;
case 0xDE:keynum=1;break;
case 0xBE:keynum=2;break;
case 0x7E:keynum=3;break;
}
P1=0xFD;
switch (P1)
{case 0xED:keynum=4;break;
case 0xDD:keynum=5;break;
case 0xBD:keynum=6;break;
case 0x7B:keynum=7;break;
}
P1=0xFB;
switch (P1)
{
case 0xEB:keynum=8;break;
}
};
};
P1=0x00;
}
void command()
{switch (keynum)
{
case 0:{hr=hr+1;
if (hr==24)
hr=0;
}
break;

case 1:{min=min+1;
if (min==60)
min=0;
}
break;

case 2:{sec=sec+1;
if (sec==60)
sec=0;
}
break;

case 3:{sec100=0;
}
break;

case 4:{
while(!(P1=0xED))
{
hr=0;
min=0;
sec=0;
}
}
break;

case 5:{hr=hr-1;
if (hr==00)
hr=24;
}
break;
case 6:{min=min-1;
if (min==00)
min=59;
}
break;

case 7:{sec=sec-1;
if (sec==00)
sec=0;
}
break;

case 0xFF:break;
}
keynum=0xFF;
}
main ()
{ hr=8;
min=5;
sec=8;
sec100=0;
TMOD=TMODW;
SCON=SCONW;
ET0=1;
TR0=1;
EA=1;
cttime=xplay;
while (1)
{w20ms();
tkey();
command();

};
}

閱讀全文

與51單片機數碼管萬年歷相關的資料

熱點內容
找漫畫看應該下載什麼app 瀏覽:180
如何在vps上搭建自己的代理伺服器 瀏覽:744
nginxphp埠 瀏覽:403
內臟pdf 瀏覽:152
怎麼看雲伺服器架構 瀏覽:85
我的世界國際服為什麼登不進伺服器 瀏覽:996
微盟程序員老婆 瀏覽:930
intellij創建java 瀏覽:110
java連接odbc 瀏覽:38
啟動修復無法修復電腦命令提示符 瀏覽:359
手機編程是什麼 瀏覽:98
山東移動程序員 瀏覽:163
蘇州java程序員培訓學校 瀏覽:478
單片機液晶驅動 瀏覽:855
魔拆app里能拆到什麼 瀏覽:132
新預演算法的立法理念 瀏覽:144
wdcpphp的路徑 瀏覽:134
單片機p0口電阻 瀏覽:926
瀏覽器中調簡訊文件夾 瀏覽:594
五菱宏光空調壓縮機 瀏覽:69