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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于stc89c52單片機(jī)的電子日程表設(shè)計(jì)(文件)

 

【正文】 、甚至各種定時(shí)電氣的自動(dòng)啟用等,所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。 二 .課題任務(wù)與設(shè)計(jì)思路 時(shí)間是兩時(shí)刻之間的時(shí)刻間隔 , 是一種最基本的環(huán)境參數(shù),人 門 的生活與 時(shí)間 息息相關(guān),在工業(yè)生產(chǎn)過程中需要實(shí)時(shí) 地觀察 事務(wù) ,設(shè)定 事務(wù) , 因此研究 時(shí)間 的測(cè)量方法和 設(shè) 計(jì)測(cè)量 裝置具有重要的意義 。 設(shè)計(jì)采 TC89系列單片機(jī),以匯編語(yǔ)言為程序設(shè)計(jì)的基礎(chǔ),設(shè)計(jì)出用液晶顯示事務(wù)、 年、月、日、周、時(shí)、分、秒、溫度的 日程表 。如果是數(shù)字信號(hào)就可以直接送往單片機(jī)進(jìn)行數(shù)據(jù)處理。另外,這種電路設(shè)計(jì)方案的另外一個(gè)設(shè)計(jì)要求就是晶振的選擇要求晶振的振蕩頻率必須通過分頻得到秒脈沖。而在夜晚不需要觀察時(shí)鐘的時(shí)候就可以給主電路斷電,這樣可以節(jié)約大量能量。 比較上述兩種方案可以看出,第二種方案計(jì)時(shí)更加準(zhǔn)確而且電路硬件設(shè)計(jì)先對(duì)來(lái)說(shuō)并不復(fù)雜,軟件設(shè)計(jì)更加簡(jiǎn)潔,因此采用第二種方案。 方案三:采 用 LCD液晶顯示器顯示。采用 LCD 液晶顯示方案的缺點(diǎn)是在顯示位數(shù)比較少時(shí),價(jià)格略顯昂貴。實(shí)時(shí)日程表 的要求 : ( 1) 基本要求 a) 具有年 、月、日、星期、時(shí)、分、秒等功能; b) 具備年、月、日、星期、時(shí)、分、秒校準(zhǔn)功能; c) 具有事務(wù)文字提醒功能 。更重要的是, DS1302 可以在外部電源斷電的情況下繼續(xù)計(jì)時(shí),在沒有外部供電的情況下, DS1302 可以連續(xù)計(jì)時(shí) 10年以上。若用數(shù)字電路完成,所設(shè)計(jì)的電路相當(dāng)復(fù)雜,大概需要十幾片數(shù)字集成塊,其功能也主要依賴數(shù)字電路的各功能模塊的組合來(lái)實(shí)現(xiàn) [4]。 STC89C52 單片機(jī)為 40 引腳雙列直插芯片 ,有四個(gè) I/O 口 P0、 P P P3,每一條 I/O 線都能獨(dú)立地作輸出或輸入。單片機(jī)的第 18引腳和 19引腳接時(shí)鐘電路, XTAL1接外部晶振和微調(diào)電容的一端,XTAL2 接外部晶振和微調(diào)電容的另一端。 20 引腳為接 地端, 40 引腳為電源端。采用此種方案雖然可以減少時(shí)鐘芯片的使用,節(jié)約成本,但是,實(shí)現(xiàn)的時(shí)間誤差較大。DS1302內(nèi)部有一個(gè) 31 8的用于臨時(shí)性存放數(shù)據(jù)的 RAM寄存器。因此,本設(shè)計(jì)中采用 DS1302 提供時(shí)鐘。時(shí)鐘 /RAM 的讀 /寫數(shù)據(jù)以一字節(jié)或多達(dá)31 字節(jié)的字符組方式通信。另外 DS1302 的 12腳與電源地相連, 24 腳與電源相連。其中, 時(shí)間調(diào)整 按鈕與 單片機(jī) STC89C52 的 ,其功能是當(dāng)按下此鍵時(shí),開始選擇事務(wù),并可以調(diào)整 年、月、日、星期、時(shí)、分、秒,沒按一次就改變一個(gè)相應(yīng)的要改變的位 ; 鬧鐘調(diào)整按鈕 與 單片機(jī) STC89C52 的 相連 ,其功能是當(dāng)按下此鍵時(shí)開始進(jìn)行鬧鐘調(diào)整,并且每按一次就改變一次要調(diào)整的位 ; 加 法按鈕與 單片機(jī) STC89C52 的 連 ,其功能是每按一次此鍵就將相應(yīng)的要改變的位的數(shù)值加一 ; 減法 按鈕 與 單片機(jī) STC89C52 的 ,其功能是每按下一次此鍵就將要改變的位的數(shù)值減一;近遠(yuǎn)程選擇按鈕與 STC89C52 的 相連。 12864LCD 的引腳說(shuō) 明如表 22所示 。 2.?dāng)?shù)據(jù)寄存器 (DR) DR 是用于寄存數(shù)據(jù)的,與指令寄存器寄存指令相對(duì)應(yīng)。 BF=1 表示模塊在內(nèi)部操作,此時(shí)模塊不接受外部指令和數(shù)據(jù)。 DFF=1 為開顯示( DISPLAY OFF), DDRAM 的內(nèi)容就顯示在屏幕上, DFF=0 為關(guān)顯示( DISPLAY OFF)。 X地址計(jì)數(shù)器是沒有記數(shù)功能的,只能用指令設(shè)置。 DDRAM 與地址和顯示位置的關(guān)系見 DDRAM 地址表。因此,顯示屏幕的起始行就由此指令控制,即 DDRAM 的數(shù)據(jù)從哪一行開始顯示在屏幕的第一行。字符顯示是通過將字符顯示編碼寫入該字符顯示 RAM 實(shí)現(xiàn)的。字符顯示的 RAM 的地址與 32 個(gè)字符顯示區(qū)域有著一一對(duì)應(yīng)的關(guān)系,其對(duì)應(yīng)關(guān)系如 表 23 所示。 12345678RST91011121314151617XTAL218XTAL119VSS202122232425262728PSEN29ALE/PROG30EA/VPP313233343536373839VCC40U1P89C51RC2BN/01VCC24AD59AD48AD37AD26AD15AD04AD711MOT1AD610CS13AS14R/W15DS17RST18SQW23GND12IRQ19U2DS12887LS1BellRDRDCSCSALEALERWRWINT1INT1VCCVCCS1SWpbS2SWpbS4SWpbS3SWpb12Y110KR3Res210KR4Res210KR5Res210KR6Res210KR7Res210KR8Res210KR9Res210KR10Res2D0D1D2D3D4D5D6D7 D0D1D2D3D4D5D6D722pFC1Cap22pFC2Cap100pFC3Cap1KR1Res2VCCRSTRST1234567891011121314151617181920THS1286412AU4VCCVCCVCC8B7A6END5DI4DE3RE2RO1U3MAX485VCCRDRDTDTD5vQ12N39041KR2Res2bellbellS5SWSPSTVSSVDDV0CSSIBSCLKDB0DB1DB2DB3DB4DB5DB6DB7PSBNCRSTNCLEDKLEDA 圖 210 顯示模塊 14 第 3 章 系統(tǒng)軟件設(shè)計(jì) 軟件是系統(tǒng)的主要組成部分,也是整個(gè)調(diào)試的重點(diǎn)和難點(diǎn)工作。匯編程序通常由三部分組成:指令、偽指令和宏指令。 不宜使用的領(lǐng)域 大型軟件的整體開發(fā); 沒有特殊要求的一般應(yīng)用系統(tǒng)的開發(fā)等。在主程序中,系統(tǒng)上電自動(dòng)復(fù)位以后首先進(jìn)行系統(tǒng)的液晶顯示、時(shí)鐘芯片 DS1302 初始化,然后 選擇事務(wù)和 讀寫日期、時(shí)間等信息,待數(shù)據(jù)讀寫結(jié)束后顯示時(shí)鐘。 TH1=(6553550000)/256。 ET1=1。 KEY_1 = 1。//初始鍵盤 16 yy=0xff。hh=0xff。 DelayM(900)。//清屏 LCM_clr()。amp。amp。 TR1=1。 if(count==5) { TR1=0。} } } 主程序說(shuō)明,當(dāng)主程序運(yùn)行時(shí),先將液晶顯示器清屏,然后將單片機(jī)和時(shí)鐘日歷芯片 DS1302初始化,即將時(shí)鐘的初始時(shí)間設(shè)定為 2021 年 5 月 24 日 。 圖 32 DS1302時(shí)鐘芯片的讀操作流程圖 液晶模塊的寫操作流程圖 本設(shè)計(jì)用的液晶模塊是 12864 液晶模塊,這個(gè)模塊可以進(jìn)行串口通信也可以進(jìn)行并口通信,由于單片機(jī)口線限制,在這里采用了串口設(shè)計(jì)思路。 按鍵調(diào)整模塊流程圖 按鍵調(diào)整程序模塊是用來(lái) 選擇事務(wù)和 調(diào)整時(shí)間的,當(dāng) 按鍵按下時(shí)進(jìn)入時(shí)間調(diào)整界面,再按 就會(huì)依次改變要調(diào)整的參量,依次調(diào)整的參量為年、月、日、時(shí)、分、秒。雖然現(xiàn)在很多設(shè)計(jì)采用仿真來(lái)模擬結(jié)果,但是放著和實(shí)際還是有一定差距的,而且有些實(shí)際問題是仿真所不能顯示的,為了更好的驗(yàn)證本設(shè)計(jì)方案,因此本設(shè)計(jì)采用實(shí)物來(lái)驗(yàn)證。主要遇到的問題有電路焊接時(shí)地線和電源線的排布,由于電路中的電源線和地線的連接點(diǎn)比較多,在實(shí)際的印刷電路板中,地線一般是環(huán)繞板子而且比 較粗的銅線,鑒于這個(gè)思路,我將電源線和地線分別布置在電路板的兩個(gè)邊上,如圖 42, 43 所示。 軟件調(diào)試 本設(shè)計(jì)采用 Keil 軟件來(lái)編譯程序, 是目前使用廣泛的單片機(jī)開發(fā)軟件,它集成了源程序編輯和程序調(diào)試于一體,支持匯編 語(yǔ)言編譯,另外它還支持第三方編譯器,可以編譯 C語(yǔ)言和 PL/M 語(yǔ)言 。 圖 42 編譯程序 編譯 :加載好要編譯的文件,在工具欄的右上方找到編譯按鈕,按下編譯按鈕,開始編譯,編譯后會(huì)提示編譯是否通過,如果編譯通過就可以進(jìn)行程序下載,實(shí)驗(yàn);如果編譯沒有通過說(shuō)明程序存在錯(cuò)誤需要修改這時(shí)會(huì)在軟件下方提示哪里22 有錯(cuò)誤,是什么錯(cuò)誤類型,如圖 43 所示。 主要工作和成果如下: ( 1)介紹基于單片機(jī)的 日程表電路的設(shè)計(jì)方法,并對(duì)基于單片機(jī)的日程表 的應(yīng)用進(jìn)行了初步探討。課題設(shè)計(jì)取得了較好的效果, 達(dá)到了課題的基本要求。 在基于單片機(jī)的數(shù)字 日程表 電路設(shè)計(jì)過程中,我 學(xué)到了很多重要的東西,其中最重要的是如何將實(shí)踐和理論相聯(lián)系,怎樣將我所學(xué)到的知識(shí)運(yùn)用到我以后的工作中去。在此次設(shè)計(jì)中,我的難點(diǎn)是程序的調(diào)試,由于以前僅僅學(xué)了一點(diǎn)匯編語(yǔ)言的皮毛,所以編一個(gè)完整的程序很是吃力!但是經(jīng)過這一段時(shí)間的學(xué)習(xí),我還是解決了一些問題。 老師的 悉心指導(dǎo),讓我有信心去解決所遇到的一個(gè)個(gè)問題。 同時(shí), 還要感謝我的同學(xué)在 畢業(yè)設(shè)計(jì)中給予的幫助,才使我得以順利完成畢業(yè)論文。 sbit LCM_sclk = P2^4。 sbit LCM_rst = P2^7。 /*****************************************************************************/ //溫度傳感器定義 sbit DQ = P1^0。 //調(diào)整日歷和時(shí)間 sbit KEY_4 = P1^7。 //實(shí)時(shí)時(shí)鐘復(fù)位線引腳/*****************************************************************************/ //定義累加器 A中的各位 sbit ACC0 = ACC^0。 data uchar year_moon,month_moon,day_moon,week。 static unsigned char menu = 0。 //備忘錄事項(xiàng)。 while( a != 0) { for(i = 0。 表示空語(yǔ)句 ,CPU空轉(zhuǎn)。 beep =1。 //寫字符 例:LCM_WriteString(您好! )。 //延時(shí) void LCM_init(void)。 31 void Conversion(bit c,uchar year,uchar month,uchar day)。 LCM_WriteDatOrCom(0,0x98)。 break。 break。 break。 break。 }//1月 if ( mo == 0x01 amp。amp。 day_moon == 0x15 ){ LCM_WriteString( 元宵節(jié)快樂 )。 } 32 if ( mo == 0x02 amp。amp。 dd == 0x14 ){ LCM_WriteString( 今天是情人節(jié) )。 }//3月 if ( mo == 0x03 amp。amp。 dd == 0x01 ){ LCM_WriteString(愚人節(jié) 小心上當(dāng) )。 } if ( mo == 0x04 amp。amp。 day_moon == 0x05 ){ LCM_WriteString( 端午節(jié) )。 }//5 if ( mo == 0x05 amp。amp。 dd == 0x05 ){ LCM_WriteString( 世界環(huán)境日 )。 } if (month_moon== 0x07 amp。amp。 dd == 0x07 ){ LCM_WriteString(抗日戰(zhàn)爭(zhēng)記念33 日 )。 } if (month_moon== 0x08 amp。amp。 dd == 0x08 ){ LCM_WriteString( 中國(guó)男子節(jié)。 }//8 if ( mo == 0x08 amp。 day_moon == 0x15 ){ LCM_WriteString( 中秋節(jié)快樂 )。amp。 }//7 if ( mo == 0x07 amp。 day_moon == 0x15 ){ LCM_WriteString( 中元節(jié) )。amp。 }//6 if ( mo == 0x06 amp。 dd == 0x04 ){ LCM_WriteString( 青年節(jié) )。amp。 }
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1