微控制器課程設計報告 定時鬧鐘 含程式

2023-02-10 07:24:05 字數 4179 閱讀 6517

大學微控制器課程設計報告

定時鬧鐘

摘要本設計是用微控制器原理及其相關硬體的運用實現的定時鬧鐘。數字電子鐘設計與製作可採用數位電路實現,也可以採用微控制器來完成。若用數位電路完成,所設計的電路相當複雜,大概需要十幾片數字整合塊,其功能也主要依賴於數位電路的各功能模組的組合來實現,焊接的過程比較複雜,成本也非常高。

若用微控制器來設計製作完成,由於其功能的實現主要通過軟體程式設計來完成,那麼就降低了硬體電路的複雜性,而且其成本也有所降低,所以在該設計與製作中採用微控制器at89c51,它是低功耗、高效能的cmos型8位微控制器。片內帶有4kb的flash儲存器,且允許在系統內改寫或用程式設計器程式設計。另外, at89c51的指令系統和引腳與8051完全相容,片內有128b 的ram、32條i/o口線、2個16位定時計數器、5個中斷源、乙個全雙工序列口等。

顯示部分採用六位一體的共陽極數碼管,運用同相三態雙向匯流排收發器74ls245作為輸出驅動顯示部件的元件。

在編寫程式的過程採用了定時程式和時間調整程式對稱的編寫方法。並且在時間的調整或設定過程中本設計採用了長按進行調時或調分的選擇,短按是進行在選擇後進行加1,每短按一次,該單位加1.調整完畢以後再次長按原設定鍵即可跳出設定迴圈,顯示部分――共陽極數碼管顯示正常走時的時間。

但是該程式在硬體的**過程中有點瑕疵。在**開始時警示燈直接亮,必須通過鬧鐘定時鍵k2的鬧鐘設定以後時間才可以正常走時。之後可以進行時間的調整或鬧鐘的重新調整。

目錄1 概述 3

1.1 設計任務 3

1.2設計要求 3

1.3設計意義 3

2 系統總體方案與硬體選擇設計 4

2.1系統總體方案 4

2.2 硬體選擇設計 4

3 軟體設計 9

3.1程式流程圖 9

3.2程式模組 10

4 proteus軟體** 17

5 課程設計體會 19

參考文獻 19

附1:源程式** 21

附2:系統原理圖 33

1概述在熟練掌握微控制器及其**系統的使用方法的基礎上,綜合應用微控制器原理,微機原理,微機接**術等專業知識,設計採用乙個at89c51微控制器控制的定時鬧鐘。

1) 能夠顯示時時-分分-秒秒。

2) 設定定時時間、修改定時時間。

3) 定時時間到能發出報警聲或者啟動繼電器,從而控制電器的啟停。

在此設計中該定時鬧鐘的報警啟動繼電器的動作用led燈的變化來顯示。

通過利用mcs-51微控制器製作定時鬧鐘,可以更加深刻的理解微控制器在自動化儀表中的作用以及掌握微控制器的程式設計方法;從而進一步熟悉和掌握微控制器的內部結構和工作原理,了解微控制器應用系統設計的基本方法和步驟;通過設計定時數字鬧鐘數字輸出輸入及掃瞄顯示模擬系統,熟練掌握微控制器**軟體proteus的使用方法。

2系統總體方案與硬體選擇設計

定時鬧鐘的系統可分為四個環節,分別是微控制器控制系統、時間顯示模組、控制鍵模組和鬧鈴模組。通過若干模組的協調工作就可以完成相應的時間調整和定時鬧鐘的相應功能以及顯示功能。模組的相互連線如下圖(圖1)所示:

圖11 微控制器控制系統與相關附件

可程式設計可擦除唯讀儲存器at89c51 ( 如圖2 )

圖2(1) 簡介該元件由cpu、振盪器與時序電路、4kb的rom、256b的ram、兩個16位的定時器/計數器t0和t1、4個8位的i/o埠(p0、p1、p2、p3)、序列口等組成。其中振盪器時序電路與外時鐘組成了定時控制部件。

(2) cpu的主要功能是產生各種控制訊號,控制儲存器、輸入/輸出介面的資料傳送、資料的算術運算、邏輯運算以及位操作處理等。它是微控制器的頭腦。

(3) cpu從功能上可以分為運算器和控制器兩部分。其中運算器由算術邏輯運算部件alu、累加器、暫存器、程式狀態字暫存器、bcd碼運算調整電路等組成。為了提高資料處理和位操作能力,片內增加了乙個通用暫存器b和一些專用暫存器,還增加了位處理邏輯電路的功能。

主要完成對資料進行算術四則運算和邏輯運算、移位操作、位操作等。

控制器由程式計數器、指令暫存器、指令解碼器、定時控制與條件轉移邏輯電路等組成。主要功能是對來自儲存器中的指令進行解碼,通過定時控制電路,在規定的時刻發出各種操作所需的全部內部和外部控制訊號,協調各功能元件的工作,完成指令所規定的功能。而控制器中的定時控制部件與時序是在規定時刻發出各種操作所需的全部內部和外部控制訊號,使各功能元件能夠協調工作,完成指令所規定動作的功能。

主要任務是產生乙個工作時序,其工作需要時鐘電路提供乙個工作頻率。

(4) 管腳說明

vcc:供電電壓

gnd:接地

p0口:p0口為乙個8位漏級開路雙向i/o口,每腳可吸收8ttl門電流。當p1口的管腳第一次寫1時,被定義為高祖輸入.

p0能夠用於外部程式資料儲存器,它可以被定義為資料/位址的第八位.在flash程式設計時,p0口作為原碼輸入口,當flash進行校驗時,p0輸出原碼,此時p0外部必須被拉高。

