




已閱讀5頁,還剩27頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
河南機電高等專科學校畢業設計 /論文 i 摘 要 搶答器作為一種工具,已廣泛應用于各種智力和知識競賽場合。作為一個單 位,如果專門購一臺搶答器雖然在經濟上可以承受,但每年使用的次數極少,往 往因長期存放使(電子器件的)搶答器損壞,再購置的麻煩及時性就會影響活動 的開展,因此設計了本搶答器。 本設計是以八路搶答為基本理念。利用 at89c51 單片機及外圍接口實現的搶 答系統,利用單片機的定時器/計數器定時和記數的原理,將軟、硬件有機地結 合起來,使得系統能夠正確地進行計時,同時使數碼管能夠正確地顯示時間。用 開關做鍵盤輸出,揚聲器發生提示。同時系統能夠實現:在搶答中,只有開始后 搶答才有效,如果在開始搶答前搶答為無效;搶答限定時間和回答問題的時間可 在 1-99s 設定;可以顯示是哪位選手有效搶答和無效搶答,正確按鍵后有音樂提 示;搶答時間和回答問題時間倒記時顯示,滿時后系統計時自動復位及主控強制 復位;按鍵鎖定,在有效狀態下,按鍵無效非法。 關鍵詞 at89c51,led 數碼管,搶答器,計時 河南機電高等專科學校畢業設計 /論文 ii abstract as a tool, the first answer device has been widely used in all kinds of intelligence and knowledge contests occasions. however, it is not used so frequently due to its production complexity, lacking of reliability and reducing interest. although a unit can afford it, it is rarely used yearly. meanwhile, because of the long-term storage, its electronic devices are easy to be damaged. some activities are likely to be affected because it is quiet trouble to repurchase these spare parts and time-wasting. this first answer device is designed to solve these problems. and this design is based on the principle of eight-way first answer. considering the requirement and the limited time to answer, while using at89c51 single-chip and external interface of the answer system, the use of single-chip timer / counter timing and number of the principles in mind, the software and hardware combination, makes the system time correctly, while the digital control to display time correctly. switch the keyboard to do with output, speaker prompted occurred. at the same time, the system can be realized: in the competitive answering game, only after the answer that will be valid, if at the beginning of pre-answer that will be invalid; competitive answer to the question and the end of the question can be set in 1-99s; it can show whos effective and whose answers invalid, the correct button will prompt after the music; count down to the competitive and finished time, when its full time the system will be automatic reset and the master will also be forced reset ;keys locked in the effective state, while the key is invalid illegal. key words at89c51, led digital tubes,the first answer device,time 河南機電高等專科學校畢業設計 /論文 1 目 錄 畢業設計任務書i 摘要.iii 目錄.1 緒論.2 第 1 章 設計要求、方案比較及功能.3 1.1 設計要求、構思3 1.2 方案論證與比較3 第 2 章 搶答器的硬件系統設計.4 2.1 at89c51 的功能及簡介.4 2.1.1 at89c51 的特殊功能寄存器6 2.2 搶答器系統的主要功能6 2.3 時鐘頻率電路的設計8 2.4 復位電路的設計8 2.5 顯示電路的設計9 2.6 鍵盤掃描電路的設計10 2.7 發聲電路12 2.8 系統復位12 2.9 器件選擇方案及詳細清單13 第 3 章 搶答器軟件系統的設計.15 3.1 主程序系統圖15 3.2 軟件任務分析15 3.2.1 搶答器設計中的定時電路.16 3.2.2 搶答器設計中的報警電路.16 3.2.3 搶答器設計中的時序控制電路.17 3.3 程序流程圖18 結論/展望.19 致謝.20 參考文獻.21 附錄.22 河南機電高等專科學校畢業設計 /論文 2 緒論 本設計采用模塊化設計智能搶答器,在搶答比賽中廣泛應用,各組分別有一 個搶答按鈕。主持人有開始和結束、復位鍵。在后臺主持人可以修改,搶答時間 和選手回答問題的時間設置,原始狀態下搶答時間為 20s,回答問題時間為 30s。通過加鍵和減鍵修改上述時間,改完后結束鍵確定。新時間開始有效,主 持人按鍵開始后,選手開始搶答為有效,數碼顯示屏顯示搶答時間倒計時和選手 號,在最后五秒揚聲器發生提示。如果主持人沒有按下開始鍵而選手就搶答視為 犯規,數碼顯示屏顯示犯規者的代號,揚聲器持續發生。主持人可按鍵結束,新 一輪搶答開始。 通過研究并在設計驗證后發現,采用單片機技術設計的搶答器與目前常用的 搶答器相比,首先,電路連接簡單,因為大多數功能單元都通過程序設計在單片 機內部,第二,工作性能可靠,抗干擾能力優于目前搶答器。所以本研究是一個 實用的工程設計,具有創新性。 搶答器是一種應用非常廣泛的設備,在各種競賽、搶答場合中,它能迅速、 客觀地分辨出最先獲得發言權的選手。早期的搶答器只由幾個三極管、可控硅、 發光管等組成,能通過發光管的指示辯認出選手號碼。 本設計利用at89c51單片機及外圍接口實現的搶答系統,利用單片機的定時 器/計數器定時和記數的原理,將軟、硬件有機地結合起來,使得系統能夠正確 地進行計時,同時使數碼管能夠正確地顯示時間和選手號碼。用開關做鍵盤輸出, 揚聲器發生提示。系統達到要求:在搶答中,只有開始后搶答才有效,如果在開 始搶答前搶答為無效;搶答限定時間和回答問題的時間可是在1-99s設定;可以 顯示是哪位選手有效搶答和無效搶答,正確按鍵后有音樂提示;搶答時間和回答 問題時間倒記時顯示,時間完后系統自動復位;按鍵鎖定,在有效狀態下,按鍵 無效非法。 本系統采用單片機作為整個控制核心。該系統通過開關電路八個按鍵輸入搶 答信號,利用一個數碼管來完成顯示功能,用按鍵來讓選手進行搶答,在數碼管 上顯示哪一組先答題的,從而實現整個搶答過程。本文主要介紹了單片機搶答器 設計及工作原理,以及它的實際用途。 通過這次設計,掌握 51 單片機的原理,了解簡單多功能搶答器組成原理, 初步掌握多功能搶答器的調整及測試方法,提高動手能力和排除故障的能力。同 時通過設計與裝配、調試,提高自己的動手能力,鞏固已學的理論知識,建立單 片機理論和實踐的結合,了解多功能搶答器各單元電路之間的關系及相互影響, 從而能正確設計、計算定時計數的各個單元電路。初步掌握多功能搶答器的調整 及測試方法。提高動手能力和排除故障的能力。 河南機電高等專科學校畢業設計 /論文 3 第 1 章 設計要求、方案比較及功能 1.1 設計要求、構思 本設計要求采用以 at89s51 單片機為主控芯片來設計一款應用方便、功能強 大的智能數字搶答器。利用所學單片機的知識來設計鎖存與顯示模塊、定時模塊、 報警模塊、非法搶答模塊、正確搶答模塊以及按鍵模塊等程序,并且用七段顯示 譯碼器與數碼管來實現顯示功能。在搶答中,只有開始后搶答才有效,如果在開 始搶答前搶答為無效。搶答限定時間和回答問題的時間可以在 199s 設定。可 以顯示是哪位選手有效搶答和無效搶答,正確按鍵后有音樂提示。搶答時間和回 答問題時間倒記時顯示,時間完后系統自動復位。搶答限定時間內使用錦囊回答 時間將加到 60s。按鍵鎖定,在有效狀態下,按鍵無效非法。 1.2 方案論證與比較 在知識比賽中,特別是做搶答題目的時候,在搶答過程中,為了知道哪一組 或哪一位選手先答題,必須要設計一個系統來完成這個任務。如果在搶答中,靠 視覺是很難判斷出哪組先答題。利用單片機系統來設計搶答器,使以上問題得以 解決,即使兩組的搶答時間相差幾微秒,也可分辨出哪組優先答題。本文主要介 紹了單片機搶答器設計及工作原理,以及它的實際用途。系統工作原理本系統采 用 at89c51 單片機作為核心。控制系統的四個模塊分別為:存儲模塊、顯示模塊、 聲音模塊、搶答開關模塊。該搶答器系統通過八個個按鍵輸入搶答信號;利用存 儲程序來完成軟件的設計;利用一個 4 位七段共陰數碼管來完成顯示功能。工作 時,用按鍵通過開關電路輸入各路的搶答信號,經單片機的處理,輸出控制信號, 控制 4 位七段共陰數碼管和喇叭工作。在數碼管上顯示哪一組先答題,從而實現 整個搶答過程。 與普通搶答器相比,本作品有以下幾方面優勢: 1、具有清零裝置和搶答控制,可由主持人操縱避免有人在主持人說“開始” 前提前搶答違反規則。 2、具有定時功能,在 30 秒內無人搶答表示所有參賽選手獲參賽隊對本題棄 權。 3、30 秒時仍無人搶答其報警電路工作表示搶答時間耗盡并禁止搶答。 河南機電高等專科學校畢業設計 /論文 4 第 2 章 搶答器的硬件系統設計 本設計分為硬件設計和軟件設計,這兩者相互結合,不可分離;從時間上看, 硬件設計的絕大部分工作量是在最初階段,到后期往往還要做一些修改。只要技 術準備充分,硬件設計的大返工是比較少的,軟件設計的任務貫徹始終,到中后 期基本上都是軟件設計任務,為了能夠達到搶答的公平、公正、合理,應該在主 持人發布搶答命令之前必須先設定搶答的時間,因而在編開始搶答前的程序得先 編寫設定時間的程序,當時間設好了之后,主持人按開始鍵發布搶答命令,若在 主持人未按開始鍵之前,有選手提前答題,則為違規搶答,蜂鳴器會發出警告聲, 并在顯示器上顯示犯規的選手編號。當有選手搶答成功,則程序打開定時中斷開 始倒計時,然后調用鍵盤掃描子程序,編寫鍵盤掃描程序,其他選手在此之后按 鍵無效。當在掃描到有人按下了搶答鍵,馬上關閉 t0、調用顯示程序、封鎖鍵盤。 隨著集成電路技術的飛速發展,各種功能很強的芯片不斷出現,使硬件電路的集 成度越來越高,硬件設計的工作量在整個項目中的所占的比重逐漸下降。為使硬 件電路設計盡可能合理,應注意以下幾方面: (1) 盡可能采用功能強的芯片,以簡化電路,功能強的芯片可以代替若干普 通芯片,隨著生產工藝的提高,新型芯片的的價格不斷下降,并不一定比若干普 通芯片價格的總和高。 (2) 留有設計余地。在設計硬件電路時,要考慮到將來修改擴展的方便。因 為很少有一錘定音的電路設計,如果現在不留余地,將來可能要為一點小小的修 改或擴展而被迫進行全面返工。 (3) 程序空間,選用片內程序空間足夠大的單片機,本設計采用 at89c51 單 片機。 (4) ram 空間,at89c51 內部 ram 不多,當要增強軟件數據處理功能時,往 往覺得不足。如果系統配置了外部 ram,則建議多留一些空間。如選用 8155 作 i/o 接口,就可以增強 256 字節 ram。如果有大批數據需要處理,則應配置足夠 的 ram,如 6264,62256 等。隨著軟件設計水平的提高,往往只要改變或增加軟 件中的數據處理算法,就可以使系統功能提高很多,而系統的硬件不必做任何更 換就使系統升級換代。只要在硬件電路設計初期考慮到這一點,就應該為系統將 來升級留足夠的 ram 空間,哪怕多設計一個 ram 的插座,暫時不要插芯片也好。 (5) i/o 端口:在樣機研制出來后進行現場試用時,往往會發現一些被忽視的問 題,而這些問題不是靠單純的軟件措施能夠解決掉的。如有些新的信號需要采集, 就必須增加輸入檢測端;有些物理量需要控制,就必須增加輸出端。如果在硬件 電路設計就預留出一些 i/o 端口,雖然當時空著沒用,那么用的時候就派上用場 了。 2.1 at89c51 的功能及簡介 at89c51 單片機是 atmal 公司 89 系列單片機的一種 8 位 flash 單片機。它最 大特點是片內含有 flash 存儲器,用途十分廣泛,特別是在生產便攜式商品,手 河南機電高等專科學校畢業設計 /論文 5 提式儀器等方面,有著十分廣泛的應用。 at89c51 單片機內部主要有以下部件:8031cpu、振蕩電路、總線控制部件、 中斷控制部件、片內 flash 存儲器、片內 ram、并行 i/o 接口、定時器和串行 i/o 接口 at89c51 是 89 系列單片機的標準型,它是與 msc-51 系列單片機兼容的。在 內部含有 4kb 或 8kb 可重復編程的 flash 存儲器,可進行 1000 次擦寫操作。全 靜態工作為 0-24mhz,有 3 級程序鎖存器,內部含有 128-256 字節的 ram,有 32 條可編程 i/o 口線,2-3 個 16 位定時/計數器,6-8 個中斷源,通用的串行接口, 低電壓空閑及電源下降方式。 at89c51 單片機內部由 cpu、4kb 的 fperom ,128b 的 ram,兩個 16 位的定 時/計數器 t0 和 t1,4 個 8 位的 i/o 端 p0、p1、p2、p3 等組成。單片微機內部 最核心的部分是 cpu。cpu 主要功能是產生各種控制信號,控制存儲器、輸入/輸 出端口的數據傳輸、數據的算術運算、邏輯運算以及位操作處理等,cpu 按其功 能可分為運算器和控制器兩部分。控制器由程序計數器 pc、指令儲存器、指令譯 碼器、實時控制與條件轉移邏輯電路等組成。它的功能是對來自存儲器中的指令 進行譯碼,通過實時控制電路,在規定的時刻發出各種操作所需的內部和外部的 控制信號,使各部分協調工作,完成指令所規定的操作。運算器由算術邏輯器部 件 alu、累加器 acc、暫存器、程序狀態字寄存器 psw,bcd 碼運算調整電路等組 成。 外部定 時元件 復位 中斷 電源 系統時鐘 rom cpu 定時/計數器 串行 i/o 口 并行 i/o 口 ram 圖 2.1 at89c51 單片機的內部結構圖 為了提高數據處理和位操作功能,片內增加了一個通用寄存器 b 和一些專用 寄存器,還增加了位處理邏輯電路的功能。其內部結構如圖 2.1 所示。 at89c51 的主要性能包括:at89c51 與 mcs51 控制器系列產品兼容,片內有 4k 可在線重復編程閃速電擦除存儲器(flash memory) ,存儲器可循環寫入/擦 除 1000 次;存儲器數據保存時間可達 10 年;工作電壓范圍寬:vcc 可由 2.7v 河南機電高等專科學校畢業設計 /論文 6 到 6v;全靜態工作可由 0hz 到 16mhz;程序存儲器具有 3 級鎖存保護;128*8 位 內部 ram;32 條可編程 i/o 線;兩個 16 位定時器/計數器;中斷結構具有 5 個中 斷源和 2 個中斷優先級;可編程全雙工串行通信;空閑狀態維持低功耗和掉電狀 態保存存儲內容。 2.1.1 at89c51 的特殊功能寄存器 特殊功能寄存器也稱專用寄存器,是具有特殊功能的所有寄存器的集合,簡 稱 sfr(special function register) 。特殊功能寄存器共含有 22 個不同寄存器。 它們的地址分配在 80hffh 中,即在 ram 地址中。這些寄存器的名稱和地址見 表 1.1。 表 1.1 at89c51 特殊功能寄存器列表 符 號地 址注 釋 *acce0h累加器 *bf0h乘法寄存器 *pswd0h程序狀態字 sp81h堆棧指針 dpl82h數據存儲器指針低 8 位 dph83h數據存儲器指針高 8 位 *iea8h中斷允許控制器 *ipd8h中斷優先控制器 *p080h端口 0 *p190h端口 1 *p2a0h端口 2 *p3b0h端口 3 pcon87h電源控制及波特率選擇 *scon98h串行口控制器 sbuf99h串行數據緩沖器 *tcon88h定時器控制 tmod89h定時器方式選擇 tl08ah定時器 0 低 8 位 tl18bh定時器 1 低 8 位 th08ch定時器 0 低 8 位 th18dh定時器 1 高 8 位 注:帶*號的特殊功能寄存器都是可以位尋址的寄存器 雖然特殊功能寄存器地址在 80hffh 之中,但在 80hffh 的地址單元中, 不是所有的單元都被特殊功能寄存器占用,未被占用的單元,其內容是不確定的, 如果對這些單元進行操作,得到的是一些隨機數,而寫入則無效。所以,用戶編 程時不應該將數據寫入這些未確定的地址單元,它們是公司留待將來開發新產品 時使用的。 2.2 搶答器系統的主要功能 本系統是借用單片機采用模塊化設計的八路搶答器,包括 8 路搶答按紐、計 河南機電高等專科學校畢業設計 /論文 7 時顯示、提示功能等(根據需要可另設或多設相關功能) 、開始與結束控制按鈕、 時限設定、各種相關顯示調控功能等(根據需要也可另設或多設相關功能) 。 參賽者系統,除享有搶答按紐的權利功能外,還有人性化的提示功能和時間 提示功能,也可設定由主控控制在參賽者終端表現的趣味性功能等;主控系統的 控制按鈕做開始與結束控制,根據活動參賽者的層次,對提前掄答者的行為設定 為非法或阻隔,若設有非法搶答控制功能時,在主控處帶有公示性顯示的非法掄 答者的臺位號,對搶答限時及回答問題限時設為倒計時,并有顯示提示。 系統的主要功能模塊方框圖如圖 2.2 所示。 at89c51 單片機 4 位 七段 數碼 管顯 示 聲音電路= 8 路搶答 按鍵輸入 復位電路 開始、結束 按鍵輸入 加一、減一 按鍵輸入 時鐘 圖 2.2 系統主要功能模塊 本系統采用模塊化設計的八路搶答器,在搶答比賽中廣泛應用,各組分別有 一個搶答按鈕。一共有 8 個按鍵輸入,分別對應 8 路選手的搶答按鍵。 主持人有開始和結束鍵。在后臺主持人可以修改,搶答時間和選手回答問題 的時間設置,原始狀態下搶答時間為 20s,回答問題時間為 30s。通過加鍵和減 鍵修改上述時間,改完后結束鍵確定。新時間開始有效,主持人按鍵開始后,選 手開始搶答為有效,數碼顯示屏顯示搶答時間倒計時和選手號,在最后五秒揚聲 器發生提示。如果主持人沒有按下開始鍵而選手就搶答視為犯規,數碼顯示屏顯 示犯規者的代號,揚聲器持續發生。主持人可按鍵結束,新一輪搶答開始。 單片機是整個搶答器的核心,內部電路設計用匯編語言編寫。它完成了時間 參數的設定,搶按號碼的譯碼,保存;顯示;輸出,搶按及答題倒計時功能等。 本設計中,有一個共陰的數碼管組,四個數碼管。其中兩個顯示時間,一個 空位,一個顯示搶答號碼。主持人依次按下復位鍵(reset) ,開始鍵后開始搶答。 可以搶按:超時數碼管顯示“fff” ,當搶按超過規定時間或答題超過規定時間后 數碼管顯示“fff” 。若有選手在規定時間內搶按成功,則可以答題,數碼管顯示 河南機電高等專科學校畢業設計 /論文 8 搶答時間的同時也顯示選手號碼。若在按開始鍵前搶答表示違規,數碼管顯示 “ff”并顯示選手號碼。 2.3 時鐘頻率電路的設計 單片機必須在時鐘的驅動下才能工作。在單片機內部有一個時鐘振蕩電路, 只需要外接一個振蕩源就能產生一定的時鐘信號送到單片機內部的各個單元,決 定單片機的工作速度。時鐘電路如圖 2.3 所示。 圖 2.3 外部振蕩源電路 一般選用石英晶體振蕩器。此電路在加電大約延遲 10ms 后振蕩器起振,在 xtal2 引腳產生幅度為 3v 左右的正弦波時鐘信號,其振蕩頻率主要由石英晶振的 頻率確定。電路中兩個電容 c1,c2 的作用有兩個:一是幫助振蕩器起振;二是 對振蕩器的頻率進行微調。c1,c2 的典型值為 20pf。 單片機在工作時,由內部振蕩器產生或由外直接輸入的送至內部控制邏輯單 元的時鐘信號的周期稱為時鐘周期。其大小是時鐘信號頻率的倒數,常用 fosc表 示。圖中時鐘頻率為 12mhz,即 fosc=12mhz,則時鐘周期為 1/12s。 2.4 復位電路的設計 單片機的第 9 腳 rst 為硬件復位端,只要將該端持續 4 個機器周期的高電平 即可實現復位,復位后單片機的各狀態都恢復到初始化狀態,其電路圖如圖 2.4 所示: 圖 2.4 復位電路 河南機電高等專科學校畢業設計 /論文 9 由按鍵 reset1 以及電解電容 c3、電阻 r2 構成按鍵及上電復位電路。由于單 片機是高電平復位,所以當按鍵 reset1 按下時候,單片機的 9 腳 reset 管腳處 于高電平,此時單片機處于復位狀態。當上電后,由于電容的緩慢充電,單片機 的 9 腳電壓逐步由高向低轉化,經過一段時間后,單片機的 9 腳處于穩定的低電 平狀態,此時單片機上電復位完畢,系統程序從 0000h 開始執行。 值得注意的是,在設計當中使用到了硬件復位和軟件復位兩種功能,由上面 的硬件復位后的各狀態可知寄存器及存儲器的值都恢復到了初始值,而前面的功 能介紹中提到了倒計時時間的記憶功能,該功能的實現的前提條件就是不能對單 片機進行硬件復位,所以設定了軟復位功能。軟復位實際上就是當程序執行完畢 之后,將程序指針通過一條跳轉指令讓它跳轉到程序執行的起始地址。 2.5 顯示電路的設計 顯示功能與硬件關系極大,當硬件固定后,如何在不引起操作者誤解的前提 下提供盡可能豐富的信息,全靠軟件來解決。 在這里我們使用的是七段數碼管顯示,通常在顯示上我們采用的方法一般包 括兩種:一種是靜態顯示,一種是動態顯示。其中靜態顯示的特點是顯示穩定不 閃爍,程序編寫簡單,但占用端口資源多;動態顯示的特點是顯示穩定性沒靜態 好,程序編寫復雜,但是相對靜態顯示而言占用端口資源少。在本設計中根據實 際情況采用的是動態顯示方法。 通過查表法,將其在數碼管上顯示出來,其中 p0 口為字型碼輸入端,p2 口 低 3 位為字選段輸入端。在這里我們通過查表將字型碼送給 7 段數碼管顯示的數 字,數碼管顯示原理如下: mov a,r3 movc a,a+dptr mov p2,#0feh mov p0,a acall delay mov dptr,#dat2 mov a,r5 movc a,a+dptr mov p2,#0fdh mov p0,a acall delay mov a,r4 movc a,a+dptr mov p2,#0fbh mov p0,a acall delay ret 4 位七段數碼管顯示電路如圖 2.5 所示。 河南機電高等專科學校畢業設計 /論文 10 圖 2.5 共陰極數碼管 數碼管采用的是 4 位七段共陰數碼管,其中 ah 段分別接到單片機的 p0 口, 由單片機輸出的 p0 口數據來決定段碼值,位選碼 com1、com3、com4 分別接到單 片機的 p2.0、p2.1、p2.2,由單片機來決定當前該顯示的是哪一位。在圖中還有 八個 1k 的電阻,連接在 p0 口上,用作 p0 口的上拉電阻,保證 p0 口沒有數據輸 出時候處于高電平狀態。 2.6 鍵盤掃描電路的設計 鍵盤是人與單片機打交道的主要設備。關于鍵盤硬件電路的設計方法也 可以在文獻和書籍中找到,配合各種不同的硬件電路,這些書籍中一般也提供了 相應的鍵盤掃描程序。站在系統監控軟件設計的立場上來看,僅僅完成鍵盤掃描, 讀取當前時刻的鍵盤狀態是不夠的,還有不少問題需要妥善解決,否則,人們在 操作鍵盤就容易引起誤操作和操作失控現象。在單片機應用中鍵盤用得最多的形 式是獨立鍵盤及矩陣鍵盤。 它們各有自己的特點,其中獨立鍵盤硬件電路簡單,而且在程序設計上也不 復雜,一般用在對硬件電路要求不高的簡單電路中;矩陣鍵盤與獨立鍵盤有很大 區別,首先在硬件電路上它要比獨立鍵盤復雜得多,而且在程序算法上比它要煩 瑣,但它在節省端口資源上有優勢得多,因此它更適合于多按鍵電路。其次就是 消除在按鍵過程中產生的“毛刺”現象。這里采用最常用的方法,即延時重復掃 描法,延時法的原理為:因為“毛刺”脈沖一般持續時間短,約為幾 ms,而我們 按鍵的時間一般遠遠大于這個時間,所以當單片機檢測到有按鍵動靜后再延時一 段時間(這里我們取 10ms)后再判斷此電平是否保持原狀態,如果是則為有效按鍵, 否則無效。 在本文設計中采用了獨立鍵盤的方式,本設計中有 8 個搶答按鍵輸入,一個 開始按鍵、一個結束按鍵,此外還有搶答時間調整鍵、回答時間調整鍵,加一按 鍵、減一按鍵各一個。如圖 2.6 所示。 河南機電高等專科學校畢業設計 /論文 11 圖 2.6 搶答按鍵及調整按鍵 8 個搶答按鍵分別接入單片機的 p1.0p1.7 端口,單片機通過讀取 p1.0p1.7 的值來判斷當前輸入的是 8 個搶答按鍵中的哪一個。搶答時間調整和回答時間調 整接到單片機的 p3.3 和 p3.4 接口,加一及減一按鍵接到單片機的 p3.5 和 p3.6 接口。 圖 2.7 開始、結束按鍵 在圖 2.7 中,開始及結束按鍵接到單片機的 10、11 腳,這里用到了單片機 10、11 腳復合功能中的 io 端口功能,單片機通過讀取 10、11 腳的 p3.0、p3.1 的 io 端口值來判斷當前是否處于搶答開始狀態或搶答結束狀態。 按鍵的觸點在閉合和斷開時均會產生抖動,這時觸點的邏輯電平是不穩定的, 如不妥善處理,將會引起按鍵命令的錯誤執行或重復執行。現在一般均用軟件延 時的方法來避開抖動階段,這一延時過程一般大于 5ms,例如取 10-20ms。如果 監控程序中的讀鍵操作安排在主程序(后臺程序)或鍵盤中斷(外部中斷)子程 序中,則該延時子程序便可直接插入讀鍵過程中。如果讀鍵過程安排在定時中斷 子程序中,就可省去專門的延時子程序,利用兩次定時中斷的時間間隔來完成抖 動處理。 k1k8 八個按鍵的輸入電平靠 74hc30 輸入與非門和 74ls04 反向器組成的電 路改變輸入電平。圖 2.8 中電路就是由一個 74hc30 輸入與非門和 74ls04 反向器 組成的去抖電路。 河南機電高等專科學校畢業設計 /論文 12 圖 2.8 去抖電路 2.7 發聲電路 我們知道,聲音的頻譜范圍約在幾十到幾千赫茲,若能利用程序來控制單片 機某個口線的“高”電平或低電平,則在該口線上就能產生一定頻率的矩形波, 接上喇叭就能發出一定頻率的聲音,若再利用延時程序控制“高” “低”電平的 持續時間,就能改變輸出頻率,從而改變音調,使喇叭發出不同的聲音。 本文設計如圖 2.9 所示。圖中單片機的 14 腳輸出具有復合功能,此處用到 了單片機 17 腳的 io 端口功能,單片機通過內部定時器的操作實現交替變換的波 形輸出驅動揚聲器發聲。 圖 2.9 發聲電路 2.8 系統復位 使 cpu 進入初始狀態,從 0000h 地址開始執行程序的過程叫系統復位。從實 現系統復位的方法來看,系統復位可分為硬件復位和軟件復位。硬件復位必須通 過 cpu 外部的硬件電路給 cpu 的 reset 端加上足夠時間的高電位才能實現。上電 復位,人工按鈕復位和硬件看門狗復位均為硬件復位。硬件復位后,各專用寄存 器的狀態均被初始化,且對片內通用寄存器的內容沒有影響。但是,硬件復位還 能自動清除中斷激活標志,使中斷系統能夠正常工作,這樣一個事實卻容易為不 少編碼人員所忽視。軟件復位就是用一系列指令來模擬硬件復位功能,最后通過 轉移指令使程序從 0000h 地址開始執行。對各專用寄存器的復位操作是容易的, 也沒有必要完全模擬,可根據實際需要去主程序初始化過程中完成。而對中斷激 活標志的清除工作常被遺忘,因為它沒有明確的位地址可供編程。有的編程人員 河南機電高等專科學校畢業設計 /論文 13 用 020000(ljmp 0000h)作為軟件陷阱,認為直接轉向 0000h 地址就完成了軟件 復位,就是這類錯誤的典型代表。軟件復位是使用軟件陷阱和軟件看門狗后必須 進行的工作,這時程序出錯完全有可能發生在中斷子程序中,中斷激活標志已置 位,它將阻止同級中斷響應。由于軟件看門是高級中斷,它將阻止說要中斷響應, 由此可見清除中斷激活標志的重要性。 在所有的指令中,只有 reti 指令能夠清除中斷激活標志。出錯處理程序 err 主要完成這一功能,其他的善后工作交由復位后的系統去完成。 程序一般先關中斷,以便后續處理能順利進行,然后用兩個 reti 指令代替 兩個 ljmp 指令,從而清除了兩級中斷激活標志。有相應軟件陷阱捕捉來的程序 可能沒有全部激活兩個標志,這也無妨。 有復位時系統的歷史狀況,可將復位分為“冷啟動”和“熱啟動” 。 “冷啟 動”時,系統的狀態全部無效,進行徹底的初始化操作;而“熱啟動”時,對系 統的當前狀態進行修復和有選擇的初始化。系統初次上電投入運行時,必須是 “冷啟動” ,以后由抗干擾措施引起的復位操作一般均為“熱啟動”初次上電投 入運行時,必須是“冷啟動” ,以后由抗干擾措施引起的復位操作一般均為“熱 啟動” 。為了使系統能正確決定采用何種啟動方式,常用上電標志來區分,如圖 2.10 所示。 圖 2.10 系統復位策略圖 2.9 器件選擇方案及詳細清單 河南機電高等專科學校畢業設計 /論文 14 微控制器選用 atmal 公司生產的 at89c51,該芯片貨源充足,并且價格也比 較便宜。如表 2.2 所示。 表 2.2 器件選型方案的詳細清單 器件名稱規格型號數量 微處理器at86c511 74ls041芯片 74hc301 電阻3wtt10k8 電容20pf3 晶振12mhz1 按鈕11 7 段數碼管7seg-mpx4-ca4 揚聲器1 河南機電高等專科學校畢業設計 /論文 15 第 3 章 搶答器軟件系統的設計 本章是搶答器的軟件設計,實現搶答功能主要是通過編寫程序的方法集成在 at89c51 內部。將程序下載到硬件電路中,實現搶答功能。 3.1 主程序系統圖 系統初始化模塊 按鍵模塊 非 法 搶 答 模 塊 正 確 搶 答 模 塊 調 整 搶 答 時 間 調 整 回 答 時 間 模 塊數碼顯示模塊 圖 3.1 主程序系統圖 3.2 軟件任務分析 軟件任務分析和硬件電路設計結合進行,哪些功能由硬件完成,哪些任務由 軟件完成,在硬件電路設計基本定型后,也就基本上決定下來了。 軟件任務分析環節是為軟件設計做一個總體規劃。從軟件的功能來看可分為 兩大類:一類是執行軟件,它能完成各種實質性的功能,如測量,計算,顯示, 打印,輸出控制和通信等,另一類是監控軟件,它是專門用來協調各執行模塊和 操作者的關系,在系統軟件中充當組織調度角色的軟件。這兩類軟件的設計方法 各有特色,執行軟件的設計偏重算法效率,與硬件關系密切,千變萬化。 軟件任務分析時,應將各執行模塊一一列出,并為每一個執行模塊進行功能 定義和接口定義(輸入輸出定義) 。在各執行模塊進行定義時,將要牽扯到的數 據結構和數據類型問題也一并規劃好。 河南機電高等專科學校畢業設計 /論文 16 各執行模塊規劃好后,就可以監控程序了。首先根據系統功能和鍵盤設置選 擇一種最適合的監控程序結構。相對來講,執行模塊任務明確單純,比較容易編 程,而監控程序較易出問題。這如同當一名操作工人比較容易,而當一個廠長就 比較難了。 軟件任務分析的另一個內容是如何安排監控軟件和各執行模塊。整個系統軟 件可分為后臺程序(背景程序)和前臺程序。后臺程序指主程序及其調用的子程 序,這類程序對實時性要求不是太高,延誤幾十 ms 甚至幾百 ms 也沒關系,故通 常將監控程序(鍵盤解釋程序) ,顯示程序和打印程序等與操作者打交道的程序 放在后臺程序中執行;而前臺程序安排一些實時性要求較高的內容,如定時系統 和外部中斷(如掉電中斷) 。也可以將全部程序均安排在前臺,后臺程序為“使 系統進入睡眠狀態” ,以利于系統節電和抗干擾。 3.2.1 搶答器設計中的定時電路 由節目主持人根據搶答題的難易程度,設定一次搶答的時間,通過預置時間 電路對計數器進行預置,計數器的時鐘脈沖由秒脈沖電路提供。可預置時間的電 路選用十進制同步加減計數器 74ls192 進行設計,具體電路如圖 3.2 所示。本設 計是以 555 構成震蕩電路,由 74ls192 來充當計數器,構成搶答器的倒計時電路。 該電路簡單,無需用到晶振,芯片都是市場上容易購得的。設計功能完善,能實 現直接清零、啟動。 圖 3.2 定時電路 3.2.2 搶答器設計中的報警電路 由 555 定時器和三極管構成的報警電路如圖 3.3 所示。其中 555 構成多諧振 蕩器,其輸出信號經三極管推動揚聲器。pr 為控制信號,當 pr 為高電平時,多 諧振蕩器工作,反之,電路停振。 河南機電高等專科學校畢業設計 /論文 17 圖 3.3 報警電路 3.2.3 搶答器設計中的時序控制電路 時序控制電路是搶答器設計的關鍵,它要完成以下三項功能: 1、主持人將控制開關撥到“開始“位置時,揚聲器發聲,搶答電路和定時電路進 人正常搶答工作狀態。 2、當參賽選手按動搶答鍵時,揚聲器發聲,搶答電路和定時電路停止工作。 3、當設定的搶答時間到,無人搶答時,揚聲器發聲,同時搶答電路和定時電路 停止工作。 圖 3.4 時序控制電路 根據上面的功能要求,設計的時序控制電路如圖 3.4 所示。圖中,門 g1 的 作用是控制時鐘信號 cp 的放行與禁止,門 g2 的作用是控制 74ls148 的輸人使能 端 。圖 4-3 的工作原理是:主持人控制開關從“清除“位置撥到“開始“位置時, 來自于圖 4-1 中的 74ls279 的輸出 1q=0,經 g3 反相, a1,則時鐘信號 cp 能 夠加到 74ls192 的 cpd 時鐘輸入端,定時電路進行遞減計時。同時,在定時時間 未到時,則“定時到信號“為 1,門 g2 的輸出 st=0,使 74ls148 處于正常工作狀 態,從而實現功能 1 的要求。當選手在定時時間內按動搶答鍵時,1q1,經 g3 反相, a0,封鎖 cp 信號,定時器處于保持工作狀態;同時,門 g2 的輸出 st=1,74ls148 處于禁止工作狀態,從而實現功能 2 的要求。當定時時間到時, 則“定時到信號“為 0,st=1,74ls148 處于禁止工作狀態,禁止選手進行搶答。 河南機電高等專科學校畢業設計 /論文 18 同時, 門 g1 處于關門狀態,封鎖 cp 信號,使定時電路保持 00 狀態不變,從而 實現功能 3 的要求。集成單穩觸發器 74ls121 用于控制報警電路及發聲的時間。 3.3 程序流程圖程序流程圖 在本設計中包括了以下主要的程序:主程序,查詢程序,非法搶答程序,搶 答時間調整程序,回答時間調整程序,倒計時程序,正常搶答處理程序,犯規處 理程序,顯示及發聲程序。主流程圖如 3.5 所示: 顯示 fff 開始鍵 加一鍵 減一鍵 回答 時間 調整搶 答時間 去抖動 非法搶 答處理 顯示 犯規 正常 搶答 顯示搶答 號并倒計時 y y y 初始化 圖 3.5 程序流程圖 河南機電高等專科學校畢業設計 /論文 19 結論/展望 這次設計的八路多功能搶答器采用了通用的電子元器件,利用at89c51單 片機及外圍接口實現搶答系統,利用單片機的定時器/計數器定時和記數的原理, 將軟、硬件有機地結合起來。理論聯系實踐,體現出大學生動手能力。通過查資 料和搜集有關的文獻,培養了自學能力和動手能力。并且由原先的被動的接受知 識轉換為主動的尋求知識,這可以說是學習方法上的一個很大的突破。在以往的 傳統的學習模式下,我可能會記住很多的書本知識,但是通過畢業論文,我學會 了如何將學到的知識轉化為自己的東西,學會了怎么更好的處理知識和實踐相結 合的問題。把握重點、攻克難關,學到用到、活學活用。在設計過程中由于時間 倉促有很多地方難免存在不足之處,硬件設計已經完成,在軟件設計中有些功能 還尚未開發出來。但在以后的工作中,我會嚴格要求自己,追求完美。 整個設計通過了軟件和硬件上的調試、仿真。我想這對于自己以后的學習和 工作都會有很大的幫助的。在這次設計中遇到了很多實際性的問題,在實際設計 中才發現,書本上理論性的東西與在實際運用中的還是有一定的出入的,所以有 些問題不但要深入地理解,而且要不斷地更正以前的錯誤思維。對于單片機設計, 其硬件電路是比較簡單的,主要是解決程序設計中的問題。而程序設計是一個很 靈活的東西,它反映了你解決問題的邏輯思維和創新能力。它才是一個設計的靈 魂所在。因此在整個設計過程中大部分時間是用在程序上面的。很多子程序是可 以借鑒書本上的,但怎樣銜接各個子程序才是關鍵的問題所在,這需要對單片機 的結構很熟悉。因此可以說單片機的設計是軟件和硬件的結合,二者是密不可分 的。 但是,通過這次設計我也發現自己的很多不足之處。在設計過程中我發現自 己考慮問題很不全面,自己的專業知識掌握的很不牢固,所掌握的計算機應用軟 件還不夠多,我希望自己的這些不足之處能在今后的工作和學習中得到改善。而 且,通過這次設計,我懂得了學習的重要性,學會了堅持和努力,這將為以后的 學習做出了最好的榜樣! 回頭再看看該設計,還可以將設計的擴展功能增強:1、可以設計聲控裝置, 在主持人說開始時,系統自動完成清零并開始計時的功能。2、增加記分模塊, 可以設定初始積分,并記錄每次搶答完成后的積分。3、將搶答按鍵用無線實現, 如紅外線,使搶答者可以遠距離進行搶答,并簡化按鍵模塊的線路布置。如果提 供相應的器材及時間上的寬限,一定可以完成上述擴展功能,進一步完善作品。 河南機電高等專科學校畢業設計 /論文 20 致 謝 經過近幾個月的艱苦奮戰,我的畢業設計已接近尾聲。在這幾個月的時間里, 我衷心感謝我的指導老師楊老師,在課題選定、理論指導和方案的論證上,楊老 師對我精心的指導和耐心的鼓勵,使我能夠堅持到底,畢業設計有了圓滿的結果。 他淵博的知識,深邃的思想,嚴謹的治學風格、平易近人的處事態度和幽默風趣 的話語,讓我在學習知識和解決問題時感到無比的輕松和愉快。至此論文定稿之 際,對楊老師表示衷心的感謝! 感謝老師能在繁忙之中抽出時間為我提供耐心的 指導,幫我們解決在設計過程中遇到的種種問題。 在做畢業設計期間,我還有幸得到其它老師的熱心指導和同學們的大力幫助, 正因為有了他們,我才能順利完成畢業設計和論文。在這里一并向他們表示感謝! 最后,再次向各位領導、各位老師致以崇高的敬意和最衷心的感謝!并真心的祝 愿老師們工作順利,身體健康。同學們都能找到一的滿意的工作! 河南機電高等專科學校畢業設計 /論文 21 參考文獻 1 程相波,衛安軍.基于 mcs-51 單片機的八路搶答器設計方法研究j.北京工業職業技術學院學報, 2007,(2). 2林凌,李剛,丁茹,李小霞.新型單片機接口器件與技術m.西安:西安電子科技大學出版社,2005 年. 3李增生.對搶答器的改進j.電子制作,2000,(12). 4馬軻瀛.八路數字搶答器系統j.華商,2007,(23). 5高偉.at89 單片機原理及應用m.北京:國防工業出版社,2008 年. 6蔡朝陽.單片機控制實習與專題制作m.北京:北京航空航天大學出版社,2006 年. 7楊凌霄.微型計算機原理及應用m.江蘇:中國礦業大學出版社,2004 年. 8丁建偉.搶答器電路設計j.蘭州工業高等專科學校學報,2008,(04). 9 胡學海.單片機原理及應用系統設計m.北京:北京電子工業出版社,2005 年. 10何書森,何華斌.實用電子線路設計速成m.福州:福建科學技術出版社,2006 11李國厚,王春陽.自動化專業英語m.北京:北京大學出版社,2006 12楊金巖,鄭應強,張振仁8051 單片機數據傳輸接口擴展技術與應用實例人民郵電出版社.2005 河南機電高等專科學校畢業設計 /論文 22 附 錄 附錄 a 系統原理圖 附圖 a 系統原理圖 附錄 b 程序清單 ok equ 20h ;搶答開始標志位 ring equ 22h ;響鈴標志位 data0 equ 36h ;搶答按鍵口數據存放地址 org 0000h ajmp main org 0003h ajmp intt0 org 000bh ajmp t0int org 001bh ajmp t1int org 0040h main: mov r1,#20 ;初設搶答時間為 20s mov r2,#30 ;初設答題時間為 30s 河南機電高等專科學校畢業設計 /論文 23 mov 38h,#60 ;啟用錦囊時間從 60s 倒計時 mov tmod,#11h ;設置未定時器/模式 1 mov th0,#0f0h mov tl0,#0ffh ;越高發聲頻率越高,越尖 mov th1,#3ch mov tl1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 股權轉讓合同男方提出解除合作
- 中小企業合同保障宣言2025
- 山東省單縣2025屆數學五年級第二學期期末復習檢測試題含答案
- 內蒙古自治區鄂爾多斯市達標名校2025屆初三下期第一次月考試題含解析
- 井陘礦區2025年數學五下期末質量跟蹤監視模擬試題含答案
- 智慧農業技術農業領域的新篇章與新機遇
- 農村集體土地承包合同示例
- 統編版二年級語文下冊名校真題卷(含答案)
- 無子女雙方協商離婚協議書
- 2025預制管樁購買合同書
- 比例尺單元測試卷及答案
- 北京市朝陽區2025屆高三下學期一模試題 數學 含答案
- 運輸公司安全管理制度
- 2025屆吉林省長春市高三下學期4月三模政治試題(原卷版+解析版)
- 2025屆江蘇省揚州市中考一模語文試題(含答案)
- 2025年河北省唐山市中考一模道德與法治試題(含答案)
- 2025年一級注冊計量師考試題庫大全及答案
- 衛生院全國預防接種日宣傳活動總結(8篇)
- 2024國家電投集團中國電力招聘(22人)筆試參考題庫附帶答案詳解
- 數學和化學融合課件
- 通信汛期安全培訓
評論
0/150
提交評論