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

正文內容

聲光顯示智力競賽16路搶答器畢業(yè)論文(編輯修改稿)

2025-07-18 19:14 本頁面
 

【文章內容簡介】 選通信號,當AT89S51由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次~PSEN有效,即輸出兩個脈沖。當訪問外部數(shù)據(jù)存儲器,沒有兩次有效的~PSEN信號。EA/VPP(30 Pin):外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000HFFFFH),EA端必須保持低電平(接地)。需要注意的是:如果加密位LB1被編程,復位時內部會所存EA端狀態(tài)。如EA端為高電平(接VCC端),CPU則執(zhí)行內部程序存儲器中的指令。Flash存儲器編程時,該引腳加上+12V的編程電壓VPP。 XTAL1(19 Pin)外接石英晶體和微調電容,在單片機內部,它是構成片內振蕩器的反相放大器輸入端。當采用外部振蕩器時,此引腳接地。 XTAL2(18 Pin):外接石英晶體和微調電容的另一端,在單片機內部,它接至片內振蕩器的反相放大器輸出端。當采用外部振蕩器時,該引腳接收外部振蕩器信號,即外部振蕩器通過XTAL2被送到單片機內部的時鐘發(fā)生器輸入端。16路智力搶答器功能模塊主要有時鐘電路設計,復位電路設計,4*4矩陣鍵盤設計(搶答電路設計),控制電路設計,LED顯示電路設計,報警電路設計。其主要功能模塊設計電路如下。 時鐘電路設計功能分析時鐘電路主要為單片機運行提供時序脈沖,使單片機有效的運行。單片機時鐘電路主要有晶振提供時序,本設計采用12MHz石英晶體振蕩器。為單片機定時,計時提供了一定依據(jù)。時鐘電路的設計有固定的方式,主要有內部時鐘方式和外部時鐘方式兩種。時鐘電路硬件設計 AT89S51中有一個用于構成內部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。由于單片機本身并不集成晶振,電容之類的比較大的器件,所以我們在設計單片機應用系統(tǒng)的時候首先需要對AT89S51進行時鐘電路設計和復位電路的設計。 在進行時鐘電路設計通常有兩種方式:內部時鐘方式和外部時鐘方式。 內部時鐘方式利用單片機芯片內部的振蕩器(接有負反饋電路的反相放大器),并在單片機外部引腳XTALXTAL2兩端跨接晶體諧振器(簡稱晶體或晶振)和電容,就構成了穩(wěn)定的自激振蕩器,產(chǎn)生的脈沖信號直接送入內部時鐘電路。外接晶振時,C1和C2的值通常選擇30pF左右, ~ 12MHz之間選擇。為了減小寄生電容,更好地保證振蕩器穩(wěn)定可靠的工作,晶振和電容應盡可能地安排得與單片機引腳XTAL1和XTAL2靠近。本設計將采用頻率為12MHz的內部時鐘方式設計。: AT89S51單片機內部時鐘方式AT89S51時鐘系統(tǒng)具有可判斷功能,通過閑暇控制位端可關閉CPU的時鐘信號;通過掉電控制位可關閉自激振蕩器。時鐘系統(tǒng)的可判斷功能主要用于單片機的低功耗管理。外部時鐘方式:外部時鐘方式即完全用單片機外部電路產(chǎn)生時鐘的方法,外部電路產(chǎn)生的時鐘信號被直接接到單片機的XTAL1引腳,此時XTAL2懸空。 復位電路設計功能分析 大規(guī)模集成電路在上電時一般都需要進行一次復位操作,以便使芯片內的一些部件處于一個確定的初始狀態(tài),復位是一種很重要的操作。器件本身一般不具有自動上電復位能力,需要借助外部復位電路提供的復位信號才能進行復位操作。 在16路智力搶答器中,復位電路主要完成復位操作,當設計運行出現(xiàn)錯誤或需要返回到初始時刻時需要用到復位鍵。復位電路設計也有其固定的方式,主要有上電復位方式和手動方式,一般在設計系統(tǒng)時會結合兩種方式一起來設計。硬件設計復位是單片機的初始化操作,其主要功能是把程序計數(shù)器PC的內容初始化為0000H,也就是使單片機從0000H單元開始執(zhí)行程序,同時使CPU及其他的功能部件從一個確定的初始狀態(tài)開始工作。除了系統(tǒng)上電時需要進行正常的初始化外,當程序運行出錯或操作錯誤導致系統(tǒng)處于“死機”狀態(tài)時都需要進行復位操作。單片機復位后,特殊功能寄存器SFR的初始值一般為0,但是有4個SFR的值不為0,分別是SP=07H和P0~P3=FFH。AT89S51的復位輸入引腳RST提供了初始化的手段,在時鐘電路工作之后,只要在RST引腳上出現(xiàn)2個機器周期以上的高電平,就能夠確保單片機可靠復位。當AT89S51的RST引腳變?yōu)榈碗娖胶?,退出復位狀態(tài),單片機從初始化狀態(tài)開始工作。 AT89S51復位電路也分為兩種方式:上電復位和上電復位與手動復位。(1) 上電復位電路:最簡單的上電復位電路由電容和電阻串聯(lián)構成,如圖37所示。上電瞬間,由于電容兩端電壓不能突變,RST引腳電壓端VR 為VCC,隨著對電容的充電, RST引腳的電壓呈指數(shù)規(guī)律下降,到正脈沖持續(xù)時間t1時刻,隨著對電容充電的進行,VR 最后將接近0V。RST引腳的電壓變化如圖37(b)所示。為了確保單片機復位,正脈沖持續(xù)時間t1必須大于兩個機器周期的時間,機器周期取決于單片機系統(tǒng)采用的晶振頻率,圖37(a)中,R不能取得太小,典型值 ;正脈沖持續(xù)時間t1與RC 電路的時間常數(shù)有關,由晶振頻率和R可以算出C的取值。( 2 )上電復位和按鍵復位組合電路 ,R2的阻值一般很小,只有幾十歐姆,當按下復位按鍵后,電容迅速通過R2放電,放電結束時的VR為(R1*Vcc)/(R1+R2),由于R1遠大于R2,VR 非常接近VCC,使RST引腳為高電平,松開復位按鍵后,過程與上電復位相同。但我們在設計系統(tǒng)時,一般采用上電復位與手動復位電路來控制整個系統(tǒng)的復位。 上電復位和按鍵復位組合電路 搶答電路設計功能分析鍵盤是一個按鍵的組合,分為觸點式(如機械開關)和無觸點式(如電氣開關)兩種,按下與未按下對應相反的邏輯狀態(tài)0與邏輯狀態(tài)1。單片機常用的鍵盤有全編碼鍵盤和非編碼鍵盤兩種。全編碼鍵盤能有硬件邏輯自動提供與被按鍵對應的編碼,如BCD碼鍵盤、ASCII碼鍵盤等,價格較貴,一般的單片機應用系統(tǒng)較少采用;非編碼鍵盤分為獨立式鍵盤和矩陣式鍵盤,硬件上只是提供通、斷兩種狀態(tài),其他工作都靠軟件完成,經(jīng)濟實用,目前單片機應用系統(tǒng)中多采用這種方法。對于一組鍵或一個鍵,需要通過接口電路與單片機相連,以便把鍵的開關狀態(tài)態(tài)通知給單片機。單片機可以采用查詢或中斷方式了解有無按鍵按下并查詢是哪一個按鍵按下,并讀出該鍵的鍵值。(1)獨立式鍵盤在由單片機組成的測控系統(tǒng)及智能化儀器中,用得最多的是獨立式鍵盤。獨立式鍵盤是指直接用I/O口線構成的單個按鍵電路。每個獨立式按鍵單獨占有一根I/O口線,每根I/O口線的工作狀態(tài)不會影響其他I/O口線的工作狀態(tài)。: 獨立式鍵盤獨立式鍵盤接口電路配置靈活,軟件結構簡單,但是每個獨立式按鍵必須單獨占有一根I/O口線,當按鍵的數(shù)量較多時,I/O口線浪費較大,故只在按鍵數(shù)量不多時才采用這種按鍵電路。根據(jù)實際經(jīng)驗,當按鍵數(shù)量為48個時,并且I/O資源較為豐富時,采用獨立式按鍵比較合適。此電路中,按鍵輸入都采用低電平有效,上拉電阻保證了按鍵斷開時,I/O口線上有確定的高電平。當I/O口內部有上拉電阻時,外電路可以不配置上拉電阻,由于89S51單片機P1口內部已經(jīng)配置了上拉電阻,我們可以不另加上拉電阻,當然如果加上這些上拉電阻,不會對線路產(chǎn)生消極影響。(2)矩陣式鍵盤矩陣式鍵盤的接口方法有很多。例如:直接接口于單片機的I/O口上;利用擴展的并行I/O接口;用串行口擴展并行I/O口接口;利用一種可編程的鍵盤、顯示接口芯片8279進行接口等。獨立式按鍵電路每一個按鍵開關占用一根I/O口線,當按鍵數(shù)量較多時,要占用較多的I/O口線。因此在按鍵較多情況下通常用矩陣式(行列式)鍵盤電路。4: 44矩陣式鍵盤電路矩陣式鍵盤的結構和工作原理: 在矩陣式鍵盤中,每條水平線與垂直線的交叉處不直接相通,而是通過一個按鍵開關加以連接。這樣,一個端口(P1口)就可以構成44=16個按鍵的鍵盤電路(1) 判斷是否有鍵按下行線的I/O口通過電阻接+5V電源,處于輸入狀態(tài),而列線的I/O口為輸出狀態(tài)。因此,當沒有按鍵按下時,行、列線之間是隔開的,所有行線輸入全部為高電平。當鍵盤上某個按鍵被按下而閉合時,則對應的行線和列線短路,行線輸入即為列線輸出。若此時初始化所有列線輸出低電平,則通過讀取行線輸入值的狀態(tài)是否全為“1”,即可判斷有無鍵按下。(2) 識別被按下的鍵求鍵值 但是鍵盤中究竟哪個鍵被按下并不能立刻判斷出來,只能用列線逐列置低電平后,檢查行輸入狀態(tài)的方法來確定。在某一時刻只讓一條列線處于低電平,其余列線處于高電平,則當這一列有鍵按下時,該鍵所在的行電平就會由高電平變?yōu)榈碗娖?。CPU根據(jù)行電平的變化,便能判斷該列相應行有鍵被按下。首先使第0列處于低電平,逐行查找是否有行線變低,若有,則第0列于該行的交叉點按鍵被按下;若無,則表示第0列無鍵被按下,在讓下一列處于低電平;以此類推。這種逐列檢查鍵盤狀態(tài)的過程成為鍵盤掃描。 鍵盤的工作方式:鍵盤的工作方式一般分為兩種:循環(huán)掃描工作方式和中斷掃描工作方式。循環(huán)掃描工作方式利用CPU在完成其他工作的空隙,調用鍵盤掃描子程序來響應按鍵輸入要求。在執(zhí)行按鍵功能程序時,CPU不再響應鍵輸入要求。采用上述工作方式雖然能響應鍵輸入的命令和數(shù)據(jù),但這種方式不管鍵盤上有無按鍵被按下,CPU總是定時掃描鍵盤,而應用系統(tǒng)在工作時,并不經(jīng)常需要鍵輸入,因此CPU經(jīng)常處于空掃描狀態(tài)。為了提高CPU的工作效率,可采用中斷掃描工作方式。即只有在鍵盤有鍵被按下時,才發(fā)出中斷請求,CPU響應中斷請求后,轉中斷服務程序,進行鍵盤掃描,識別按鍵。因此我們在本次設計中用中斷掃描工作方式。在智力搶答器設計中,要求有16個代表隊參加搶答,每個代表隊一個搶答按鈕,就需要16個按鈕,而在設計的過程中,我們就發(fā)現(xiàn),選手搶答器按鈕就是用獨立式鍵盤或矩陣式鍵盤來完成的。獨立式鍵盤電路要求一個端口連接一個按鍵,硬件電路簡單但浪費成本。當按鍵數(shù)較多時,要占用較多的I/O口線。因此一般在按鍵數(shù)大于8時,通常采用矩陣式鍵盤電路。之前在本設計的方案論證中,P0口和P2口用于控制數(shù)碼管的顯示(P1口控制七段數(shù)碼管,P2口則驅動數(shù)碼管的位顯示),P3口用于主控電路的設計,剩下的八位的P1口如果用獨立式鍵盤明顯達不到要求,而如果采用矩陣式鍵盤電路,8個I/O剛好可以構成44矩陣式鍵盤電路,滿足16個代表隊參加搶答的要求。搶答電路硬件設計16路搶答器搶答電路設計即44矩陣式鍵盤電路,: 16路搶答器搶答電路矩陣式鍵盤 顯示電路設計功能分析顯示器是最常用的輸出設備。為方便觀察和監(jiān)視單片機的運行情況,人們常用顯示器來顯示單片機的鍵盤輸入值,中間信息及運算結果等。在單片機應用系統(tǒng)中,常用的顯示器主要有LED(發(fā)光二極管)數(shù)碼管顯示器和LCD(液晶顯示器)模塊。兩者相比,LED數(shù)碼管價格低廉,結構簡單,LCD模塊功耗低,能顯示的字符豐富。在本設計中采用LED數(shù)碼管顯示器來顯示時間和代表隊編號。LED數(shù)碼管由若干發(fā)光二極管組成,當發(fā)光二極管導通時,相應的一個點或一段發(fā)光,控制不同組合的發(fā)光二極管導通,就能顯示出各種字符。通常一個LED數(shù)碼管由8個發(fā)光二極管組成,其中7個發(fā)光二極管ag構成字型“8”的各個筆劃(段),另一個發(fā)光二極管dp為小數(shù)點。單片機中通常使用的LED數(shù)碼管有共陰極和共陽極兩種,如圖312所示:圖312 LED數(shù)碼管 共陰極和共陰極數(shù)碼管要顯示數(shù)字或字符,就要給數(shù)碼管一定編碼控制其七個發(fā)光二極管的亮滅,從而達到顯示的目的。我們經(jīng)常用到數(shù)碼管顯示的字符一般都是一些常用的數(shù)字和字母,它們常用的顯示字型編碼表如表33所示: 表33 顯示字型編碼表 硬件設計在本設計中采用的是共陰極接法的數(shù)碼管,由P0口驅動七段數(shù)碼顯示管,P2口驅動數(shù)碼管位。由P0、P2口共同組成LED數(shù)碼管顯示電路。由于P0口不帶有上拉電阻,所以在設計中需另外外接上拉電阻,以提供一定的拉電流。P2口本身自帶電阻,所以無需外接。因為AT89S51單片機P0、P2口都自帶鎖存器,所以無需另外外接鎖存器。其與單片機一起來顯示所搶答的代表隊的編號和倒計時時間或限時時間。其接口電路如圖313所示: 圖313 顯示電路 報警電路設計用單片機設計的報警電路相對來說比較簡單,硬件電路只要使用P3口的一個口線來一個外接喇叭(sounder)就可以實現(xiàn)。當然,只是這樣并不能達到報警的目的,由于是單片機控制的,所以需要通過軟件編程來控制喇叭(sounder)工作。圖314 報警電路 控制電路設計功能分析搶答器控制電路主要控制搶答開始、搶答時間調節(jié)、限時開始、限時時間調節(jié)。它是供主持人操作的實現(xiàn)復位、開始搶答等控制的控制功能電路??刂齐娐返脑O計跟報警電路的設計都需要通過語言來實現(xiàn),單純的硬件電路并不能實現(xiàn)任何東西。在控制電路的設計中,我接的是P3口,是因為P3口的每一個口線都有第二功能,在這里要用到的也就是它的第二功能,在前面的介紹中我們已經(jīng)知道,P3口有兩個中斷,兩個定時,一個讀一個寫口線,還有串行輸入輸出口線。硬件設計16路智力搶答器硬件電路設計圖如圖315: Keil C51語言簡介 用C語言編寫51單片機程序與用匯編語言編寫51單片機程序不一樣,用匯編語言編寫51單片機程序必須要考慮其存儲器結構,尤其必須考慮其片內數(shù)據(jù)存儲器與特殊功能寄存器的使用以及按實際地址處理端口數(shù)據(jù)。用C語言編寫的MCS–51單片機應用程序,則不用像匯編語言那樣須具體組織、分配存儲器資源和處理端口數(shù)據(jù),但在C語言編程中,對數(shù)據(jù)類型與變量的定義,必須要與單片機的存儲結構相關聯(lián), 否則編譯器不能正確地映射定位。 用C語言編寫單片機應用程序與標準的C語言程序也有相應的區(qū)別: C語言編寫單片機應用程序時,需根據(jù)單片機存儲結構及內部資源定義相應的數(shù)據(jù)類型和變量,而標準的C語言程序不需要考慮這些問題;C51包含的數(shù)據(jù)類型、變量存儲模式、輸入輸出處理、函數(shù)等方面與標準的C語言有一定的區(qū)別。其它的語法規(guī)則
點擊復制文檔內容
物理相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1