




已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
天津大學高職專業(yè)畢業(yè)論文 設天津大學高職專業(yè)畢業(yè)論文 設 計 計 應用單片機電子鬧鐘設計應用單片機電子鬧鐘設計 學 生 姓 名 孫艷磊 學 院 精儀學院 專 業(yè) 應用電子技術 班 級 01 學 號 4014202040 指 導 教 師 審 閱 教 師 完 成 日 期 摘 要 51 電子鬧鐘是集電子技術 數字顯示技術為一體的高產品 具有按時鬧鈴 使用 方便等優(yōu)點 本論文從 51 電子鬧鐘系統(tǒng)的功能 硬件電路設計 軟件設計和產品介紹 四部分分別論述這一系統(tǒng) 本系統(tǒng) 51 電子鬧鐘硬件部分結構簡單 成本低 具有比較 好的市場前景 現代的快節(jié)奏生活給人們的精神上帶來了很大壓力 如何排解或緩解這些壓力已 經成為很多人和探索者多年來的一個重要研究項目 電子鬧鐘 關鍵詞 關鍵詞 5151 電子鬧鐘 單片機 數碼管顯示電子鬧鐘 單片機 數碼管顯示 目 錄 摘 要 I 一 緒 論 1 一 概述 1 1 51 電子鬧鐘發(fā)展趨勢 1 2 本課題研究的主要內容 1 二 51 電子鬧鐘簡介 1 1 開發(fā)的目的和意義 1 2 51 電子鬧鐘的優(yōu)點 2 3 51 電子鬧鐘的特點 2 二 系統(tǒng)方案的設計 3 一 系統(tǒng)概述 3 1 系統(tǒng)功能描述 3 2 系統(tǒng)方案的確定 3 3 系統(tǒng)設計思路與步驟 3 二 芯片基本工作原理及其應用 4 1 AT89S51 簡介 4 2 引腳介紹 5 3 電源 6 4 存儲器 6 5 應用 6 三 LM386 簡介 6 1 LM386 介紹 6 2 LM386 特點 6 四 74HC245 簡介 7 三 系統(tǒng)的設計 8 一 系統(tǒng)硬件設計 8 1 單片機系統(tǒng)的設計 8 2 按鍵電路的設計 9 3 復位電路的設計 9 4 顯示電路的設計 11 二 系統(tǒng)軟件的設計 11 1 軟件設計 11 2 整個系統(tǒng)軟件部分的總體設計 15 四 系統(tǒng)的調試和性能分析 16 一 系統(tǒng)的調試方法 16 1 輸入按鍵的調試 16 2 復位電路的調試 16 3 顯示電路的調試 16 4 整個系統(tǒng)的聯調 16 二 系統(tǒng)的性能分析 16 結 論 18 參考文獻 19 致 謝 20 附錄 A 原理圖 21 附錄 B 程序 22 一 緒 論 一 概述 電子鬧鐘在科學技術高度發(fā)展的今天 千家萬戶都少不了它 所以很多家庭個人都 需要有一個電子鬧鐘 為人們提供報時方便 但普通電子鬧鐘不夠方便實用 本文給出 了一種以 51 芯片電子鬧鐘設計方法 從而給人們帶來更為方便的工作與生活 1 51 電子鬧鐘發(fā)展趨勢 現代的快節(jié)奏生活給人們的精神上帶來了很大壓力 如何排解或緩解這些壓力已 經成為很多人關心的問題 單片機電子鬧鐘是具發(fā)前鬧鐘創(chuàng)新性的系統(tǒng) 它代表了時 代的發(fā)展趨勢 2007 年 無論從國內外行業(yè)發(fā)展趨勢 還是從鬧鐘市場準入的要求來 看 節(jié)能 環(huán)保 創(chuàng)新都已成為中國家電企業(yè)無法回避的大問題 在原材料價格不斷 上漲 下游渠道商實力膨脹 價格戰(zhàn)越來越激烈 行業(yè)利潤日趨微薄的背景下 日前 中國的電子鬧鐘在節(jié)能化 環(huán)保化 創(chuàng)新型轉變過程中 正進行新一輪鬧鐘賽跑 目前 國內專業(yè) 51 電子鬧鐘廠家的數量正在迅速增長 51 電子鬧鐘市場在未來的 三五年內會高速增長 新技術 新產品也會不斷出現并投入應用 2 本課題研究的主要內容 設計一個 51 電子鬧鐘 1 能隨意設定走時起始時間 2 12 小時 24 小時兩種制式可選 以適應不同的需要 3 能指示秒節(jié)奏 即秒指示 4 采用交直流供電電源 與石英鐘不同的是 電子鐘一般采用數碼管等顯示 介質 因而必須以交流供電為主 以直流電源為后備輔助電源 并能自動切換 該設 計主要包括 按鍵 顯示程序單元部分 AT89S51 單片機芯片 74HC245 驅動 LED 顯示 電路 集成電路 74HC245 和 LM386 各 1 個 二 51 電子鬧鐘簡介 1 開發(fā)的目的和意義 目的 設計一個 51 電子鬧鐘的 該鬧鐘可由使用者自己設定一個時間 若想設 置鬧鈴 應先按下復位按鍵 然后長時間按下 設置 按鍵 第一個數碼管會顯示 C 然 后變?yōu)?00 00 00 此時進入鬧鈴設置狀態(tài) 設置方法跟上面一樣 鬧鈴設置完后 下一步要設置當前時間 調整方法跳到第一步 這樣設置好后 她就能按照主人的意 思 定時的把你鬧醒啦 意義 電子鬧鐘已經是現代生活中經常用到的工具之一 傳統(tǒng)的電子鬧鐘只是機 械控制 另外 體積也很大 又不美觀也不實用 而現在我設計的電子鬧鐘是用單片機做 的 只要簡單的設置好后 她就能按照主人的意思 定時的把你鬧醒啦 也能給人們的 生活帶來方便 2 51 電子鬧鐘的優(yōu)點 1 簡單好用 美觀 體積小 實用 2 用電量少 電壓低 節(jié)能 環(huán)保 創(chuàng)新 按鍵 顯示程序單元部分 AT89S51 單片機芯片 74HC245 驅動 LED 顯示電路 外 接 3 個按鈕組成鍵盤 AT89S51 為 51 內核 另外 AT89S51 本身無專門的液晶驅動接 口 因此 本時鐘采用數碼管顯示方式 數碼管作為一種主動顯示器件 具有亮度高 價格便宜等優(yōu)點 而且市場上也有專門的時鐘顯示組合數碼管 51 電子鬧鐘的用途 我設計的電子鬧鐘是用單片機做的 只要簡單的設置好后 她 就能按照主人的意思 定時的把你鬧醒啦 也能給人們的生活 工作學習帶來方便 3 51 電子鬧鐘的特點 1 幫助您排解或緩解那些來自現實生活的壓力 2 數碼管作為一種主動顯示器件 亮度高 價格便宜等 顯示數字清晰 3 簡單好用 可任意設 24 式時間 4 使用 LED 發(fā)光 省電 燈泡壽命長 二 系統(tǒng)方案的設計 一 系統(tǒng)概述 1 系統(tǒng)功能描述 本系統(tǒng)是利用 AT89S51 為 51 內核 集成電路 74HC245 和 LM386 各 1 個 制作完成 一個電子鬧鐘 該設計中采用液晶顯示或數碼管顯示 因此 本時鐘采用數碼管顯示 方式 充分體現系統(tǒng)的簡易性 使我們了解簡易鬧鐘的設計方法 并自己動手設計電 路和編寫實現鬧鐘功能的程序 簡易鬧鐘要實現以下功能 1 能正確顯示鬧鐘的走 時 2 可以進行當前時間的設置 3 可以設置鬧鐘時間 并在時間到時發(fā)出響聲 整個系統(tǒng)的任務要求 1 輸入數字按鍵的功能 保證數字的輸入 2 復位電路的功能 所有時間回到初始化狀態(tài) 用于啟動設定時間參數 對時或定鬧 3 顯示電路的功能 當輸入數字時顯示 24 小時時間功能 4 鬧鈴功能 設置好鬧鈴時間后 能按設置好的時間準時鬧鈴 2 系統(tǒng)方案的確定 根據以上各模塊并結合顯示屏的功能及元器件材料的情況 決定采用 AT89S51 為 51 內核顯示設計方案 3 系統(tǒng)設計思路與步驟 先進行系統(tǒng)的整體規(guī)劃確定整個系統(tǒng)的功能 然后按照每個功能的具體要求 進 行各個模塊的實物設計并逐個調試 待全部通過后 進行整個系統(tǒng)的聯調 最終實現 一個完整的系統(tǒng) 并制成印刷線路板 整個系統(tǒng)的設計步驟如下 在單片機最小系統(tǒng)的基礎上 完成按鍵電路和復位電路的設計 完成顯示電路 數字按鍵 復位電路 具有 3 個功能按鍵 1 在復位后的待機狀態(tài)下 用于啟動設定時間參數 對時或定鬧 2 在設定時間參數狀態(tài)而且不是設定最低位 即分個位 的狀態(tài)下 用于結束當 前位的設定 當前設定位下移 3 在設定最低位 分個位 的狀態(tài)下 用于結束本次時間設定 2 鍵 用于對當前設定位 編輯位 進行加 1 操作 根據 12 24 小時工作模 式和正在編輯的當前位的含義 時十位 時個位 分十位 分個位 自動進行數據的 上限和下限判斷 例如 對 12 小時制 小時的十位只能是 0 1 如果當前值為 0 則 按 1 鍵后為 1 再按 1 鍵則又回復到 0 把以上各個模塊聯結起來 整體調試功能 整個系統(tǒng)的原理框圖如圖 2 1 所示 圖 1 整個系統(tǒng)的原理圖 二 芯片基本工作原理及其應用 1 AT89S51 簡介 AT89S51 是一個低功耗 高性能 CMOS 8 位單片機 片內含 4k Bytes ISP In system programmable 的可反復擦寫 1000 次的 Flash 只讀程序存儲器 器件采用 按鍵與按鈕電路 復位等輔助電路 位數碼管顯示電路 鬧鈴聲光指示電路 電源系統(tǒng) ATMEL 公司的高密度 非易失性存儲技術制造 兼容標準 MCS 51 指令系統(tǒng)及 80C51 引 腳結構 芯片內集成了通用 8 位中央處理器和 ISP Flash 存儲單元 功能強大的微型 計算機的 AT89S51 可為許多嵌入式控制應用系統(tǒng)提供高性價比的解決方案 2 引腳介紹 AT89S51 具有如下特點 40 個引腳 4k Bytes Flash 片內程序存儲器 128 bytes 的隨機存取數據存儲器 RAM 32 個外部雙向輸入 輸出 I O 口 5 個中斷優(yōu) 先級 2 層中斷嵌套中斷 2 個 16 位可編程定時計數器 2 個全雙工串行通信口 看門狗 WDT 電路 片內時鐘振蕩器 圖 2 引腳圖 此外 AT89S51 設計和配置了振蕩頻率可為 0Hz 并可通過軟件設置省電模式 空閑模式下 CPU 暫停工作 而 RAM 定時計數器 串行口 外中斷系統(tǒng)可繼續(xù)工作 掉 電模式凍結振蕩器而保存 RAM 的數據 停止芯片其它功能直至外中斷激活或硬件復位 同時該芯片還具有 PDIP TQFP 和 PLCC 等三種封裝形式 以適應不同產品的需求 主要功能特性 兼容 MCS 51 指令系統(tǒng) 32 個雙向 I O 口 2 個 16 位可編程定時 計數器 全雙工 UART 串行中斷口線 2 個外部中斷源 中斷喚醒省電模式 看門狗 WDT 電路 靈活的 ISP 字節(jié)和分頁編程 4k 可反復擦寫 1000 次 ISP Flash ROM 4 5 5 5V 工作電壓 時鐘頻率 0 33MHz 128x8bit 內部 RAM 低功耗空閑和省電模式 3 級加密位 軟件設置空閑和省電功能 雙數據寄存器指針 3 電源 89S51 有很寬的工作電源電壓 電源范圍寬達 4 5 5V 4 存儲器 89S51 支持 ISP 在線可編程寫入技術 串行寫入 速度更快 穩(wěn)定性更好 燒寫電壓 也僅僅需要 4 5V 即可 5 應用 就目前中國市場的情況來看 89S51 有很大的市場 其原因有下列幾點 1 AT89S51 設計和配置了振蕩頻率可為 0Hz 并可通過軟件設置省電模式 2 AT89S51 是一個低功耗 高性能 CMOS 8 位單片機 3 芯片內集成了通用 8 位中央處理器和 ISP Flash 存儲單元 功能強大的微型計算機的 AT89S51 可為許多嵌入式控制應用系統(tǒng) 提供高性價比的解決方案 4 同時該芯片還具有 PDIP TQFP 和 PLCC 等三種封裝形 式 以適應不同產品的需求 三 LM386 簡介 LM386 是美國國家半導體公司生產的音頻功率放大器 主要應用于低電壓消費類產 品 為使外圍元件最少 電壓增益內置為 20 但在 1 腳和 8 腳之間增加一只外接電阻 和電容 便可將電壓增益調為任意值 直至 200 輸入端以地位參考 同時輸出端被自 動偏置到電源電壓的一半 在 6V 電源電壓下 它的靜態(tài)功耗僅為 24mW 使得 LM386 特 別適用于電池供電的場合 專為低損耗電源所設計的功率放大器 1 LM386 介紹 LM386 適用于電腦 儀器 汽車電子 電源 通信 開關電源等電子產品 2 LM386 特點 靜態(tài)功耗低 約為 4mA 可用于電池供電 工作電壓范圍寬 4 12V or 5 18V 外圍元件少 電壓增益可調 20 200 低失真度 四 74HC245 簡介 由于通過數碼管公共及的電流較大 因此用三極管來驅動位碼 為了避免過多地 使用分立元件 采用了一片 74HC245 來驅動段碼 三 系統(tǒng)的設計 一個完整的系統(tǒng) 離不開硬件和軟件的設計 硬件與軟件各有所長 如何合理的 安排軟硬件的任務是系統(tǒng)設計的第一步 一 系統(tǒng)硬件設計 系統(tǒng)硬件的設計可以根據系統(tǒng)的各個功能 把整個系統(tǒng)劃分成若干個模塊 分別 對這些模塊來進行設計 然后在通過單片機程序來實現對各個硬件模塊功能的調度 本系統(tǒng)涉及到的硬件模塊有 按鍵電路 復位電路 顯示電路 1 單片機系統(tǒng)的設計 單片機最小應用系統(tǒng)實際上就是一個內置程序存儲器的單片機 可由單片機芯 片 配以必要的外部器件構成 這些外部功能器件無法集成到芯片內部 主要有按鍵 電路 顯示電路等 圖 3 單片機系統(tǒng)圖 2 按鍵電路的設計 作為一個按鍵從沒有按下到按下以及釋放是一個完整的過程 也就是說當我們按 下一個按鍵時 總希望某個命令只執(zhí)行一次 而在按下的過程中不要有干擾進來 因 為在按下的過程中 一旦有干擾過來可能造成誤觸發(fā)過程 因此我們在設計按鍵電路 的時候應注意不要有干擾進來以用在焊接時應注意 獨立式按鍵 如果設置過多按鍵 將會占用較多 I O 口 而且會給布線帶來不便 因此 此方案適用于按鍵較少的情況 如果選擇此方案 由于按鍵較少 在修改時間 或設置鬧鈴時間時就不能直接輸入 只能通過加或減完成 稍為麻煩一些 但其程序 簡單 1 執(zhí)錫補焊時應按照從左到右 由上到下的順序 避免檢查時漏檢或焊接時漏 修 2 焊接時要經常清洗烙鐵頭 防止烙鐵頭的雜物造成虛焊 針孔 加焊等不良 發(fā)生 3 不要在基板上給烙鐵頭加焊錫 生產過程中不能抖錫 敲錫 甩錫 防止 焊錫渣 焊錫 珠掉到基板上面 4 在壓件或拆件時要先在線路板的銅箔面上加焊錫 要求均勻加熱 避免松香 失效或銅箔翹皮造成線路破壞 考慮到電路不要復雜性 因而設計成 3 個按鍵 一個為復位 其它 2 個為按數字時間 的按鍵和確定設好的時間確定 后 2 個按鍵要接 89C2051 端 若想設置鬧鈴 應先按下 復位按鍵 然后長時間按下 設置 按鍵 第一個數碼管會顯示 C 然后變?yōu)?00 00 00 此時進入鬧鈴設置狀態(tài) 設置方法跟上面一樣 鬧鈴設置完后 下一步要設 置當前時間 調整方法跳到第一步 在復位后的待機狀態(tài)下 用于啟動設定時間參數 對時或定鬧 在設定時間參數狀態(tài)而且不是設定最低位 即分個位 的狀態(tài)下 用于結束當 前位的設定 當前設定位下移 在設定最低位 分個位 的狀態(tài)下 用于結束本次時間設定 2 鍵 用于對當前設定位 編輯位 進行加 1 操作 根據 12 24 小時工作模 式和正在編輯的當前位的含義 時十位 時個位 分十位 分個位 自動進行數據的 上限和下限判斷 例如 對 12 小時制 小時的十位只能是 0 1 如果當前值為 0 則 按 1 鍵后為 1 再按 1 鍵則又回復到 0 3 復位電路的設計 目前為止 單片機復位電路主要有四種類型 1 微分型復位電路 2 積分 型復位電路 3 比較器型復位電路 4 看門狗型復位電路 另外 Maxim 等公司 也推出了專用于復位的專用芯片復位電路的基本功能是 系統(tǒng)上電時提供復位信號 直至系統(tǒng)電源穩(wěn)定后 撤銷復位信號 為可靠起見 電源穩(wěn)定后還要經一定的延時才 撤銷復位信號 以防電源開關或電源插頭分 合過程中引起的抖動而影響復位 當輸入 的復位信號延續(xù)兩個機器周期以上的高電平時即為有效 用完成單片機的復位初始化 操作 單片機目前已被廣泛地應用于家電 醫(yī)療 儀器儀表 工業(yè)自動化 航空航天等 領域 市場上比較流行的單片機種類主要有 Intel 公司 Atmel 公司和 Philip 公司的 8051 系列單片機 Motorola 公司的 M6800 系列單片機 Intel 公司的 MCS96 系列單片 機以及 Microchip 公司的 PIC 系列單片機 無論用戶使用哪種類型的單片機 總要涉 及到單片機復位電路的設計 而單片機復位電路設計的好壞 直接影響到整個系統(tǒng)工 作的可靠性 許多用戶在設計完單片機系統(tǒng) 并在實驗室調試成功后 在現場卻出現 了 死機 程序走飛 等現象 這主要是單片機的復位電路設計不可靠引起的 圖 1 是一個單片機與大功率 LED 八段顯示器共享一個電源 并采用微分復位電路的實例 在這種情況下 系統(tǒng)有時會出現一些不可預料的現象 如無規(guī)律可循的 死機 程 序走飛 等 而用仿真器調試時卻無此現象發(fā)生或極少發(fā)生此現象 又如圖 2 所示 在此圖中單片機復位采用另外一種復位電路 在此電路的應用中 用戶有時會發(fā)現在 關閉電源后的短時間內再次開啟電源 單片機可能會工作不正常 這些現象 都可認 為是由于單片機復位電路的設計不當引起的 圖 4 復位電路圖 4 顯示電路的設計 就時鐘而言 通??刹捎靡壕э@示或數碼管顯示 由于一般的段式液晶屏 需要 專門的驅動電路 而且液晶顯示作為一種被動顯示 可視性相對較差 對于具有驅動 電路和微處理器接口的液晶顯示模塊 字符或點陣 一般多采用并行接口 對微處理 器的接口要求較高 占用資源多 另外 89C2051 本身無專門的液晶驅動接口 因此 本時鐘采用數碼管顯示方式 數碼管作為一種主動顯示器件 具有亮度高 價格便宜 等優(yōu)點 而且市場上也有專門的時鐘顯示組合數碼管 基于 AT89S51 單片機的控制系 統(tǒng)包括四部分 數據采集 控制系統(tǒng) 時鐘電路 語音錄音電路和報音提示信息電路 用數碼管作為顯示器 數碼管的驅動電路簡單 使用方便 如果選擇了此方案 那么在夜間看時間的時候就不需要有光源 非常方便 其缺點是功耗較大 由于數碼 管使用起來較為方便 在夜間看時間也很方便 因此我們選擇了數碼管作為顯示器 發(fā)音部分 用軟件方法產生方波輸出 通過三極管放大后驅動蜂鳴器發(fā)音 這樣就可以省去 硬件振蕩電路 降低成本 二 系統(tǒng)軟件的設計 系統(tǒng)軟件的設計方法與硬件設計的方法是相同的 也是根據系統(tǒng)的各個功能 劃 分成各個子模塊 分別對每個模塊來進行設計 然后在通過各個模塊之間的調用來實 現整個系統(tǒng)的功能 系統(tǒng)軟件部分的設計模塊有 按鍵電路的軟件設計 復位電路的軟件設計 顯示 電路的軟件設計共 3 個模塊 發(fā)音部分 用軟件方法產生方波輸出 通過三極管放大后驅動蜂鳴器發(fā)音 這樣就可以省去 硬件振蕩電路 降低成本 電源 如果是用電池供電 就比較方便攜帶 但是本系統(tǒng) 采用了數碼管作為顯示器 功耗較大 需要經常更換電池 況且 本系統(tǒng)的體積較大 即使使用電池供電也不能 隨身攜帶 因此 用電池供電不大合適 所以用外部穩(wěn)壓電源來供電 1 軟件設計 軟件功能 1 檢測按鍵 當系統(tǒng)檢測到某個案件被按下時 轉到相應子程序處理 可實現 校時 設定鬧鈴時間的功能 2 顯示 系統(tǒng)通過調用顯示子程序 可將顯示緩沖區(qū)里的內容通過動態(tài)掃描方 式輸出到數碼管顯示器 3 計時 系統(tǒng)通過中斷和軟件計數器可產生秒信號 每到 1s 系統(tǒng)將會調整時 間存儲單元的內容 從而實現計時功能 4 比較 每當秒存儲單元的內容為 0 時 系統(tǒng)通過調用比較子程序可判斷當前 時間是否符合鬧鈴條件 若符合 則調用發(fā)音子程序使蜂鳴器發(fā)出鬧鈴聲音 5 產生音頻方波輸出 系統(tǒng)通過軟件產生音頻方波輸出使蜂鳴器發(fā)聲 這樣可 以省去硬件振蕩電路 6 拆分 為了提高存儲單元的利用率 本系統(tǒng)將時間數據壓縮成壓縮 BCD 碼后 再送入顯存才能顯示 7 合并 為了提高修改時間的速度 可先對現存內容逐位修改 然后調用合并 子程序把顯存內容合并后送入指定存儲單元 8 設定 系統(tǒng)進入設定狀態(tài)后 可通過按 設定 鍵改變閃亮位位置和按 或 鍵來加 1 或減 1 閃亮位內容 從而達到報時和設定鬧鈴時間的目的 軟件設計 圖 5 T0中斷服務程序流程圖 調整鍵按下 數碼管熄滅進入 省電模式 數碼管熄滅進入 省電模式 調整鍵按下 調整鍵按下 數碼管熄滅進入 省電模式 后一個數碼管閃爍 直到時間設置完成 加1鍵按下調整鍵按下 數字加1并閃爍 數碼管熄滅進入 省電模式 調整鍵按下 數字加1并閃爍 第一個數碼管變 進入調時 模式第一個管子閃爍 開始初始化 調整鍵按下很短 數碼管顯示00 00 00 同時等待設置時間 調整鍵按下較長 第一個數碼管先變 后變 進入 鬧鈴設置模式第一個管子閃爍 調整鍵按下加1鍵按下 后一個數碼管閃爍 直到時間設置完成 圖6 電路流程圖 系統(tǒng)功能及使用方法 系統(tǒng)上電后 自動進入時鐘狀態(tài) 若在此時按下 設定 鍵 顯示器上將出現閃 亮位 再按 或 則可以加或減閃亮位內容 修改完一位后再按 設定 可改 變閃亮位位置繼續(xù)修改下一位 修改完成后按 確定 鍵即可退出設定狀態(tài)進入正常 顯示時鐘狀態(tài) 在正常顯示時鐘狀態(tài)時按下 鬧鐘 鍵可進入鬧鐘狀態(tài) 此時按 或 可 上下翻動鬧鐘表 按 設定 鍵可修改當前顯示的鬧鐘時間 修改方法與修改時鐘相 同 在查看鬧鐘表狀態(tài)下按 鬧鐘 鍵可以開 關當前顯示的鬧鐘時間 當顯示器第 5 位顯示 時表示鬧鈴已開 按 時鐘 鍵返回正常顯示時鐘狀態(tài) 若想設置鬧鈴 應先按下復位按鍵 然后長時間按下 設置 按鍵 第一個數碼管會顯示 C 然后變 為 00 00 00 此時進入鬧鈴設置狀態(tài) 設置方法跟上面一樣 鬧鈴設置完后 下一 步要設置當前時間 調整方法跳到第一步 這樣設置好后 她就能按照主人的意思 定時的把你鬧醒啦 我們先了解簡易鬧鐘的設計方法 并自己動手設計電路和編寫實現鬧鐘功能的程 序 簡易鬧鐘要實現以下功能 1 能正確顯示鬧鐘的走時 2 可以進行當前時間的設 置 3 可以設置鬧鐘時間 并在時間到時發(fā)出響聲 設計中 我們利用儀器中所提供的以上提到的芯片和軟件編程結合的思路 本設 計的軟件編程由四部分構成 下面將對照程序的構成來闡述我們組對簡易鬧鐘的方案 設計 具體設計方案如下 一 在主程序中 填寫中斷向量表 應用 8255A 的 IRQ7 和 IRQ5 端 利用 8253A 和 8259A 完成計時一秒的功能 然后通過更新時間的子程序完 成時間跳變的功能 待到新的時間判斷是否到達設定的鬧鐘的時間 如果是 則啟動 揚聲器 如果否 則繼續(xù)進行顯示時間 二 鬧鐘的時間是變化的 在更新時間的子 程序中 首先判斷更改后的秒數是否小于 10 如果是 則返回主程序 如果否 則秒 的個位跳變成 0 秒的十位加一 再次判斷秒的十位 過程同判斷秒的個位相同 三 簡易鬧鐘最重要的功能就是 It s time to do something 在這部分 主要要考慮 的也是判斷當前時間是不是設定的鬧鐘時間 如果跳變后的時間的四位完完全全的和 設定的鬧鐘時間相同 則揚聲器應該響起 提示鬧鐘的主人 Time is up 從鬧鐘的 分鐘的十位開始依次判斷 如果前一個鬧鐘位的顯示與設定的鬧鐘時間對應位相同 則轉入判斷下一位 如果不相同 則返回主程序 都判斷后 如果都相同 則設置啟 動鬧鐘的對應位為 1 啟動揚聲器 四 在顯示時間的子程序中 時間從 0 0 0 0 開始顯示 四位數字的顯示各由一段程序完成 2 整個系統(tǒng)軟件部分的總體設計 在各個模塊的軟件設計完成后 便可以對整個系統(tǒng)進行整體的軟件設計 其根本的 設計思路是通過設置一些聯系信號 把原本功能獨立的各個模塊聯結在一起 從而實 現整體系統(tǒng)的功能 四 系統(tǒng)的調試和性能分析 一 系統(tǒng)的調試方法 整個系統(tǒng)調試的主要思想是 先每個模塊進行調試 然后整個系統(tǒng)一起調試 先 軟硬件分開調試 然后一起調試 遵循先部分后整體的原則 系統(tǒng)的在調試過程中要注意以下幾點 1 硬件電路焊完之后 在上電之前一定要先用萬用表檢測電源和地之間是否短 路 2 上電之后要用示波器觀察信號的在電路中變化的情況 與設計當初的情況相 比較 找出差別 并進行分析 3 軟件調試過程中可以使用斷點 單步執(zhí)行等常用的方法 4 軟硬件聯調時 要注意軟件部分要一個功能一個功能的調試 1 輸入按鍵的調試 輸入按鍵的調試 只要按鍵按下去時 按鍵有相應的反應就行 通過程序來判斷 單片機 I O 是否能夠識別出 2 復位電路的調試 當電源剛接通時 接通電源就完成了系統(tǒng)的初始化 3 顯示電路的調試 在本設計中 顯示電路只需完成 當輸入數字時能正確顯示數字 4 整個系統(tǒng)的聯調 在系統(tǒng)各個部分都調試完畢之后 即可以進行整個系統(tǒng)的調試 由于前面各個部 分的調試做的都比較充分 所以在實際調試過程中 能夠較順利的實現整個系統(tǒng)預期 的功能 二 系統(tǒng)的性能分析 系統(tǒng)能在設定的時間內鬧鈴 但聲音有點沙啞 這是因為控制蜂鳴器的 I O 口每 次取反后 必須調用一次顯示子程序后才能再次取反 否則在發(fā)音期間不能顯示 而 調用一次顯示子程序需要的時間大約為 6ms 6 位每位 1ms 所以振蕩頻率 f 1 T 1 2 6ms 83Hz 顯然這個頻率過低 這就是造成聲音沙啞的原因 經測試 其時鐘誤差約為 3 秒 天 這是因為從定時器向 CPU 發(fā)出中斷申請信號到重裝定時初 值的過程需要一定的時間 本系統(tǒng)通過測試 能夠實現以下功能 1 按鍵輸入 2 鬧鈴聲音 3 LED 顯示 結 論 本次畢業(yè)設計我很早就開始準備 并且先自己買器件動手制作 因此能夠較早的 完成全部的設計任務 通過本次設計 使自己在單片機應用系統(tǒng)設計方面的能力有了 長足進步 本次畢業(yè)設計應用單片機電子鬧鐘的設計與制作 作為一種智能化產品 具有成本低 使用方便 可靠性高和可擴展性強的特點 參考文獻參考文獻 1 李捷 陳典濤等 一種應用單片機電子鬧鐘的設計與制作設計 J 農機化研 究 2005 2 陳明熒 8051 單片機課程設計實訓教材 北京 清華大學出版社 2004 3 胡漢才 單片機原理及其接口技術 北京 清華大學出版社 1995 4 徐淑華 程退安 姚萬生 單片機微型機原理及應用 哈爾濱工業(yè)大學出版社 1994 5 丁元杰 單片機原理與應用 機械工業(yè)出版社出版 2003 年 2 月 58 67 6 朱定華 單片機原理及接口技術 電子工業(yè)出版社出版 2004 年 5 月 32 46 7 何立民 單片機應用系統(tǒng)設計系統(tǒng)配置與接口技術 北京航空航天大學出版社出版 2005 年 2 月 16 45 8 江曉安 董秀峰 模擬電子技術 西安電子科技大學出版社 2003 年 9 月 46 110 9 陸坤 電子設計技術 成都電子科技大學出版社 1996 年 5 月 31 76 致致 謝謝 在論文即將完成之際 我首先向關心幫助和指導我的導師王殿學老師表示衷心的 感謝并致以崇高的敬意 在論文工作中 一直得到王老師的悉心指導 王老師以其淵 博的學識 嚴謹的治學態(tài)度 求實的工作作風和她敏捷的思維 飽滿的工作熱情以及 對我的耐心指導和嚴格要求給我留下了深刻的印象 使我在理論和實際應用兩方面的 能力都得到了很大的提高 使我受益匪淺 王老師治學嚴謹 待人誠懇 他高屋建瓴 的學術眼光 對事業(yè)孜孜不倦地追求和勤奮不輟的精神將使我終生受益 是我終生學 習的榜樣 在此向恩師致以最誠摯的謝意 我還要感謝我的同學們 他們在畢業(yè)設計期間給我了莫大的支持與幫助 為我提 供了一個良好的學習和生活環(huán)境 并且對于我提出的任何難題都給予熱心 耐心的解 答 使我受益頗深 感謝應用電子技術專業(yè)的全體老師對我的諄諄教導 你們的教誨將使我受益終生 感謝全體同學 你們的關心和友愛使我很感動 感謝我的父母對我的養(yǎng)育之恩 感謝所有幫助過我的人們 最后 再次感謝王殿學老師對我的鼓勵 支持與關懷 這些我將永生難忘 附錄附錄 A A 原理圖原理圖 附錄附錄 B B 程序 程序 定義變量 S1EQUP3 4 按鍵 JIAEQUP3 5 SECLEQU24H 各個顯示單元 SECHEQU25H HENGXIAN EQU26H MINULEQU27H MINUHEQU28H HENGEQU29H HOURLEQU2AH HOURHEQU2BH SECONDEQU2DH 秒變量單位 COUNTEQU2EH 溢出中斷計數器 SETFLAGEQU20H HHEQU00H 移位時用到的單元 HLEQU01H MHEQU02H MLEQU03H WARNSLEQU2FH WARNSHEQU30H WARNMLEQU32H 報警分低位 WARNMHEQU33H 報警分高位 WARNHLEQU35H 報警時低位 WARNHHEQU36H 報警時高位 WARNCNTEQU37H 已設定鬧鈴時間標志 WARNINGBIT 0CH 鬧鈴標志 WARNSETTEDBIT 0DH 已設定鬧鈴時間標志 誤差修正 TFIXBIT 0EH 開始修正標志 NEQU60 誤差值 單位 1 10s 默認為 0 即不修正 程序入口地址 ORG0000H LJMPMAIN ORG000BH 定時器 T0 溢出中斷入口 LJMPTIMER0 ORG0030H 主程序 MAIN MOVSP 60H 堆棧設置 CLRTFIX 誤差開始修正標志初始化 MOVCOUNT 0 LCALL SYS INIT 系統(tǒng)初始化 LCALL T0 INIT 定時器初始化 LCALL SETTIME 等待設置當前時間 MAIN 0 MOVIE 80H 設置完后開始走時 啟動定時器 T0 SETBTR0 允許 T0 溢出中斷 LCALL DELAY10MS LCALL DISPLAY1 系統(tǒng)初始化子程序 SYS INIT MOVIE 00H 關中斷 MOVR0 20 清變量 MOVR1 10H MOVA 00H SYS 0 MOV R0 A INC R0 DJNZR1 SYS 0 RET 定時器 串口初始化 T0 INIT MOVTMOD 01H MOVTH0 3CH MOVTL0 0B0H RET 鬧鈴時間設定 SETWARN MOVWARNHH 0 MOVWARNHL 0 MOVWARNMH 0 MOVWARNML 0 MOVWARNSH 0 MOVWARNSL 0 MOVSETFLAG 00 SETBHH KAISHI NAO LCALL DISPLAYNEW1 SETW 1 JBS1 LOOP3 LCALL DELAY10MS JBS1 LOOP3 JNB S1 JBML LOOPW1 MOVA SETFLAG RL A 當前位右移 l 位 標志左移 1 位 MOV SETFLAG A 回存 SJMP SET W2 LOOP3 LJMPSET W2 LOOPW1 LJMPKAISHI1 SET W2 LCALL DISPLAYNEW1 JBJIA SETW 1 LCALL DELAY10MS JBJIA SETW 1 JNB JIA JNB HH SHI W2 為真 則當前位滅 INC WARNHH MOVA WARNHH XRLA 3 JZSET W1 1 LJMPKAISHI NAO SET W1 1 MOVWARNHH 0 LJMPKAISHI NAO SHI W2 JNB HL FEN W1 INC WARNHL MOVA WARNHH CJNEA 2 SHI W2 1 MOVA WARNHL XRLA 05H 小時低位只能是 0 4 JZSET W21 LJMPKAISHI NAO SHI W2 1 MOVA WARNHL XRLA 0AH JZSET W21 LJMPKAISHI NAO SET W21 MOVWARNHL 0 LJMPKAISHI NAO FEN W1 JNB MH FEN W2 INC WARNMH MOVA WARNMH XRLA 6 JZSET W22 LJMPKAISHI NAO SET W22 MOVWARNMH 0 LJMPKAISHI NAO FEN W2 INC WARNML MOVA WARNML XRLA 0AH JZSET W23 LJMPKAISHI NAO SET W23 MOVWARNML 0 LJMPKAISHI NAO 設置時間鬧鈴掃描 DISPLAYNEW1 MOVA 0AH MOV31H A MOV34H A MOVR0 2FH MOVR3 0FEH PLAYNEW1 MOVA R3 MOVP2 A MOVA R0 MOVDPTR TABLE MOVCA A DPTR MOVP0 A LCALL DELAY1MS INC R0 MOVA R3 JNB ACC 7 LOOP2 RL A MOVR3 A SJMPPLAYNEW1 LOOP2 RET 時間調整 SETTIME MOVHOURH 0 MOVHOURL 0 MOVMINUH 0 計時無保存 可能是鬧鈴沒進去 MOVMINUL 0 MOVSECH 0 MOVSECL 0 MOVSETFLAG 00 SETBHH PANLING LCALL DISPLAYNEW JBS1 PANLING LCALL DELAY100MS LCALL DELAY100MS LCALL DELAY100MS LCALL DELAY100MS LCALL DELAY100MS JBS1 KAISHI1 LCALL DELAY10MS JNB S1 SETC 1 按住時間更長為設置鬧鈴 第一個數碼管顯示為 C SETNAO SETBWARNSETTED LCALL SETWARN SETC 1 LCALL SETC KAISHI1 MOVHOURH 0 MOVHOURL 0 MOVMINUH 0 MOVMINUL 0 MOVSECH 0 MOVSECL 0 MOVSETFLAG 00 SETBHH KAISHI LCALL DISPLAYNEW SET 1 JBS1 SET 2 LCALL DELAY10MS JBS1 SET 2 JNB S1 JBML LOOP1 MOVA SETFLAG RL A 當前位右移 l 位 標志左移 1 位 MOV SETFLAG A 回存 SJMP SET 2 LOOP1 LJMPMAIN 0 SET 2 LCALL DISPLAYNEW JBJIA SET 1 LCALL DELAY10MS JBJIA SET 1 JNB JIA JNB HH SHI 2 為真 則當前位滅 INC HOURH MOVA HOURH XRLA 3 JZSET 1 1 LJMPKAISHI SET 1 1 MOVHOURH 0 LJMPKAISHI SHI 2 JNB HL FEN 1 INC HOURL MOVA HOURH CJNEA 2 SHI 2 1 MOVA HOURL XRLA 05H 小時低位只能是 0 4 JZSET 21 LJMPKAISHI SHI 2 1 MOVA HOURL XRLA 0AH JZSET 21 LJMPKAISHI SET 21 MOVHOURL 0 LJMPKAISHI FEN 1 JNB MH FEN 2 INC MINUH MOVA MINUH XRLA 6 JZSET 22 LJMPKAISHI SET 22 MOVMINUH 0 LJMPKAISHI FEN 2 INC MINUL MOVA MINUL XRLA 0AH JZSET 23 LJMPKAISHI SET 23 MOVMINUL 0 LJMPKAISHI 鬧鈴標志 SETC MOVP2 7FH MOVP0 39H JNB S1 SETC LJMPSETNAO 設置時間掃描 DISPLAYNEW MOVA 0AH MOV29H A MOV26H A MOVR0 24H MOVR3 0FEH PLAYNEW MOVA R3 MOVP2 A MOVA R0 MOVDPTR TABLE MOVCA A DPTR MOVP0 A LCALL DELAY1MS INC R0 MOVA R3 JNB ACC 7 LOOP RL A MOVR3 A SJMPPLAYNEW LOOP RET 走時掃描 DISPLAY1 MOVA 0AH MOV29H A MOV26H A MOVR0 24H MOVR4 0FEH JNB P3 4 BAOHU LCALL DELAY5 PLAY JNB WARNING LING JNB P3 5 QINGLING CPLP1 0 LJMPLING LCALL DELAY10MS LCALL DELAY10MS QINGLING CLRWARNING LING LCALL DELAY10MS LCALL DELAY5MS JNB P3 4 BAOHU MOVA R4 MOVP2 A MOVA R0 MOVDPTR TABLE MOVCA A DPTR MOVP0 A LCALL DELAY2MS INC R0 MOVA R4 JNB ACC 7 DISPLAY1 RL A MOVR4 A SJMPPLAY BAOHU MOVP2 0FFH LCALL DELAY100MS LCALL DELAY100MS LCALL DELAY100MS BAOHU1 JNB WARNING BAOHU2 LJMPLING BAOHU2 JNB P3 4 PLAY1 BAOHU JNB P3 4 PLAY LCALL DELAY10MS JBP3 4 LCALL DELAY10MS JBP3 4 PLAY LJMPBAOHU1 PLAY1 LCALL DELAY10MS LCALL DELAY10MS LCALL DELAY10MS LCALL DELAY10MS JBP3 4 PLAY LJMPBAOHU1 計時 TIMER0 PUSHACC A 壓棧保護 MO
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 陋室銘試題及答案
- 家庭照護者負擔研究-洞察及研究
- 合肥市期末八上數學試卷
- 廣西桂平期末數學試卷
- 口技試題及答案
- a1科目科目一考試試題及答案
- 2025年醫(yī)保知識考試題庫及答案:醫(yī)保目錄解讀與實際操作試題
- 海南高考一模數學試卷
- 城鄉(xiāng)要素雙向流動-洞察及研究
- 客戶反饋機制與滿意度動態(tài)-洞察及研究
- JGJ106-2014 建筑基樁檢測技術規(guī)范
- 2023年中國石化河北石家莊石油分公司社會招聘20人筆試模擬試題及答案解析
- 太陽能熱水系統(tǒng)設計
- 醫(yī)務科崗前培訓
- 共青團團課主題班會課件PPT模板PPT
- GB/T 8685-2008紡織品維護標簽規(guī)范符號法
- 合成氨行業(yè)發(fā)展現狀及趨勢分析
- 2022年徐聞縣(中小學、幼兒園)教師招聘筆試試題及答案解析
- 網電部管理重點(中)
- 新生兒復蘇解析課件
- ABI7500熒光定量PCR儀標準操作規(guī)程
評論
0/150
提交評論