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

正文內(nèi)容

單片機搶答器畢業(yè)論文-閱讀頁

2025-02-02 14:07本頁面
  

【正文】 18圖 33 復(fù)位電路值得注意的是,在設(shè)計當(dāng)中使用到了硬件復(fù)位和軟件復(fù)位兩種功能,由上面的硬件復(fù)位后的各狀態(tài)可知寄存器及存儲器的值都恢復(fù)到了初始值,而前面的功能介紹中提到了倒計時時間的記憶功能,該功能的實現(xiàn)的前提條件就是不能對單片機進行硬件復(fù)位,所以設(shè)定了軟復(fù)位功能。 顯示電路的設(shè)計顯示功能與硬件關(guān)系極大,當(dāng)硬件固定后,如何在不引起操作者誤解的前提下提供盡可能豐富的信息,全靠軟件來解決。這說明,顯示模塊與操作有關(guān),即監(jiān)控程序是需要調(diào)用顯示模塊。另一方面,在操作者沒有進行操作時,顯示內(nèi)容也是變化的,如顯示現(xiàn)場各物理量的變化情況。自動執(zhí)行的各類模塊在安排在各種中斷子程序中,這就是說,各種中斷子程序也要單片機搶答器畢業(yè)論文 19調(diào)用顯示模塊。一種比較妥善的辦法是只讓一處調(diào)用顯示模塊,其他各處均不得直接調(diào)用顯示模塊,但有權(quán)申請顯示。由于一處調(diào)用顯示模塊,故不會發(fā)生沖突。當(dāng)監(jiān)控程序(鍵盤解釋程序)安排在時鐘中斷子程序中時,處理比較方便,只要在監(jiān)控程序的匯合處調(diào)用顯示模塊就可以了。這里將顯示功能集中到一起,作為一個功能模塊,就要求它的功能全面,能根據(jù)系統(tǒng)軟件提供的信息自動完成顯示內(nèi)容的查找,變換和輸出驅(qū)動。如果編寫這樣一個集中顯示模塊有困難,也可以將顯示模塊編小一些,只完成顯示緩沖區(qū)的內(nèi)容輸出到顯示器件上的工作。這樣分而治之比較容易編程,但要小心出現(xiàn)顯示混亂。解決的辦法是,在申請顯示前,先檢查是否已經(jīng)有顯示申請,如果有,就不再申請,等待下次機會;如果沒有,則先申請標(biāo)志位,再將顯示內(nèi)容送入顯示緩沖區(qū)。在這里我們使用的是七段數(shù)碼管顯示,通常在顯示 [6]上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,一種是動態(tài)顯示。在本設(shè)計中根據(jù)實際情況采用的是動態(tài)顯示方法。在這里我們通過查表將字型碼送給 7 段數(shù)碼管顯示的數(shù)字,數(shù)碼管顯示原理如下: MOV A,R5 MOVC A,A+DPTR ;查字型碼 MOV P2,01H ;送位選碼 MOV P0,A ;送字型碼ACALL DELAY ;調(diào)延時,去閃爍圖 34 共陰極數(shù)碼管單片機搶答器畢業(yè)論文 21在七段數(shù)碼管顯示中可分為共陽極和共陰極兩種類型極。 鍵盤掃描電路的設(shè)計鍵盤是人與微機系統(tǒng)打交道的主要設(shè)備。站在系統(tǒng)監(jiān)控軟件設(shè)計的立場上來看,僅僅完成鍵盤掃描,讀取當(dāng)前時刻的鍵盤狀態(tài)是不夠的,還有不少問題需要妥善解決,否則,人們在操作鍵盤就容易引起誤操作和操作失控現(xiàn)象。圖 35 獨立鍵盤它們各有自己的特點,其中獨立鍵盤硬件電路簡單,而且在程序設(shè)計上也不復(fù)雜,一般用在對硬件電路要求不高的簡單電路中;矩陣鍵盤與獨立鍵盤有很大區(qū)別,首先在硬件電路上它要比獨立鍵盤復(fù)雜得多,而且在程序算法上比它要煩瑣,但它在節(jié)省端口資源上有優(yōu)勢得多,因此它更適合于多按鍵電路。這里采用最常用的方法,即延時重復(fù)掃描法,延時法的原理為:因為“毛刺”脈沖一般持續(xù)時間短,約為幾 ms,而我們按鍵的時間一般遠遠大于這個時間,所以當(dāng)單片機檢測到有按鍵動靜后再延時一段時間(這里我們?nèi)?10ms)后再判斷此電平是否保持原狀態(tài),如 單片機搶答器畢業(yè)論文 22果是則為有效按鍵,否則無效?,F(xiàn)在一般均用軟件延時的方法來避開抖動階段,這一延時過程一般大于 5ms,例如取 1020ms。如果讀鍵過程安排在定時中斷子程序中,就可省去專門的延時子程序,利用兩次定時中斷的時間間隔來完成抖動處理。 系統(tǒng)復(fù)位使 CPU 進入初始狀態(tài),從 0000H 地址開始執(zhí)行程序的過程叫系統(tǒng)復(fù)位。硬件復(fù)位必須通過 CPU 外部的硬件電路給 CPU 的 RESET 端加上足夠時間的高電位才能實現(xiàn)。硬件復(fù)位后,各專用寄存器的狀態(tài)均被初始化,且對片內(nèi)通用寄存器的內(nèi)容沒有影響。軟件復(fù)位就是用一系列指令來模擬硬件復(fù)位功能,最后通過轉(zhuǎn)移指令使程序從 0000H 地址開始執(zhí)行。而對中斷激活標(biāo)志的清除工作常被遺忘,因為它沒有明確的位地址可供編程。軟件復(fù)位是使用軟件陷阱和軟件看門狗后必須進行的工作,這時程序出錯完全有可能發(fā)生在中斷子程序中,中斷激活標(biāo)志已置位,它將阻止同級中斷響應(yīng)。在所有的指令中,只有 RETI 指令能夠清除中斷激活標(biāo)志。這部分程序如下:POWER DATA 67H ;上電標(biāo)志存放單元 ERR: CLR EA ;關(guān)中斷 MOV DPTR,ERR1 ;準(zhǔn)備返回地址PUSH DPLPUSH DPHRETI ;清除高級中斷激活標(biāo)志ERR1: MOV POWER,0AAH;重建上電標(biāo)志 CLR A ;準(zhǔn)備復(fù)位地址 PUSH ACC ;壓入復(fù)位地址 0000HPUSH ACCRETI ;清除低級中斷激活標(biāo)志,從程序 0000H 開始執(zhí)行。有相應(yīng)軟件陷阱捕捉來的程序可能沒有全部激活兩個標(biāo)志,這也無妨。 “冷啟動”時,系統(tǒng)的狀態(tài)全部無效,進行徹底的初始化操作;而“熱啟動”時,單片機搶答器畢業(yè)論文 24復(fù)位關(guān)中斷,設(shè)定堆棧上電標(biāo)志冷啟自檢全面初始化熱啟動恢復(fù)被破壞的信息部分初始化建立上電標(biāo)志開始運轉(zhuǎn)對系統(tǒng)的當(dāng)前狀態(tài)進行修復(fù)和有選擇的初始化。為了使系統(tǒng)能正確決定采用何種啟動方式,常用上電標(biāo)志來區(qū)分,如圖 36 所示。這時復(fù)位后的主程序如下:MAIN: CLR EA ;關(guān)中斷 MOV SP,67H ;設(shè)定堆棧 MOV PSW,0 ;設(shè)定 0 區(qū)工作寄存器 MOV A,0AAH,MAIN0單片機搶答器畢業(yè)論文 25 SJMP MAIN ;有上電標(biāo)志,進行熱啟動MAIN0: ;無上電標(biāo)志,進行冷啟動 ;自檢,全面初始化 SJMP MAIN3MAINH: ;熱啟動過程,恢復(fù)現(xiàn)場 ;部分初始化MAIN3: MOV POWER,0AAH。在設(shè)計過程中,實現(xiàn)搶答功能的是通過編寫程序的方法集成在 AT89C51 內(nèi)部。單片機搶答器畢業(yè)論文 26系統(tǒng)初始化模塊按鍵模塊非法搶答模塊正確搶答模塊調(diào)整搶答時間調(diào)整回答時間模塊數(shù)碼顯示模塊4 軟件設(shè)計 主程序系統(tǒng)結(jié)構(gòu)圖圖 41 軟件系統(tǒng)結(jié)構(gòu)圖 軟件任務(wù)分析軟件任務(wù)分析和硬件電路設(shè)計結(jié)合進行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計基本定型后,也就基本上決定下來了。從軟件的功能來看可分為兩大類:一類是執(zhí)行軟件,它能完成各種實質(zhì)性的功能,如測量,計算,顯示,打印 [8],輸出控制和通信等,另一類是監(jiān)控軟件,它是專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系,在系統(tǒng)軟件中充當(dāng)組織調(diào)度角色的軟件。軟件任務(wù)分析時,應(yīng)將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進行功能定義和接口定義(輸入輸出定義) 。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。相對來講,執(zhí)行模塊任務(wù)明確單純,比較容易編程,而監(jiān)控程序較易出問題。軟件任務(wù)分析的另一個內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。后臺程序指主程序及其調(diào)用的子程序,這類程序?qū)崟r性要求不是太高,延誤幾十 ms 甚至幾百 ms 也沒關(guān)系,故通常將監(jiān)控程序(鍵盤解釋程序) ,顯示程序和打印程序等與操作者打交道的程序放在后臺程序中執(zhí)行;而前臺程序安排一些實時性要求較高的內(nèi)容,如定時系統(tǒng)和外部中斷(如掉電中斷) 。 程序流程圖在本設(shè)計中包括了以下八個主要的程序:主程序;非法搶答序;搶答時間調(diào)整程序;回答時間調(diào)整程序;倒計時程序;正常搶答處理程序;犯規(guī)處理程序;顯示及發(fā)聲程序 [9]。50ms 為一次溢出中斷 [10] SETB EA SETB ET0單片機搶答器畢業(yè)論文 29 SETB ET1 SETB EX0 SETB EX1 CLR OK CLR RING SETB TR1 SETB TR0非法搶答處理程序:FALSE1: ACALL BARK MOV R3,01H AJMP ERRORFALSE2: ACALL BARK MOV R3,02H AJMP ERRORFALSE3: ACALL BARK MOV R3,03H AJMP ERRORFALSE4: ACALL BARK MOV R3,04H AJMP ERRORFALSE5: ACALL BARK MOV R3,05H AJMP ERRORFALSE6: ACALL BARK MOV R3,06H AJMP ERROR搶答時間調(diào)整程序:。 為+1s 鍵,如按下跳到 INCO JNB ,DEC0。 為確定鍵,如按下跳到 BACKO AJMP INT0SUBINC0: MOV A,R1 CJNE A,63H,ADD0。 MOV R1,00H ACALL DELAY1 AJMP INT0SUBADD0: INC R1 ACALL DELAY1 AJMP INT0SUBDEC0: MOV A,R1 JZ SETR1。=====INT1(回答時間 R2 調(diào)整程序)=====INT1SUB:MOV A,R2 MOV B,0AH DIV AB MOV R5,A MOV R4,B MOV R3,0AH ACALL DISPLAY JNB ,INC1 JNB ,DEC1 JNB ,BACK1 AJMP INT1SUBINC1: MOV A,R2 CJNE A,63H,ADD1 MOV R2,00H ACALL DELAY1 AJMP INT1SUBADD1: INC R2 ACALL DELAY1 AJMP INT1SUBDEC1: MOV A,R2 JZ SETR2 DEC R2 ACALL DELAY1 AJMP INT1SUBSETR2: MOV R2,63H單片機搶答器畢業(yè)論文 32 ACALL DELAY1 AJMP INT1SUBBACK1: RETI倒計時程序:COUNT: MOV R0,0000 MOV TH1,3CH MOV TL1,0B0HRECOUNT:MO
點擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1