




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于單片機(jī)的數(shù)字時(shí)鐘設(shè)計(jì)設(shè)計(jì)簡(jiǎn)介
本設(shè)計(jì)選擇的是以STC90C51單片機(jī)為控制核心。配備其他外圍電路構(gòu)成了一個(gè)具有時(shí)間顯示、按鍵調(diào)時(shí)、鬧鈴定時(shí)功能的數(shù)字時(shí)鐘。系統(tǒng)采用七段式數(shù)碼管作為顯示器,軟件程序采用均采用C語言編寫,便于移植與升級(jí)。報(bào)告詳細(xì)介紹了整個(gè)系統(tǒng)的硬件組成結(jié)構(gòu)、工作原理和系統(tǒng)的軟件程序設(shè)計(jì)。系統(tǒng)設(shè)計(jì)
系統(tǒng)框圖
報(bào)時(shí)電路
單片機(jī)電源電路
時(shí)鐘電路復(fù)位電路顯示電路控制電路硬件設(shè)計(jì)
——系統(tǒng)仿真電路圖系統(tǒng)硬件組成及其功能
一、電源電路二、時(shí)鐘電路其輸入引腳為18(XTA2)、19(XTAL1).電路有2個(gè)電容(C1/C2)其容量約為30pF還有一個(gè)晶體振蕩器(1.2~12mHz)。時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào)三、按鍵電路單片機(jī)引腳默認(rèn)輸出為高電平,當(dāng)開關(guān)按下時(shí)引腳與地相連,引腳電平為低電平,單片機(jī)采集到低電平做出反應(yīng)。四、復(fù)位電路a、上電復(fù)位b、按鍵復(fù)位五、顯示電路六、報(bào)時(shí)電路74HC573OE:三態(tài)允許控制端低電平有效LE:數(shù)據(jù)鎖存使能,1D~8D為數(shù)據(jù)輸入端1Q~8Q為數(shù)據(jù)輸出端功能:芯片74HC573是8位三態(tài)鎖存器.可鎖存地址,數(shù)據(jù),可作緩沖器用。在本設(shè)計(jì)中采用74HC573提高對(duì)數(shù)碼管的驅(qū)動(dòng)能力。軟件設(shè)計(jì)
一、主程序流程圖二、按鍵程序流程圖三、程序及其功能#include<reg51.h>unsignedcharSeg[]={0X3f,0X06,0X5b,0X4f,0X66,0X6d,0X7d,0X07,0X7f,0X6f,0x40};//數(shù)碼管顯示1-9和—的斷碼unsignedcharCom[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff};//數(shù)碼管亮滅的數(shù)組/***************************************************************定義全局變量***************************************************************/unsignedintcounter=0;//定義計(jì)數(shù)數(shù)據(jù)unsignedcharmode;//定義模式unsignedcharsecond=0,minute=0,hour=0;//定義秒分時(shí)的初值unsignedcharADD_bit=0,DEC_bit=0,flag=0;//加標(biāo)志位和減標(biāo)志位賦初值0,/***************************************************************
定義按鍵
***************************************************************/sbitms=P1^0;//按鍵P^0調(diào)節(jié)模式變化sbitADD=P1^1;//按鍵P1^1實(shí)現(xiàn)加一sbitDEC=P1^2;//按鍵P1^2實(shí)現(xiàn)減一sbitSPK=P1^7;//按鍵P1^7實(shí)現(xiàn)報(bào)時(shí)
/***************************************************************延時(shí)函數(shù)***************************************************************/voiddelay(unsignedintt){while(t--);}/******************************************************************數(shù)碼管掃描******************************************************************/voidSegplay(){
P0=Seg[second%10];P3=Com[7];delay(100);P3=Com[8];P0=Seg[second/10];
P3=Com[6];delay(100);P3=Com[8];P0=Seg[10];
P3=Com[5];delay(100);P3=Com[8];P0=Seg[minute%10];
P3=Com[4];delay(100);P3=Com[8];P0=Seg[minute/10];
P3=Com[3];delay(100);P3=Com[8];P0=Seg[10];
P3=Com[2];delay(100);P3=Com[8];P0=Seg[hour%10];
P3=Com[1];delay(100);P3=Com[8];P0=Seg[hour/10];
P3=Com[0];delay(100);P3=Com[8];}/***************************************************************按鍵掃描***************************************************************/voidKeyget(){//通過標(biāo)志位來控制模式
if(ms==0){flag=1;}if((ms)&&(flag)) {flag=0;mode++;if(mode==3)mode=0;}if(mode==1)
{if(ADD==0){ADD_bit=1;}//加按鍵
if((ADD)&&(ADD_bit))
{ADD_bit=0;minute++;if(minute==60)minute=0;}
if(DEC==0){DEC_bit=1;}//減按鍵if((DEC)&&(DEC_bit==1)) {DEC_bit=0;if(minute==0)minute=60;minute--;}}if(mode==2){if(ADD==0){ADD_bit=1;}if((ADD)&&(ADD_bit)) {ADD_bit=0;hour++;if(hour==24)hour=0;}if(DEC==0) {DEC_bit=1;}if((DEC)&&(DEC_bit==1)) {DEC_bit=0;if(hour==0)hour=24;hour--;}}}/***************************************************************報(bào)時(shí)掃描***************************************************************/voiddidi(){if(second==0&&minute==0){SPK=1;delay(20);SPK=0;}}/**************************************************************************中斷初始化**************************************************************************/voidtime0(){TMOD=0x01;//設(shè)置定時(shí)器模式1TH0=(65536-50000)/256;//高八位賦初值TL0=(65536-50000)%256;//低八位賦初值TR0=1;//啟動(dòng)定時(shí)器0計(jì)數(shù)ET0=1;//使能定時(shí)器中斷EA=1;//使能總中斷}/***********************************************************************主函數(shù)***********************************************************************/voidmain(){time0();while(1){Keyget(); //加減控制Segplay();//數(shù)碼管顯示
didi();//報(bào)時(shí)控制}}/**************************************************************************中斷服務(wù)程序**************************************************************************/voidtimer0()interrupt1{TH0=(65536-50000)/256;//高八位賦初值TL0=(65536-50000)%256;
//低八位賦初值
counter++;
if(counter==20)
{counter=0;second++;if(second==60)
{second=0;minute++;}//秒進(jìn)位
if(minute==60)
{minute=0;hour++;}
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子商務(wù)師實(shí)操案例分析試題及答案
- 年度經(jīng)理工作規(guī)劃計(jì)劃
- 公司生產(chǎn)工作計(jì)劃提升員工技能
- 開發(fā)新市場(chǎng)的戰(zhàn)略規(guī)劃計(jì)劃
- 電子商務(wù)標(biāo)識(shí)與信譽(yù)構(gòu)建試題及答案
- 學(xué)校特色品牌建設(shè)計(jì)劃
- 秋季節(jié)能減排活動(dòng)計(jì)劃
- 物流供應(yīng)鏈的環(huán)節(jié)分析國(guó)際物流師試題及答案
- 2024物理期末復(fù)習(xí)試題及答案
- 持續(xù)提升的預(yù)算員試題及答案
- 安全生產(chǎn)、文明施工資金保障制度11142
- 安徽省C20教育聯(lián)盟2024-2025學(xué)年九年級(jí)下學(xué)期3月月考數(shù)學(xué)試題 (原卷版+解析版)
- 2025新疆機(jī)場(chǎng)(集團(tuán))有限責(zé)任公司阿克蘇管理分公司第一季度招聘(75人)筆試參考題庫附帶答案詳解
- 品質(zhì)異常處罰細(xì)則及獎(jiǎng)罰制度
- 二年級(jí)下冊(cè)心理健康教案-第二十四課 幫爸爸媽媽分擔(dān) 媽媽謝謝您|北師大版
- 人教PEP版五年級(jí)英語下冊(cè)-《課時(shí)學(xué)練測(cè)》全冊(cè)含答案
- 鍋爐水冷壁安裝作業(yè)指導(dǎo)書
- 《雷鋒叔叔_你在哪里》說課稿
- 贊美詩歌400首全集
- 橫向分布系數(shù)計(jì)算剖析
- 北京市建筑施工作業(yè)人員安全生產(chǎn)知識(shí)教育培訓(xùn)考核試卷A及答案知識(shí)講解
評(píng)論
0/150
提交評(píng)論