freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機的多功能數(shù)字時鐘論文(編輯修改稿)

2025-07-17 12:35 本頁面
 

【文章內(nèi)容簡介】 取DS1302數(shù)據(jù)數(shù)據(jù)顯示(時間日期)鍵盤掃描,是否有鍵按下?否時間日期鬧鐘調(diào)整調(diào)整結(jié)束?否是是.2 DS1302時鐘讀寫程序流程 單片機通過指令,從DS1302當(dāng)中讀取時間數(shù)據(jù),送到單片機處理然后送到LCD1602顯示。開始變量初始化DS1302不寫保護復(fù)位產(chǎn)生一個高電平寫DS1302地址延時一段時間向該地址寫數(shù)據(jù)地址增加數(shù)據(jù)是否寫完?否復(fù)位產(chǎn)生一個高電平寫DS1302地址延時一段時間講該地址的數(shù)據(jù)讀出地址增加數(shù)據(jù)是否讀完?顯示數(shù)據(jù)否是 DS1302時鐘讀寫程序流程圖.3 按鍵掃描子程序流程 系統(tǒng)通過按鍵來對時間進行校正及對鬧鐘的設(shè)定,由于按鍵會有機械性的都抖動,因此需要在程序中加入防抖動程序。開始按鍵掃描是否有鍵按下?K1按下K2按下K3按下年月日 星期 時鐘調(diào)整顯示鬧鐘鬧鐘調(diào)整否返回是 按鍵調(diào)整部分子程序流程圖.4 鬧鐘部分程序流程鬧鐘部分可以通過按鍵設(shè)定鬧鈴時間。開始時間顯示時間是否到鬧鐘設(shè)定時間?鬧鈴?fù)V刽[鈴開,播放音樂否返回是鬧鈴期間是否有按鍵按下?是否 鬧鐘部分程序流程圖5 系統(tǒng)焊接與調(diào)試 電路焊接調(diào)試在該電子鐘制作調(diào)試過程中,曾遇到以下問題:1) 當(dāng)硬件連接無誤,在系統(tǒng)啟動后液晶不顯示,系統(tǒng)沒有反應(yīng),這種情況有以下幾種可能:第一,硬件電路中存在虛焊,或電路接線焊錯;第二,芯片插反了導(dǎo)致電路短路;第三,液晶電路焊接錯誤。遇到這種情況首先要用萬用表檢查芯片的供電電壓是否為5V,如果不是就檢查供電電路有沒有問題。如果兩端有電壓就看看芯片插反沒有。2) 系統(tǒng)啟動液晶顯示不正常,這有可能是背光調(diào)節(jié)電位器阻值不合適,需要調(diào)節(jié)一下控制背光的10K電位器。3) 系統(tǒng)顯示不穩(wěn)定,這有可能是電壓不穩(wěn)定,或者STC89C52芯片的31引腳EA引腳沒有接高電平。 系統(tǒng)功能測試。通過按鍵設(shè)置鬧鐘時間,鬧鐘設(shè)定完畢顯示當(dāng)前時間,當(dāng)鬧鐘時間到鬧鈴開始播放一分鐘音樂,音樂播放器件按下第一個按鍵,鬧鈴?fù)V共シ乓魳?。鬧鐘有ON和OFF檔位,如果周末不需要鬧鐘功能可以通過按鍵設(shè)定關(guān)閉鬧鐘。經(jīng)過對實物的實際測試驗證該數(shù)字鬧鐘的各項功能均達到了設(shè)計要求。 系統(tǒng)誤差分析本系統(tǒng)的誤差來源主要有:1) DS1302時鐘芯片本身的問題,這個可以通過測試,看看在一定時間內(nèi)誤差是多少,可以用程序調(diào)節(jié)彌補誤差。2) 系統(tǒng)的外圍器件像晶振等帶來的誤差,這種情況要求我們在焊接的時候元器件布局要合理,保證線路質(zhì)量,最大程度的減少誤差。 設(shè)計總結(jié) 在此畢業(yè)設(shè)計過程中,鞏固了我在大學(xué)4年內(nèi)學(xué)過的知識,尤其是單片機和C語言編程方面的知識,同時通過這次畢設(shè)提高了單片機編程的能力,尤其是獲得的軟件調(diào)試經(jīng)驗,同時了解到了其它相關(guān)領(lǐng)域的知識,對今后的工作學(xué)習(xí)有著極大的幫助。 由于時間太倉促,經(jīng)驗不足,理論方面也相應(yīng)的存在不足,加上條件有限,仍存在著一些設(shè)計方面的問題,個人技能也有待提高。理論知識還要鞏固加強。但是寶貴的實踐經(jīng)驗還是對自己的提高有著極大的幫助。參考文獻[1] 薛均義,張彥斌.《MCS516系列單片微型計算機及應(yīng)用》[M].西安交通大學(xué)出版社,1999[2] 中國機械工業(yè)教育協(xié)會 組編.《單片機原理與應(yīng)用》.[3] 黃繼昌.《傳感器工作原理及應(yīng)用實例》[A],人民郵電出版社,1998[4] 郭永貞, 《數(shù)字電子技術(shù)》[M] 西安電子科技大學(xué)出版社 2000[5] 楊金巖等.《8051單片機數(shù)據(jù)傳輸接口擴展技術(shù)與應(yīng)用實例》[M]人民郵電出版社,2005. [6] 張齊,杜群貴.《單片機應(yīng)用系統(tǒng)設(shè)計技術(shù)》[M].電子工業(yè)出版社,2007[7] 李廣弟 《單片機基礎(chǔ)》[M],北京航空航天大學(xué)出版社,2001[8] 于京《51系列單片機C程序設(shè)計與應(yīng)用方案》[M] 中國電力出版社 2002.[9] 張齊,杜群貴 《單片機應(yīng)用系統(tǒng)設(shè)計技術(shù)》[M].電子工業(yè)出版社,2004[10] 張洪潤 《電子線路與電子技術(shù)》[M].清華大學(xué)出版社,2005[11] 童詩白,華成英.《模擬電子技術(shù)基礎(chǔ)》[M]. 高等教育出版社,2006[12] 胡海學(xué).《單片機原理及應(yīng)用系統(tǒng)設(shè)計》[M].電子工業(yè)出版社,2005.[13] 及力,《Protel99SE原理圖與PCB設(shè)計教程》[M]電子工業(yè)出版社,2004.[14] 戴佳,《51單片機C語言設(shè)計實例精講》[M] 電子工業(yè)出版社 2006[15] 周堅,《單片機C語言輕松入門》[M] 北京航空航天大學(xué)出版社2007 附錄1系統(tǒng)元器件清單多功能數(shù)字時鐘元器件清單元件名稱元件符號元件型號電阻R1 . R51K電阻R4電阻R0. R3 .R6. R7. R8. R9. R10. R11 .R1210K排阻RP110K電解電容C2 C3220UF 10UF晶振Y1 Y2 陶瓷電容C4 C530P陶瓷電容C1 100P三極管Q19012蜂鳴器BZ1BUZZER時鐘芯片U2DS1302小按鍵K1. K2. K3. K4SWITCH液晶顯示器LCD1LCD1602發(fā)光二極管D1LED單片機U1SWITCH自鎖按鍵S1SW_SPSTBT1附錄2 系統(tǒng)源程序/* * 電子鐘*/include include include include include TIME time, tmp_time。ALARM alarm。bit Alarm_flag=1。define LCD_COMMAND 0 // Commanddefine LCD_DATA 1 // Datasfr DBPort = 0x80。 bit flag=0。sbit DQ = P2^3。 //溫度傳送數(shù)據(jù)IO口uint8 TempBuffer[7]。uint8 temp_value,xiaoshu。 //溫度值/* * 延時程序*/void delay(uint16 n){ while (n)。}/* * 毫秒延時程序*/void delay_ms(uint16 n){ uint8 m=120。 //延時1ms while (n) while (m)。}/* * 按鍵掃描*/int8 scan_key(void){ int8 val=0。 if (KeyIn1 == 0) { delay_ms(10)。 if (KeyIn1 == 0) { while (KeyIn1 == 0)。 //等待按鍵抬起 val = 1。 } } else if (KeyIn2 == 0) { delay_ms(10)。 if (KeyIn2 == 0) { while (KeyIn2 == 0)。//等待按鍵抬起 val = 2。 } } else if (KeyIn3 == 0) { delay_ms(10)。 if (KeyIn3 == 0) { while (KeyIn3 == 0)。//等待按鍵抬起 val = 3。 } } else if (KeyIn4 == 0) { delay_ms(10)。 if (KeyIn4 == 0) { while (KeyIn4 == 0)。//等待按鍵抬起 val = 4。 } } //if (val 0) //buzzer_sound()。 return val。}/***********ds18b20子程序*************************/LCD_Wait(void){ RS=0。 RW=1。 _nop_()。 EN=1。 _nop_()。 EN=0。 return DBPort。 }void LCD_Write(bit style, unsigned char input){ EN=0。 RS=style。 RW=0。 _nop_()。 DBPort=input。 _nop_()。//注意順序 EN=1。 _nop_()。//注意順序 EN=0。 _nop_()。 LCD_Wait()。 }//液晶字符輸入的位置************************void GotoXY(unsigned char x, unsigned char y){ if(y==0) LCD_Write(LCD_COMMAND,0x80|x)。 if(y==1) LCD_Write(LCD_COMMAND,0x80|(x0x40))。}void Print(unsigned char *str){ while(*str!=39。\039。) { LCD_Write(LCD_DATA,*str)。 str++。 }}/***********ds18b20延遲子函數(shù)(晶振12MHz )*******/ void delay_18B20(unsigned int i){ while(i)。}/**********ds18b20初始化函數(shù)******************
點擊復(fù)制文檔內(nèi)容
化學(xué)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1