p1口:p1口是乙個內部提供上拉電阻的8位雙向i/o口,p1口緩衝器能接受輸出4ttl門電流。p1口管腳寫入1後,被內部上拉為高,可用做輸入,p1口被外部下拉為低電平時,將輸出電流,這是由於內部上拉的緣故.

在flash程式設計和校驗時,p1口作為第八位位址接收。

p2口:p2口為乙個內部上拉電阻的8位雙向i/o口,p2緩衝器可接收輸出4個ttl門電流,當p2口被寫1時,其管腳被內部上拉電阻拉高,且作為輸入。並因此作為輸入時,p2口的管腳被外部拉低,將輸出電流.

這是由於內部上拉的緣故。p2口當用於外部程式儲存器或16位位址外部資料儲存器進行訪問時,p2口作為位址的高8位。在給出位址1時,它利用內部上拉優勢,當對外部八位位址資料儲存器進行讀寫時,p2口輸出其特殊功能暫存器的內容。

p2口在flash程式設計和校驗時接收高八位位址訊號和控制訊號。

p3口:p3口管腳是8個帶內部上拉電阻的雙向i/o口,可接收輸出4個ttl門電流,當p3口寫入1後,它們被內部上拉為高電平,並用作輸入.作為輸入,由於外部下拉為低電平,p3口將輸出電流(ill)這是由於上拉的緣故。

2 系統時鐘電路如圖3

圖3mcs-51內部有乙個用於構成振盪器的高增益反相放大器,此放大器的輸入和輸出端分別是引腳xtal1和 xtal2,在xtal1和 xtal2上外接時鐘源即可構成時鐘電路。微控制器的生產工藝不同,時鐘的產生方式也不同,有內部和外部兩種時鐘產生方式。根據該設計的需要,採取了內部方式。

(1) hmos型mcs-51外部時鐘源的接法。內部時鐘產生方式:xtal1和 xtal2兩端跨接晶體或陶瓷振諧器,與內部反相器構成穩定的自激振盪器。

其發出的時鐘脈衝直接送入片內定時控制部件。c1、c2對頻率有微調作用。

(2) chmos型的外部時鐘源的接法與hmos型的微控制器內部時鐘電路不同:

(2.1)內部時鐘訊號取自反相放大器的輸入端。

2.2)振盪器的工作可程式設計控制。即當相應的部件進入掉電保護,系統進入低功耗執行。

因內部時鐘發生器的訊號取自放大器的輸入端,故採用外部時鐘源時,接線方法與hmos型的微控制器有所不同。

3 同相三態雙向匯流排收發器74ls245 如圖4

圖4 用來驅動led或其他的裝置,可雙向傳輸資料.還具有三態功能,既可以輸出,也可以輸入資料。當8051微控制器的p0口匯流排負載達到或超過p0口負載能力時,必須接入74ls245等匯流排驅動器。

(2)控制鍵模組(如圖5)

圖5k1鍵為時間設定和正常走時的設定鍵。第一次長按該鍵即可進行分鐘的設定狀態,調整的部分為閃爍狀態,之後短按該鍵每按下一次即可在要設定的分鐘上加1。設定完成以後再次長按該鍵即可進入小時的設定,分鐘的顯示位置不再閃爍。

而小時的顯示位置為閃爍狀態,之後短按該鍵每按下一次即可在要設定的小時上加1。設定完成之後再次長按該鍵(顯示部分無閃爍狀態),即可顯示設定時間後的正常走時。

k2鍵為鬧鐘設定鍵和正常走時的調整鍵。調整的過程與時間的設定過程類似。第一次長按該鍵即可進行分鐘的調整狀態,調整的部分為閃爍狀態,之後短按該鍵每按下一次即可在要設定的分鐘上加1。

設定完成以後再次長按該鍵即可進入小時的設定,分鐘的顯示位置不再閃爍。而小時的顯示位置為閃爍狀態,之後短按該鍵每按下一次即可在要調整的小時上加1。調整完成以後長按該鍵(顯示部分無閃爍狀態),即可顯示正常走時。

須注意:該定時鬧鐘在定時之後才可以正常走時。

( 3 )時間顯示模組顯示部分(如圖6)

圖6 顯示部分採用六位一體共陽數碼管,自左到右分別顯示時時-分分-秒秒。

在進行時間的鬧鐘設定和時間的調整過程中相應的設定或調整的單元部分為閃爍狀態。

(4)鬧鈴模組(如圖7)

圖7警示燈,定時時間輸出低電平,led燈兩端存在電位差即燈亮。

微控制器課程設計報告定時鬧鐘設計

燕山大學 微控制器課程設計報告 定時鬧鐘設計 姓名學號 專業班級 指導老師 所在學院 電氣工程與自動化學院 2010年12月15 日 摘要本設計是定時鬧鐘的設計,由微控制器at89c51晶元和led數碼管為核心,輔以必要的電路,構成的乙個微控制器電子定時鬧鐘。電子鐘設計可採用數位電路實現,也可以採用...

微控制器課程設計報告

中南大學 嵌入式微控制器應用系統 綜合設計 題目基於實驗室小型步進電機 控制系統設計 學生姓名張贇楓 學號 0901130425 專業班級自動化1304 日期 2015年12月29日 一 課程設計任務書 題目 基於實驗室小型步進電機控制系統設計 設計要求 1 使用組合語言或c語言 2 程式功能要求 ...

微控制器課程設計報告

石家莊經濟學院資訊工程學院 電子資訊工程專業 微控制器課程設計報告 題目a d轉換 姓名張偉健 學號 408109060205班級 4081090602指導教師田悅新 2011年 6 月 29 日 要求 1 指導教師按照課程設計大綱要求完成學生課程設計指導工作。2 課程設計任務書由指導教師照大綱要求...