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

正文內(nèi)容

基于51單片機內(nèi)部定時器的簡易鬧鐘設計論文(編輯修改稿)

2024-12-14 07:06 本頁面
 

【文章內(nèi)容簡介】 首先根據(jù)硬件設計在 Protues 中完成原理圖的設計,確定使用單片機的哪些 I/O 口,然根據(jù)軟件設計中 的流程圖編寫單片機 C 語言程序。結合題目要求模塊化地編寫程序,首先編寫走時程序,然后編寫鬧鈴 鬧鈴 的程序,最后完成倒計時設計,在分模塊化編寫過程中,不斷地根據(jù)仿真現(xiàn)象調(diào)試程序來修復軟件編寫錯誤。 例如調(diào)試液晶的顯示問題,寫指令 write_(0x80)將數(shù)據(jù)指針定位到第一行第一個字處,當寫第二行時需要重新定位數(shù)據(jù)指針,寫指令 write_(0x80+0x40)。 再者,在顯示倒計時時出現(xiàn)走時時間不準確的問題,故在倒計時變量處理的程序中要加桂林電子科技大學專業(yè)工程設計論文 第 12 頁 共 33 頁 上正計時走時時間變量處理, C_sec、 C_min、 C_hour 是倒計時時間變量, sec、 min、 hour 是走時時間變量。程序如下: void C_conv( ) { if(deda=20){C_sec。sec++。deda=0。} if(C_sec0){C_sec=59。 C_min。} if(sec==60){min++。sec=0。} if(C_min0){C_hour。C_min=59。} if(min==60){hour++。min=0。} if(hour==24){hour=0。} if(C_hour0) { C_sec=0。C_min=0。C_hour=0。 for(i=0。i10。i++) { routine_led=~routine_led。 beep=~beep。 delay(80)。 }ok=1。 } 最后在顯示時間問題上,要將數(shù)字顯示到液晶上,采取的方法是將數(shù)字轉化為字符串中的元素然后再送往液晶顯示。程序如下:其中, uchar code lcd_code[ ]=0123456789。 void display_num(unsigned char num) { uchar ge,shi。 ge=num%10。 shi=num/10。 write_date(lcd_code[shi])。 write_date(lcd_code[ge])。 } 硬件調(diào)試 此次的硬件設計較為簡單,主要的調(diào)試部分在于液晶對比度的調(diào)試,期間遇到的問題是液晶的對比度調(diào)節(jié)引腳所接的 10k 電位器封裝不正確,導致 VCC 與 GND 短路,還好及時發(fā)現(xiàn)問題,沒有損壞器件。 桂林電子科技大學專業(yè)工程設計論文 第 13 頁 共 33 頁 調(diào)試結果 經(jīng)過近兩周的軟件調(diào)試和硬件調(diào)試,對比設計要求,完成情況如下: 電路板大小 7cm*12cm; 電路 接通電源后,蜂鳴器連續(xù)發(fā)出 2 次響聲,同時工作指示燈閃動,液晶 第一行 顯示“ Time:00:00:00”,代表時間,第二行顯示“ 00:00 F 00:00 F”,代表兩個鬧鈴,初始為關 。 可 通過 按鍵 設定 走時時間、 兩個鬧鈴響的時間 和倒計時時間。 可顯示兩個鬧鐘的時、分, 并 用 2 個 LED 燈分別指示鬧鐘 鬧鐘 2 的時間。 8 總結 通過本次課程設計,實現(xiàn)了基于單片機的電子時鐘設計,在這過程中,我學到了很多,加深了對單片內(nèi)部模塊的理解,進一步學習了 C 語言的編寫規(guī)則。在設計的前期,我認真地復習了 51 單片機的相關資料,掌握了單片機外部電路的合理設計以及各個引腳的功能。系統(tǒng)的進行電子時鐘的需求分析,合理的設計出了電路原理框圖,根據(jù)原理框圖設計出電路原理圖,然后設計軟件流程圖,根據(jù)流程圖對單片機使用 C 語言編程。在此過程中,我學到了很多在書本上學不到的東西,尤其是在處理故障和解決問題方面的考慮,受益頗多。 本次設計的題目為基于單片機的電子時鐘設計,通過兩周努力,可以順利實現(xiàn)的功能有:在液晶上顯示走時時間;兩個鬧鈴時間和是否開啟以及倒計時時間;并且能通過按鍵實現(xiàn)設置時間的暫停、啟動、調(diào)節(jié)等控制。 在 完成設計后,發(fā)現(xiàn)有還可以改進的地方,例如增加一個省電模式,即在不需要看時間的時候,將液晶顯示關閉,這是設計前考慮不周的地方。 最后,我深刻感受到要做好一個課程設計,就必須做到:在設計程序之前,對所需資料的綜合整理,有效的挑選資料;要明確目標,整理思路;合理設計出系統(tǒng)所必須的流程圖,做好充分的心里準備。這次設計是對我所學單片機一書的綜合考驗,使我能查漏補缺,復習課本知識,加深理解記憶,所以每一步我都用心去做。 桂林電子科技大學專業(yè)工程設計論文 第 14 頁 共 33 頁 謝 辭 這 三周 來感謝指導老師對我的指導和建議,感謝同學的熱心幫助,也感謝學校 為我們提供學習的環(huán)境和條件,在這 三周的設計 過程中老師和同學的幫助至關重要,在關鍵時刻老師的指點和同學之間的研究讓我少走了許多的彎路。 衷心地感謝我的指導老師邱治金老師。本文從選題到完成,從理論上的探討到實際問題的解決,無處不飽含著董老師的心血。邱老師的悉心指導和建議給了我極大的幫助和支持,使我受益匪淺。 桂林電子科技大學專業(yè)工程設計論文 第 15 頁 共 33 頁 參考文獻 [1] 沈紅衛(wèi) .基于單片機的智能系統(tǒng)設計與實現(xiàn) [M].北京:電子工業(yè)出版社 ,2020 [2] 王守中、聶元銘 .51單片機開發(fā)入門與典型實 例(第 2版) [M].北京:人民郵電出版社 ,2020 [3] 白駒珩、雷曉平 .單片計算機及其應用(第 2版) [M].成都:電子科技大學出版社 ,2020 桂林電子科技大學專業(yè)工程設計論文 第 16 頁 共 33 頁 附 錄 元器件清單: 《專業(yè)工程設計》元器件清單示例 學號: 1000820527 姓名: 周志通 空 課題名稱: 基于單片機的簡易鬧鐘設計 空 序 號 名 稱 數(shù) 量 單 價 備 注 1 單片機 89C52及鎖緊底座 1 2 lcd1602 1 3 4腳按鍵(規(guī)格 12*12mm) 6 帶按鍵帽 4 4腳按鍵(規(guī)格 6*6mm) 1 5 發(fā)光二極管(直徑 3mm) 3 藍綠黃各一個 6 發(fā)光二極管(直徑 5mm) 1 紅 7 直插電阻 360歐 4 8 直插電阻 1K 1 9 直插電阻 100歐 2 10 直插電阻 1 11 精密電位器 10k 1 12 晶振 12MHz 1 13 電解電容 10u 1 14 直插電容 22pF 2 15 9012三極管 1 16 蜂鳴器 1 17 排阻 1K*8 1 18 1*40圓孔插座 1 1排 19 雙排插針 1 1排 20 單排插針 1 1排 21 ISP下載口 2*5插座 1 桂林電子科技大學專業(yè)工程設計論文 第 17 頁 共 33 頁 電路原理圖: 桂林電子科技大學專業(yè)工程設計論文 第 18 頁 共 33 頁 PCB 圖: 頂層 底層 桂林電子科技大學專業(yè)工程設計論文 第 19 頁 共 33 頁 程序代碼 include define uchar unsigned char define uint unsigned int define TS1602_DATA P0 sbit routine_led=P1^0。 sbit alm_led1=P1^1。 sbit alm_led2=P1^2。 sbit E=P2^2。 sbit RS=P2^1。 sbit beep=P2^0。 sbit k1=P3^0。 sbit k2=P3^1。 sbit k3=P3^2。 sbit k4=P3^3。 sbit k5=P3^4。 sbit k6=P3^5。 uchar i,j。 uchar hour=0,min=0,sec=0。 uchar hh1=0,mm1=0,hh2=0,mm2=0。 uchar alm_flag1=0,alm_flag2=0。 uchar deda=0。 char C_hour=0,C_min=0,C_sec=0。 uchar ok=0。 uchar string1[]=Time: : :。 uchar string2[]= : F : F。 uchar string3[]= : N : F。 uchar string4[]= : F : N。 uchar string5[]= : N : N。 uchar string6[]=Countdown_time:。 uchar string7[]= : :。 uchar code lcd_code[]=0123456789。 void delay(uint x) { uint i,j。 桂林電子科技大學專業(yè)工程設計論文 第 20 頁 共 33 頁 for(i=0。ix。i++) { for(j=0。j121。j++) {。} } } //************************************************ //函數(shù)功能:寫指令 //************************************************ void write_(uchar ) { RS=0。 TS1602_DATA=。 delay(1)。 E=1。 delay(1)。 E=0。 } //*************************************************** //函數(shù)功能:寫數(shù)據(jù) //**************************************************** void write_date(uchar date) { RS=1。 TS1602_DATA=date。 delay(1)
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1