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

正文內(nèi)容

基于單片機的數(shù)字鐘的設(shè)計--畢業(yè)設(shè)計(論文)-文庫吧

2025-05-18 02:14 本頁面


【正文】 。 第二章 方案論證與比較 數(shù)字時鐘方案 數(shù)字時鐘是本設(shè)計的最主要的部分。根據(jù)需要,可利用兩種方案實現(xiàn)。 方案一:本方案采用 Dallas 公司的專用時鐘芯片 DS12887A。該芯片內(nèi)部采用石英晶體振蕩器,其芯片精度不大于 10ms/年,且具有完備的時鐘鬧鐘功能,因此,可直接對其以用于顯示或設(shè)置,使得軟件編程相對簡單。為保證時鐘在電網(wǎng)電壓不足或突然掉電等突發(fā)情 況下仍能正常工作,芯片內(nèi)部包含鋰電池。當電網(wǎng)電壓不足或突然掉電時,系統(tǒng)自動轉(zhuǎn)換到內(nèi)部鋰電池供電系統(tǒng)。而且即使系統(tǒng)不上電,程序不執(zhí)行時,鋰電池也能保證芯片的正常運行,以備隨時提供正確的時間。 方案二:本方案完全用軟件實現(xiàn)數(shù)字時鐘。原理為:在單片機內(nèi)部存儲器設(shè)三個字節(jié)分別存放時鐘的時、分、秒信息。利用定時器與軟件結(jié)合實現(xiàn) 1 秒定時中斷,每產(chǎn)生一次中斷,存儲器內(nèi)相應(yīng)的秒值加 1;若秒值達到 60,則將其清零,并將相應(yīng)的分字節(jié)值加 1;若分值達到 60,則清零分字節(jié),并將時字節(jié)值加 1;若時值達到 24,則將十字節(jié)清零。該方案具 有硬件電路簡單的特點。但由于每次執(zhí)行程序時,定時器都要重新賦初值,所以該時鐘精度不高。而且,由于是軟件實現(xiàn),當單片機不上電,程序不執(zhí)行時,時鐘將不工作。 基于硬件電路的考慮,本設(shè)計采用方案二完成數(shù)字時鐘的功能。 數(shù)碼管顯示方案 方案一:靜態(tài)顯示。所謂靜態(tài)顯示,就是當顯示器顯示某一字符時,相應(yīng)的發(fā)光二極管恒定的導通或截止。該方式每一位都需要一個 8 位輸出口控制。靜態(tài)顯示時較小的電流能獲得較高的亮度,且字符不閃爍。但當所顯示的位數(shù)較多時,靜態(tài)顯示所需的 I/O 口太多,造成了資源的浪費。 方案二:動態(tài)顯示。 所謂動態(tài)顯示就是一位一位的輪流點亮各個位,對于顯示器的每一位來說,每隔一段時間點亮一次。利用人的視覺暫留功能可以看到整個顯示,但必須保證掃描速度足夠快,字符才不閃爍。顯示器的亮度既與導通電流有關(guān),也于點亮時間與間隔時間的比例有關(guān)。調(diào)整參數(shù)可以實現(xiàn)較高穩(wěn)定度的顯示。動態(tài)顯示節(jié)省了 I/O口,降低了能耗。 從節(jié)省 I/O 口和降低能耗出發(fā),本設(shè)計采用方案二。 使用共陰極七段數(shù)碼顯示管。 使用 74SL48 作為 BCD7 段數(shù)碼管顯示譯碼器 方案一 :蜂鳴器 ,一個 交流蜂鳴器及其驅(qū)動電路,能夠演奏音樂。 方案二 : 鬧鈴芯片 因為單片機有定時器所以使用蜂鳴器就可以了 ,不必 使用鬧鈴芯片了,很浪費單片機功能 。 所以選擇方案一蜂鳴器 . 1驅(qū)動選擇 方案一 : PWM 輸出口直接驅(qū)動蜂鳴器 。 PWM 輸出口直接驅(qū)動蜂鳴器方式 。 由于 PWM 只控制固定頻率的蜂鳴器,所以可以在程序的系統(tǒng)初始化時就對 PWM 的輸出波形進行設(shè)置。 首先根據(jù) PWM 輸出的周期寬度是 10 位數(shù)據(jù)來選擇 PWM 時鐘。系統(tǒng)使用 4MHz 的晶振作為主振蕩器,一個 tosc 的時間就是 ,若是將 PWM 的時鐘設(shè)置為 tosc 的話, 則蜂 鳴器要求的波形周期 500μs 的計數(shù)值為 500μs/= ( 2021) 10=( 7D0) 16, 7D0H 為 11 位的數(shù)據(jù),而 SH69P43 的 PWM 輸出周期寬度只是 10 位數(shù)據(jù),所以選擇 PWM 的時鐘為 tosc 是不能實現(xiàn)蜂鳴器所要的驅(qū)動波形的。 這里我們將 PWM 的時鐘設(shè)置為 4tosc,這樣一個 PWM 的時鐘周期就是 1μs 了,由此可以算出 500μs 對應(yīng)的計數(shù)值為 500μs/1μs= ( 500) 10=( 1F4) 16,即分別在周期寄存器的高 2 位、中 4 位和低 4 位三個寄存器中填入 F 和 4,就完成了對輸出周期的設(shè)置。再來設(shè)置占空比寄存器,在 PWM 輸出中占空比的實現(xiàn)是 通過設(shè)定一個周期內(nèi)電平的寬度來實現(xiàn)的。當輸出模式選擇為普通模式時,占空比寄存器是用來設(shè)置高電平的寬度。 250μs 的寬度計數(shù)值為 250μs/1μs= ( 250) 10=( 0FA) 16。只需要在占空比寄存器的高 2 位、中 4 位和低 4 位中分別填入 0、 F 和 A 就可以完成對占空比的設(shè)置了,設(shè)置占空比為 1/2duty。 以后只需要打開 PWM 輸出, PWM 輸出口自然就能輸出頻率為 2021Hz、占空比為 1/2duty 的方波。 方案二 : I/O 口定時翻轉(zhuǎn)電平驅(qū)動蜂鳴器 。 使用 I/O 口定時翻轉(zhuǎn)電平驅(qū)動蜂鳴器方式的設(shè)置比較簡單,只需要對波形分析一下。由于驅(qū)動的信號剛好為周期 500μs ,占空比為 1/2duty 的方波,只需要每 250μs 進行一次電平翻轉(zhuǎn),就可以得到驅(qū)動蜂鳴器的方波信號。在程序上,可以使用 TIMER0 來定時,將 TIMER0 的預(yù)分頻設(shè)置為 /1,選擇 TIMER0 的始終為系統(tǒng)時鐘 (主振蕩器時鐘 /4),在 TIMER0 的載入 /計數(shù)寄存器的高 4 位和低 4 位分別寫入 00H 和 06H,就能將 TIMER0 的中斷設(shè)置 為 250μs 。當需要 I/O 口驅(qū)動的蜂鳴器鳴叫時,只需要在進入 TIMER0 中斷的時候?qū)υ? I/O 口的電平進行翻轉(zhuǎn)一次,直到蜂鳴器不需要鳴叫的時候,將 I/O 口的電平設(shè)置為低電平即可。不鳴叫時將 I/O 口的輸出電平設(shè)置為低電平是為了防止漏電。 [ 因為此次設(shè)計是基于 51 單片機驅(qū)動 I/O 口 的,所以選擇方案二 I/O 口定時翻轉(zhuǎn)電平驅(qū)動蜂鳴器 。 方案一 : 有源蜂鳴器 即 通電就可以發(fā)聲 。 方案二 : 無源蜂鳴器 即 要有驅(qū)動的音頻電流才能發(fā)聲。 因為此次設(shè)計是基于 51 單片機驅(qū)動的, 所以選擇方案二無源蜂鳴器。 方案 采用手動按鍵調(diào)時 。 用四個按鍵, 一個是進入調(diào)時,一個是沒按一次秒加一,六十以后變零,一個是沒按一次分加一,六十以后變零,一個是沒按一次時加一,二十四以后變零。 第三章 系統(tǒng)設(shè)計 總體設(shè)計 系統(tǒng)說明 本次設(shè)計時鐘電路,使用了 AT89C51單片機芯片控制電路,單片機控制電路簡單且省去了很多復雜的線路,使得電路簡明易懂,使用鍵盤鍵上的按鍵來調(diào)整時鐘的時、分、秒,用一揚聲器來進行定時提醒,同時使用 C 語言程序來控制整個時鐘顯示,使得編程變得更容易,這樣通 過四個模塊:鍵盤、芯片、揚聲器、顯示屏即可滿足設(shè)計要求 模塊設(shè)計 電源部分 單片機 從外部引入 VCC 5V 的直流電,為單片機、復位電路提供電源 , GND 接地 。 復位電路 圖 31 復位電路 如圖 31 所示,復位電路主要由型號為 1N4148 的二極管,型號為 10UF/16V 的電解電容,型 號為 104 的瓷片電容, 10K的電阻以及按鍵 S1 構(gòu)成, S1 接芯片的相應(yīng)引腳 RST,當開關(guān)按下時引腳 RST 為高電平 1,斷開時引腳為低電平 0。 程序下載接口 圖 32 程序下載電路 如圖 32所示,由 AT89S ISP 構(gòu)成的 兩排十針下載口,板圖上有一個小方框,為 1號引角;下載線的凸口為正方向,凸口的右側(cè)邊的第一個插孔為 1號引角。 位選部分 選電路為 三極管的集電極接數(shù)碼管的公共端,當 P2口對應(yīng)的引腳輸出高電平時三極管導通,對應(yīng)的數(shù)碼管顯示數(shù)據(jù)。這樣,在同一時刻, 6 位 LED 中只有選通的那 1 位顯示出字符,而其他 5位則是熄滅的。同樣,在下一時刻,只讓下一位的位選線處于選通狀態(tài),而其他個位的位選線處于關(guān)閉狀態(tài),在段碼線上輸出將要顯示字符的段碼,則同一時刻,只有選通位顯示出相應(yīng)的字符,而其他各位則 是熄滅的。如此循環(huán)下去,就可以使各位顯示出將要顯示的字符。雖然這些字符是在不同時刻出現(xiàn)的,而在同一時刻,只有一位顯示,其他各位熄滅,但由于 LED 的余輝和人眼的視覺暫留作用,只要每位顯示間隔足夠短,則可以造成多位同時亮的假象,達到同時顯示的效果。 數(shù)碼管的連接電路 圖 36 為數(shù)碼管的引腳圖,每位的段碼線( a,b,c,d,e,f,g,)分別與 1 個 7 位的鎖存器輸出相連,由 AT89S51控制組合 0- 9十個數(shù)據(jù),如令其顯示 1 則 b,c 引腳(即 2, 3 引腳)送高電平,7 位 LED 顯示的數(shù)據(jù)由顯示緩沖區(qū) 30H~36H 單元中的數(shù)據(jù)決定 ,動 態(tài)顯示時,每位顯示持續(xù)時間為 1ms, 1ms 延時由軟件實現(xiàn), 7 位顯示約耗時 8ms。 此時數(shù)碼管顯示 1。由于各位的段碼線并聯(lián), 8 位 I/O 口輸出段碼對各個顯示位來說都是相同的。 舉例如果使用 段 共陰極數(shù)碼管,要顯示數(shù)字“ 4”時應(yīng)該讓 b=c=f=g=1, a=d=e=0, 如圖 33 圖 33數(shù)碼顯示 圖 34 BCD7段數(shù)碼管顯示譯碼器 使用 74SL48作為 BCD7段數(shù)碼管顯示譯碼器 。 譯碼是編碼的你過程。編碼是將含有特定意義的信息編成二進制代碼。譯碼是將表示特定意義信息的二進制代碼翻譯出來。實現(xiàn)譯碼 功能的電路稱為譯碼器。 四位 BCD譯碼器可以將 BCD編碼轉(zhuǎn)化成十進制數(shù)碼,并通過 7段數(shù)碼管顯示出來。由于輸入端有四個,共有 24=16種不同的組合,每一種組合可對應(yīng)一個數(shù)碼,而十進制數(shù)碼共有10個數(shù)碼,因此有 6個無效狀態(tài),對應(yīng) 7段數(shù)碼管不亮。 7段數(shù)碼管內(nèi)部有 7個發(fā)光二極管,利用這 7個發(fā)光二極管的亮暗組合來顯示數(shù)碼。 7段數(shù)碼管內(nèi)部的 7個發(fā)光二極管有共陰和共陽兩種接法,把所有二極管的陽極連到一起的稱為共陽極接法,此時譯碼器的輸出應(yīng)該是低電平有效;把所有二極管的陰極連到一起的稱為共陰極接法,此時譯碼器的輸出應(yīng)該是高電平有效。 舉例說明,如果要顯示數(shù)碼“ 0”則共陰極 7 段數(shù)碼管的輸出 led6(a)、 led5(b)、 led4(c)、led3(d)、 led2(e)、 led1(f)、 led0(g)為 1111110,輸入端 D D D D0 為 0000。 用 89c51 的 p1 口的 p0、 p p p3 連接 74ls48 驅(qū)動器的 A、 B、 C、 D。 AT89S51 是美國 ATMEL 公司生產(chǎn)的低功耗,高性能 CMOS 8 位單片機,片內(nèi)含 4K bytes的可系統(tǒng)編程的 Flash 只讀程序存儲器,器件采用 ATMEL 公司的高密度 ,非易失性存儲技術(shù)生產(chǎn),兼容標準 8051 指令系統(tǒng)及引腳。 AT89S51 提供以下標準功能: 4K 字節(jié) Flash 閃速存儲器, 128 字節(jié)內(nèi)部 RAM, 32I/O 口線,看門狗( WDT),兩個數(shù)據(jù)指針,兩個 16 位定時 /計數(shù)器,一個 5 向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。 AT89S51 有 40 引腳,雙列直插( DIP)封裝,所用引腳功能如下: 1. VCC —— 運行時加+ 5V 2. GND —— 接地 3. XTAL1 —— 振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端 4. XTAL2 —— 振蕩器反相放大器 的輸出端 5. RST —— 復位輸入,高電平有效,在晶振工作時,在 RST 引腳上作用 2 個機器周期以上的高電平,將使單片機復位。 WDT 溢出將使該引腳輸出高電平,設(shè)置SFT AUXR 的 DISRTO 位(地址 8EH)可打開或關(guān)閉該功能。 DISRTO 位缺省為 RESET輸出高電平打開狀態(tài)。 6. EA/VPP —— 片外程序存儲器訪問允許信號。欲使 CPU 僅訪問外部程序存儲器(地址為 0000HFFFFH), EA 端必須保持低電平(接地),如果 EA 端為高電平(接 Vcc端), CPU 則執(zhí)行內(nèi)部程序存儲器中的指令。 7. P1 口 ,P2 口 —— P1, P2 是一組帶內(nèi)部上拉電阻的 8 位雙向 I/O 口。運行時通過 P1口控制驅(qū)動電路的工作,將數(shù)據(jù)送到數(shù)碼管,顯示相應(yīng)的段碼,為了達到減少功耗或滿足端口對最大電流的限制,應(yīng)加上一限流電阻。 —— 口控制數(shù)碼管的位選,使六個數(shù)碼管輪流顯示數(shù)據(jù),等于 1 時位選三極管導通,等于 0 時位選三極管截止。 8. 無自鎖開關(guān) —— ( S2- )開關(guān)接相應(yīng)引腳 ,當開關(guān)按下時,相應(yīng)引腳為低電平 0,斷開時引腳為高電平 1。 蜂鳴器驅(qū)動電路 圖 35 蜂鳴器電路 如圖 35由于蜂鳴器的工作電 流比較大,以致于單片機的 I/O 口是無法直接驅(qū)動的,所以要利用放大電路來驅(qū)動,使用三極管來放大電流就可以了。 利用 I/O 定時翻轉(zhuǎn)電平來產(chǎn)生驅(qū)動波形,利用定時器來做定時,通過定時翻轉(zhuǎn)電平產(chǎn)生符合蜂鳴器要求的頻率的波形,這個波形
點擊復制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1