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

正文內(nèi)容

基于at89c51單片機(jī)的八路搶答器的設(shè)計(jì)(編輯修改稿)

2024-12-16 03:55 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 件組成:一個(gè) 8 位 CPU; 128B 內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM,包括 21 個(gè)特殊功能寄存器; 4KB( 4096 個(gè)單元)的在線可編程 Flash 片內(nèi)程序存儲(chǔ)器 FlashROM; 4 個(gè) 8 位并行輸入 /輸出口(即 I/O 口) P0、 P P P3口; 1 個(gè)可編程全雙工的異步串行口; 2 個(gè) 16 位定時(shí)器 /計(jì)數(shù)器; 5 個(gè)中斷源、 2個(gè)中斷優(yōu)先級(jí);時(shí)鐘電路,振蕩頻率在 033MHz。 AT89C51 單片機(jī)和 MCS51 指令完 全兼容,工作的電壓范圍在 4V 到 ,壽命: 1000 次寫 /擦循環(huán) [1]。圖 32為單片機(jī)內(nèi)部結(jié)構(gòu)。 圖 32 AT89C51內(nèi)部結(jié)構(gòu)圖 6 單片機(jī)的引腳定義 圖 33 AT89C51單片機(jī)引腳 圖 P0 端口( ): P0 接口是一個(gè)八位開路雙向輸入輸出端口。因?yàn)閱纹瑱C(jī)內(nèi)部沒有接入上拉電阻,所以使用 P0 口時(shí)需要在外部接入上拉電阻。當(dāng)端口處于高電平“ 1”的時(shí)候,外部數(shù)據(jù)信號(hào)才能輸入進(jìn)單片機(jī)。當(dāng)然 P0 口也具有第二功能可以作為地址總線和數(shù)據(jù)總線使用,作此功能是不需要接上拉電阻。在此設(shè)計(jì)中 P0 口 作為接入四位七段共陰極數(shù)碼管的顯示電路。 P1 端口( ): P1 口 也 是 一個(gè)雙向的八 位 輸入輸出 口, 因?yàn)閮?nèi)部已經(jīng)接入上拉電阻,所以在應(yīng)用的時(shí)不必接上拉電阻。 P1 口 可以帶動(dòng)四個(gè) lsttl 負(fù)載 。作為輸入口使用時(shí)候,與 P0 口一樣需要使接口處于高電平“ 1” , 才能讀取外部數(shù)據(jù) 。 做第二功能時(shí),其中 可作為 MOSI 用, 當(dāng)做 MISO, 當(dāng)做 SCK用。 P1 口在本次設(shè)計(jì)中接入按鍵電路, 分別接入八個(gè)按鍵。 P2 端口( ): P2 口 也是一個(gè)不需要外接上拉電阻的八位端口 。 端口置“ 1”時(shí)才可以輸入信號(hào) 。 基本用法和 P1 口類似。作為第二功能時(shí) P2 可以作為 出地址 總線 的高八位。 P3 端口( ): P3 端口在此設(shè)計(jì)中 端口接入開始按鍵, 端口接入復(fù)位按鍵, 端口作為搶答時(shí)間加鍵, 端口作為搶答時(shí)間減鍵, 和 端口分別作為答題時(shí)間加鍵和答題時(shí)間減鍵。揚(yáng)聲器接在 端口。 7 功能電路的介紹 時(shí)鐘頻率電路的設(shè)計(jì) 單片機(jī)的工作過程要對(duì)各種指令在時(shí)間上有明確的次序,這種時(shí)間次序也叫做時(shí)序,所以單片機(jī)需要產(chǎn)生一個(gè)時(shí)鐘信號(hào)。時(shí)鐘 電路如圖 34 所示。 圖 34 時(shí)鐘 電路 產(chǎn)生時(shí)鐘信號(hào)的方式是: 在 XTAL1( 18 腳)和 XTAL2( 19 腳) 引腳 接入一個(gè)振蕩電路 。 用兩個(gè) 30PF 電容的 作用是 開啟 振蕩器 和 調(diào) 節(jié) 振蕩頻率。 接入的晶振fosc 來確定時(shí)鐘周期,此時(shí)產(chǎn)生的信號(hào)為單片機(jī)最基本的時(shí)間單位,即時(shí)鐘周期,用 振蕩頻率的 的倒數(shù) 代表它的 大小 ( 1/fosc) 。 復(fù)位電路的設(shè)計(jì) 復(fù)位電路在單片機(jī)設(shè)計(jì)中是一個(gè)必不可少的部分。單片機(jī)在剛開始運(yùn)行的時(shí)候需要進(jìn)行一次復(fù)位,以確保整個(gè)系統(tǒng)電路在要開始運(yùn)行時(shí)保持一種最初狀態(tài),保證一開始 的運(yùn)行 正常 。 AT89C51 單片機(jī) 的第九 引腳 RESET,當(dāng) 這個(gè) 引腳接收到兩個(gè)機(jī)器周期( 24 個(gè)振蕩脈沖周期)的高電平時(shí), 就會(huì) 發(fā)生復(fù)位。復(fù)位電路 的實(shí)現(xiàn)方式有很多種方式。常見的方式有上電、手動(dòng)和自動(dòng)復(fù)位三種。 電路連接圖如圖 35 所示: 圖 35 復(fù)位電路 8 顯示電路的設(shè)計(jì) 我在本設(shè)計(jì)中采用的是動(dòng)態(tài)顯示方法。 數(shù)碼管選 用 四位七段共陰極 數(shù)碼管,接在 P2 端 口 , 查詢顯示程序利用 P0 口做段選碼口輸出 P2 低 3 位做位選碼輸出,當(dāng)為低電平則能驅(qū)動(dòng)數(shù)碼管使其顯示數(shù)字。在 +5V 電壓下接 10k 的電阻,保證正常壓降。 4 位數(shù)碼管動(dòng)態(tài)顯示原理與實(shí)現(xiàn): 端口接動(dòng)態(tài)數(shù)碼管的字形碼筆段, 端口接動(dòng)態(tài)數(shù)碼管的數(shù)位選擇端。 4 位數(shù)碼管的 8 個(gè)顯示 a,b,c,d,e,f,g,dp 的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極 COM 增加位選端控制電路,位選端由獨(dú)立的 I/O 線控制,當(dāng)動(dòng)態(tài)顯示能夠節(jié)約大量的 I/O 口,而且功耗較低。 通過查表法,將其在數(shù)碼管上顯示出來,其中 P0 口為字型碼輸入端, P2 口低 3 位為字選段輸入端。在這里我們通過查表將字型碼送給 7 段數(shù)碼管顯示, 4位七段數(shù)碼管顯示電路如圖 36 所示。 圖 36 數(shù)碼管顯示電路 圖 36 中數(shù)碼管采用的是 4 位七段共陰極數(shù)碼管,其中 AG 段分別接到單片機(jī)的 P0 口,由單片機(jī)輸出的 P0 口數(shù)據(jù)來決定段碼值,位選碼 COM COMCOM4 分別接到單片機(jī)的 、 、 ,由單片機(jī)來決定當(dāng)前該顯示的是哪一位。因?yàn)?P0 口在內(nèi)部沒有接上拉電阻,所以我們?cè)谕獠侩娐分薪?8 個(gè) 1K 的電阻用作 P0 口的上拉電阻,以此來在 P0 口無數(shù)據(jù)輸出時(shí),處于高電平狀態(tài)。 鍵盤掃描電路的設(shè)計(jì) 單片機(jī)中有兩種 鍵盤形式 :獨(dú)立鍵盤和矩陣鍵盤。 獨(dú)立鍵盤的硬件電路制作設(shè)計(jì)不是很難,并且 不需要編寫復(fù)雜的程序控制 。因此在對(duì)硬件電路要求不是挺 9 高的情況下, 可以采取獨(dú)立鍵盤的方式 。然而矩陣鍵盤 在制作時(shí) 不僅在電路 設(shè)計(jì)上 要求比較高, 并且需要設(shè)計(jì)編寫復(fù)雜的程序 ,但是它不會(huì)占用太多的端口資源,基于這點(diǎn)矩陣鍵盤更適合按鍵較多的電路。 所以在 本次 鍵盤選用形式 中我們 選用 獨(dú)立鍵盤,此次設(shè)計(jì) 總共 有 14 個(gè)按 鈕 ,分別是 8 個(gè)搶答鍵、一個(gè)開始鍵、一個(gè)復(fù)位鍵、一個(gè)搶答時(shí)間加鍵、一個(gè)搶答時(shí)間減鍵、一個(gè)答題時(shí)間加鍵、一個(gè)答題時(shí)間減鍵。如圖 37 所示。 圖 37搶答按鍵及調(diào)整按鍵 在圖 37 中 8 個(gè)搶答按鍵接入單片機(jī)的 P0 口的 到 端口,每位 參賽者有 一個(gè) 搶答 按鍵,當(dāng)有人按下按鍵時(shí)候,單片機(jī)會(huì)在這八個(gè)引腳讀取相應(yīng)的數(shù)值來識(shí)別是哪一個(gè)按鍵輸入的。 P3 端口在此設(shè)計(jì)中 端口接入開始按鍵, 端口接入復(fù)位按鍵, 端口作為搶答時(shí)間加鍵, 端口作為搶答時(shí)間減鍵, 和 端口分別作為答題時(shí)間加鍵和答題時(shí)間減鍵。揚(yáng)聲器接在 端口開始及結(jié)束按鍵接到單片機(jī)的 和 。 報(bào)警電路的設(shè)計(jì) 在單片機(jī)中,我們通過 在單片機(jī)內(nèi)部設(shè)計(jì) 程序 來調(diào)節(jié) 某個(gè)引 腳電平 的高低 ,那么在這個(gè)接口就會(huì)產(chǎn)生矩形波, 如果在這個(gè)接口上 接上一個(gè) 揚(yáng)聲器 就會(huì)發(fā)出聲響。 揚(yáng)聲器接在單片機(jī)的 引腳。報(bào)警電路設(shè)計(jì)圖如圖 38 所示。 10 圖 38 報(bào)警電路 4 軟件設(shè)計(jì) 主程序流程圖 搶答器的主流程是:搶答開始后,會(huì)有很多搶答者按下按鈕,此時(shí)單片機(jī)接收到多個(gè)輸入信號(hào),單片機(jī)進(jìn)行篩選識(shí)別出最先到達(dá)的信號(hào),并且進(jìn)行保存記錄。 在整個(gè)系統(tǒng)中,顯示電路和和報(bào)警電路會(huì)根據(jù)實(shí)際情況接收的相應(yīng)信號(hào)做出反應(yīng)。搶答器的主流程圖如圖 41 所示。 11 圖 41 主程序流程圖 搶答流程圖 一次成功的搶答的流程是,在開始以后,三十秒的搶答時(shí)間內(nèi),有人按開 始 初始化 讀鍵盤是否有鍵按 下 中斷條件是否滿足 無人搶答,持續(xù)報(bào)警 進(jìn)入中斷程序 開中斷并響聲提示 設(shè)定定時(shí)器值 并啟動(dòng)定時(shí)器 30 秒搶答時(shí)間并顯示 并顯示 調(diào)用讀鍵子程序?yàn)檠訒r(shí)程序 是否有鍵按下 60秒到中斷返回 調(diào)用搶答者獲得的回答問題子程序 12 下?lián)尨鸢存I,并開始六十秒答題倒計(jì)時(shí),在答題時(shí)間結(jié)束內(nèi)答題完畢。次過程啟動(dòng)兩次定時(shí)器中斷。搶答流程圖如圖 42 所示。 圖 42 搶答流程圖 子程序設(shè)計(jì) 定時(shí)中斷 子程序 在搶答過程中,我們需要運(yùn)用單片機(jī)的定時(shí)功能,來對(duì)選手的搶答時(shí)間和答題時(shí)間進(jìn)行計(jì)時(shí)。這樣以便讓選手知道自己所剩的搶答和答題時(shí)間,以便在規(guī)定時(shí)間內(nèi)完成搶答和答題。所以我們需要設(shè)計(jì)一個(gè)定時(shí)中斷子程序,當(dāng)在搶答時(shí)間結(jié)束時(shí)或者答題時(shí)間小于十秒的時(shí)候,搶答器的報(bào)警系統(tǒng)開始工作。當(dāng)時(shí)間結(jié)束以后,選手按下按鍵后搶答器不作出反應(yīng)。流程圖如圖 43 所示。 13 圖 43 搶答器的定時(shí)中斷流程圖 外部中斷 子程序 搶答器的大部分中斷都是來自于外部電路,搶答是主要來源。當(dāng)有選手按下?lián)尨疰I的時(shí)候,搶答器通過內(nèi)部篩選確認(rèn),把 判斷好的搶答選手號(hào)碼在數(shù)碼管上顯示出來,然后進(jìn)行倒計(jì)時(shí)。此時(shí)中斷停止,次輪搶答結(jié)束,所有人無法再次搶答,除非復(fù)位進(jìn)行下一輪。流程圖如圖 44 所示。 14 外部中斷0中斷K0按下?K1按下?NYK2按下?K3按下?K5按下?K4按下?K6按下?K7按下?中斷返回?cái)?shù)碼管顯示01數(shù)碼管顯示02數(shù)碼管顯示03數(shù)碼管顯示04數(shù)碼管顯示05數(shù)碼管顯示06數(shù)碼管顯示07數(shù)碼管顯示08NNNNNNNYYYYYYY 圖 44 系統(tǒng) 外部中斷流程圖 報(bào)警 子程序 報(bào)警子程序的作用是對(duì)系統(tǒng)功能實(shí)現(xiàn)的過程中進(jìn)行提示,具體有以下兩個(gè):一是當(dāng)搶答時(shí)間結(jié)束的時(shí)候發(fā)出聲響,提示選手搶答時(shí)間結(jié)束,停止搶答。二是在答題時(shí)間還有十秒鐘的時(shí)候,持續(xù)報(bào)警,提示選手抓緊答題。報(bào)警流程圖如圖45 所示。 15 圖 45 報(bào)警流程圖 控制 子程序 搶答器的控制功能由主持人掌控,可以對(duì)搶答的開始和復(fù)位,以及時(shí)間的調(diào)整。只有在主持人按下開始
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1