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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于單片機(jī)的電子時(shí)鐘的設(shè)計(jì)-文庫(kù)吧

2025-05-17 15:59 本頁(yè)面


【正文】 盤電路。 圖 I/O 口與串行 口組成的行列式鍵盤 ② 行列式鍵盤的工作原理: 盡管構(gòu)成行列式鍵盤有多種形式,但它們的工作原理是相同的,現(xiàn)以圖 為例說(shuō) 說(shuō)明:行線 P1. 4~P1. 7 為輸出,列線 P1. 0~P1. 3 為輸入。 CPU 先使第一行( P1. 4)為“ 0”,其余行為“ 1”。 讀輸入口 P1. 0~P1. 3 的狀態(tài),若輸入緩沖器的狀態(tài)全部為“ 1”,則表示所在行無(wú)鍵按下, CPU 使一下行線為“ 0”,其余行線為“ 1”,掃描下一行,這樣在 P1. 4~P1. 7循環(huán)進(jìn)行。若輸入緩沖器不全為“ 1”,說(shuō)明所在行有鍵按下, CPU 停止當(dāng)前行線掃描,轉(zhuǎn)入到列線掃描, 列線 P1. 0 ~P1. 3 為“ 0”狀態(tài)的列表示對(duì)應(yīng)列有鍵按下。這樣,行線與列數(shù)交叉鍵就是掃描到的按鍵。 P1. 0 P1. 1 A B P1. 2 RXD TXD P1. 0 P1. 1 P1. 2 P0. 0 P0. 1 P0. 2 P0. 3 A B C ③ 鍵掃描方式: 程控掃描方式: CPU 從執(zhí)行程序就開始了鍵盤的掃描,等待來(lái)是鍵盤的命令。這種程控掃描方式,適用單任務(wù)多分支結(jié)構(gòu)。 定時(shí)掃描方式:在多任務(wù)應(yīng)用系統(tǒng)中,既要執(zhí)行當(dāng)前任務(wù),又要及時(shí)接受鍵盤命令,定時(shí)掃描方式適應(yīng)這種需要。具體做法是:在程序初始化時(shí),先對(duì)定時(shí) /計(jì)數(shù)器進(jìn)行設(shè)置,使其每 10ms 中斷一次,每次中斷, CPU 將去掃描一次鍵盤,若兩次中斷掃描到有鍵按下(這里考慮了消抖動(dòng)), CPU 將對(duì)鍵作相應(yīng)的處 理。 中斷掃描方式:采用中斷掃描方式必需有外部中斷接口,當(dāng)有鍵按下時(shí),產(chǎn)生中斷請(qǐng)請(qǐng)求, CPU 響應(yīng)中斷,在中斷服務(wù)程序掃描鍵盤,作相應(yīng)處理。這是多任務(wù)應(yīng)用系統(tǒng)常用的一種方式。 復(fù)位操作 復(fù)位操作是單片機(jī)的初始化操作,單片機(jī)在進(jìn)入運(yùn)行前和在運(yùn)行過(guò)程中程序出錯(cuò)或操作失誤使系統(tǒng)不能正常運(yùn)行時(shí),需要進(jìn)行復(fù)位操作。復(fù)位操作后,程序?qū)?0000H開始重新執(zhí)行。除此之外,復(fù)位操作還使單片機(jī)的 ALE 和 PSEN 引腳信號(hào)在復(fù)位期間變?yōu)闊o(wú)效狀態(tài)。單片機(jī)對(duì)復(fù)位信號(hào)的要求:一是復(fù)位信號(hào)為高電平,二是復(fù)位信號(hào)有效持續(xù)時(shí)間不少于 24 個(gè)振蕩脈沖(兩個(gè)機(jī)器周期)以上。在這里特別要提醒的是,在一個(gè)應(yīng)用系統(tǒng)中,如果有幾片單片機(jī)同時(shí)工作,在程序上有連接關(guān)系,系統(tǒng)復(fù)位時(shí),應(yīng)確保每一片單片機(jī)同時(shí)復(fù)位。復(fù)位信號(hào)由單片機(jī)的 RST 引腳輸入,復(fù)位操作有上電自動(dòng)復(fù)位、按鍵復(fù)位和外部脈沖復(fù)位三種方式。隨著單片機(jī)技術(shù)的發(fā)展,目前有些單片機(jī)內(nèi)部帶有看門狗電路,當(dāng)程序進(jìn)行出錯(cuò)或進(jìn)入了無(wú)休止循環(huán)時(shí),看門狗電路將利用軟件強(qiáng)行使系統(tǒng)復(fù)位。 顯示控制模塊 LCD1602 字符顯示器模塊是 2 行 X16 個(gè)字符的 LCD 顯示器。該器件由 32 個(gè)字符點(diǎn)陣塊組成,可以顯示 ASCII 碼表中的所有可顯示字符。 LCD1602 字符顯示器外形和引腳排列、名稱如圖 所示。 圖 LCD1602 1602 采用標(biāo)準(zhǔn)的 16 腳接口,其中 : 第 1 腳: VSS 為 地電源 第 2 腳: VDD 接 5V 正電源 第 3 腳: V0 為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生 “鬼影 ”,使用時(shí)可以通過(guò)一個(gè) 10K 的電位器調(diào)整對(duì)比度 第 4 腳: RS 為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。 第 5 腳: RW 為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng) RS和 RW 共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng) RS 為低電平 RW 為高電平時(shí)可以讀忙信號(hào),當(dāng) RS 為高電平 RW 為低電平時(shí)可以寫入數(shù)據(jù)。 第 6 腳: E 端為使能端,當(dāng) E 端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。 第 7~ 14 腳: D0~ D7 為 8 位雙向數(shù)據(jù)線。 第 15~ 16 腳:空腳 1602 液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器( CGROM)已經(jīng)存儲(chǔ)了 160 個(gè)不同的點(diǎn)陣字符圖形,如表 1 所示,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼,比如大寫的英文字母 “A”的代碼是01000001B( 41H),顯示時(shí)模塊把地址 41H 中的點(diǎn)陣字符圖形顯示出來(lái),我們就能看到字母 “A” 表 1 1602 液晶模塊內(nèi)部的 控制器共有 11 條控制指令 , 如表 2 所示 表 2 序號(hào) 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 1 清顯示 0 0 0 0 0 0 0 0 0 1 2 光標(biāo)返回 0 0 0 0 0 0 0 0 1 * 3 置輸入模式 0 0 0 0 0 0 0 1 I/D S 4 顯示開 /關(guān)控制 0 0 0 0 0 0 1 D C B 5 光標(biāo)或字符移位 0 0 0 0 0 1 S/C R/L * * 6 置功能 0 0 0 0 1 DL N F * * 7 置字符發(fā)生存貯器地址 0 0 0 1 字符發(fā)生存貯器地址 8 置數(shù)據(jù)存貯器地址 0 0 1 顯示數(shù)據(jù)存貯器地址 9 讀忙標(biāo)志或地址 0 1 BF 計(jì)數(shù)器地址 10 寫數(shù)字到 CGRAM 或 DDRAM) 1 0 要寫的數(shù)據(jù)內(nèi)容 11 從 CGRAM 或 DDRAM 讀數(shù) 1 1 讀出的數(shù)據(jù)內(nèi)容 它的讀寫操作、屏幕和光標(biāo)的操作都是通過(guò)指令編程來(lái)實(shí)現(xiàn)的。(說(shuō)明: 1 為高電平、 0 為低電平) 指令 1:清顯示,指令碼 01H,光標(biāo)復(fù)位到地址 00H 位置 指令 2:光標(biāo)復(fù)位,光標(biāo)返回到地址 00H 指令 3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無(wú)效 指令 4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無(wú)光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍 指令 5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低 電平時(shí)移動(dòng)光標(biāo) 指令 6:功能設(shè)置命令 DL:高電平時(shí)為 4 位總線,低電平時(shí)為 8 位總線 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示 5x7 的點(diǎn)陣字符,高電平時(shí)顯示 5x10 的點(diǎn)陣字符 (有些模塊是 DL:高電平時(shí)為 8 位總線,低電平時(shí)為 4 位總線) 指令 7:字符發(fā)生器 RAM 地址設(shè)置 指令 8: DDRAM 地址設(shè)置 指令 9:讀忙信號(hào)和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。 指令 10:寫數(shù)據(jù) 指令 11:讀數(shù)據(jù) 液晶顯示模塊是一個(gè)慢顯示器件,所 以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,表 3 是 DM162 的內(nèi)部顯示地址 . 表 3 顯示字符 1 2 3 4 5 6 7 8 9 10 11 12 ... 第一行地址 00H 01H 02H 03H 04H 05H 06H 07H 08H 09H 0AH 0BH ... 第二行地址 40H 41H 42H 43H 44H 45H 46H 47H 48H 49H 4AH 4BH ... 單片機(jī)與 LCD1602 典型連接 本單片機(jī)顯示模塊采用 LCD1602A1 型液晶顯示器,用單片機(jī)的 P2 口作為 1602的數(shù)據(jù)輸入端。同時(shí)讓 1602 的 E、 RW、 RS 針腳分別與單片機(jī)的 、 、 口相接。如圖 所示 圖 3 硬件電路設(shè)計(jì) 電子時(shí)鐘的電路圖 如圖 所示為 電路 圖。其工作原理為:接通電源后, 液晶顯示 00:00:00,按下 K1,可以調(diào)整秒,按下 K2 數(shù)值增一,按下 K3 數(shù)值減一,再次按下 K1,則可以調(diào)整分,再按下 K1,則可以調(diào)整時(shí),再按次就可確定時(shí)間,開始工作。 K4 可以復(fù)位使液晶顯示 00:00:00。每按一次,蜂鳴器都 給出聲響提示 。 圖 電子時(shí)鐘電路原理圖 單元電路設(shè)計(jì) 鍵盤控制模塊 根據(jù)題目要求及另加的一些功能要求,總共只需要 4 個(gè) 按鍵 (如圖 ),故選用獨(dú)立按鍵模式。 這 4 個(gè)鍵分別為,調(diào)時(shí)選擇鍵 k加值鍵 k減值鍵 k單片機(jī)復(fù)位鍵 k4。下面具體介紹一下每個(gè)鍵的功能。 K1:時(shí)、分、秒的調(diào)時(shí)選擇鍵。 K2:加值鍵,每按一次所選的時(shí)間值加 1; K3:減值鍵,每按一次所選的時(shí)間值減 1; K4:?jiǎn)纹瑱C(jī)手動(dòng)復(fù)位鍵; 圖 蜂鳴器電路模塊 蜂鳴器一腳與單片機(jī)的 相連,一腳接地。如圖 所示 圖 復(fù)位電路模塊 復(fù)位電路采用手動(dòng)復(fù) 位和上電自動(dòng)復(fù)位組合。如圖 所示 圖 當(dāng) MCS5l 系列單片機(jī)的復(fù)位引腳 RST(全稱 RESET)出現(xiàn) 2 個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就執(zhí)行復(fù)位操作。如果 RST 持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。根據(jù)應(yīng)用的要求,復(fù)位操作通常有兩種基本形式:上電復(fù)位和上電或開關(guān)復(fù)位。上電復(fù)位要求接通電源后,自動(dòng)實(shí)現(xiàn)復(fù)位操作。上電后,保持 RST 一段高電平時(shí)間 晶振電路模塊 本設(shè)計(jì)采用 12Mhz 的晶振, 30pF 的電容。如圖 所示 圖 外部中斷和內(nèi)部中斷并存,單片機(jī)硬件復(fù)位端,只要持續(xù) 4 個(gè) 機(jī)器周期的高電平即可實(shí)現(xiàn)復(fù)位,硬件復(fù)位后的各狀態(tài)可知寄存器以及存儲(chǔ)器的值都恢復(fù)到了初始值,因?yàn)楸驹O(shè)計(jì)中功能中有倒計(jì)時(shí)時(shí)間的記憶功能,所以不能對(duì)單片機(jī)進(jìn)行硬件復(fù)位,只能用軟件復(fù)位,軟件復(fù)位實(shí)際上就是當(dāng)程序執(zhí)行完之后,將程序通過(guò)一條跳轉(zhuǎn)指令讓它完成復(fù)位。 4 軟件設(shè)計(jì) 系統(tǒng)主程序設(shè)計(jì) 初始化程序:設(shè)置單片機(jī)的定時(shí)器 0 和 1 工作在模式 1( 16 位定時(shí)器),其中定時(shí)器 0 產(chǎn)生 24 小時(shí)時(shí)鐘模式的信號(hào),定時(shí)器 1 產(chǎn)生 60 秒時(shí)鐘模式的信號(hào);對(duì)定時(shí)器 0和 1 裝初值,開啟總中斷和定時(shí)器中斷 , LCD1602 的初始化及其他變量的聲明和賦初值。該部分程序, LCD1602 的初始化為重點(diǎn)。寫該部分程序應(yīng)該全面讀懂它的使用說(shuō)明。 按鍵掃描程序:對(duì) K1 到 K4 四個(gè)按鍵進(jìn)行掃描,對(duì)按下不同的鍵讓單片機(jī)做出不同的響應(yīng)。因?yàn)槊總€(gè)按鍵都有不同的功能,所以程序中需要使用大量的 if 語(yǔ)句層層嵌套,這是本部分程序的兩個(gè)難點(diǎn)之一。另外一個(gè)難點(diǎn)就是對(duì)按鍵去抖動(dòng)延時(shí)的設(shè)定,如果延時(shí)值太大了,則按鍵不靈敏;如果延時(shí)值太小,則出現(xiàn)重復(fù)操作的現(xiàn)象,解決這個(gè)問(wèn)題需要在仿真時(shí)不斷的調(diào)試,以取個(gè)適中延時(shí)值。 定時(shí)中斷程序:完成對(duì)時(shí)鐘的在 LCD1602 顯示前的數(shù)據(jù)處理,產(chǎn)生秒,分。時(shí)。主要難點(diǎn)為秒分時(shí)之間的進(jìn)位關(guān)系。 LCD 顯示程序 :LCD 顯示程序即包含在定時(shí)中斷程序里邊,也與前邊的 LCD 初始化程序有關(guān)。主要難點(diǎn)在將時(shí)鐘的變化顯示在 LCD1602 的正確位置,不要出現(xiàn)亂碼或者不符合時(shí)鐘的顯示格式。 開始 初始化 有按鍵按下? 是 否 寫入命令 顯示 延時(shí) 結(jié)束 程序的運(yùn)行步驟如圖 所示 開始 初始化函數(shù) 有鍵按下? 是 K1 鍵 ? b 的次數(shù) 是 否 K4? K4? 否 是 時(shí)鐘復(fù)位 無(wú)效 是 否 選定秒位 選定分位 返回時(shí)鐘工作 選定時(shí)鐘 b=1 b=2 b=3 b=4 有鍵按下 K2? K3?
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1