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

正文內(nèi)容

基于單片機(jī)的六路搶答器(編輯修改稿)

2025-02-12 11:20 本頁面
 

【文章內(nèi)容簡介】 ,只要在監(jiān)控程序的匯合處調(diào)用顯示模塊就可以了。例如用DISP作顯示申請(qǐng)標(biāo)志,就可以這樣安排顯示模塊的調(diào)用,即DISP BIT ;顯示申請(qǐng)標(biāo)志SKEYEND:JNB DISP,RETI0 ;有顯示申請(qǐng)否? LCALL DISPLAY ;調(diào)用顯示模塊,更新顯示內(nèi)容 CLR DISP ;清除申請(qǐng) RETI ;中斷返回KEYEND為鍵盤解釋程序的最后匯集點(diǎn),這時(shí)如果發(fā)現(xiàn)有顯示申請(qǐng),就進(jìn)行集中操作,更新顯示內(nèi)容,否則就跳過這一步。這里將顯示功能集中到一起,作為一個(gè)功能模塊,就要求它的功能全面,能根據(jù)系統(tǒng)軟件提供的信息自動(dòng)完成顯示內(nèi)容的查找,變換和輸出驅(qū)動(dòng)。這樣設(shè)計(jì)使得各功能模塊都不必考慮顯示問題,只要給出一個(gè)簡單的信息(如顯示格式編碼)甚至不用再提供額外信息,直接利用當(dāng)前狀態(tài)變量和軟件標(biāo)志就可以完成所需的顯示要求。如果編寫這樣一個(gè)集中顯示模塊有困難,也可以將顯示模塊編小一些,只完成顯示緩沖區(qū)的內(nèi)容輸出到顯示器件上的工作。這時(shí)各功能模塊在提出顯示申請(qǐng)時(shí),還需要將顯示內(nèi)容按需要的格式送入顯示緩沖區(qū)中。這樣分而治之比較容易編程,但要小心出現(xiàn)顯示混亂。例如后臺(tái)程序需要調(diào)用顯示,將有關(guān)信息送入到現(xiàn)實(shí)緩沖區(qū)進(jìn)行顯示;中斷返回后,后臺(tái)程序繼續(xù)送完后半部分顯示內(nèi)容,但前半部分內(nèi)容已經(jīng)變了,這樣就出現(xiàn)了顯示錯(cuò)誤。解決的辦法是,在申請(qǐng)顯示前,先檢查是否已經(jīng)有顯示申請(qǐng),如果有,就不再申請(qǐng),等待下次機(jī)會(huì);如果沒有,則先申請(qǐng)標(biāo)志位,再將顯示內(nèi)容送入顯示緩沖區(qū)。這時(shí)就不必?fù)?dān)心其他前臺(tái)模塊來打擾了,就可以得到一次完整的顯示機(jī)會(huì)。在這里我們使用的是七段數(shù)碼管顯示,通常在顯示[6]上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,一種是動(dòng)態(tài)顯示。其中靜態(tài)顯示的特點(diǎn)是顯示穩(wěn)定不閃爍,程序編寫簡單,但占用端口資源多;動(dòng)態(tài)顯示的特點(diǎn)是顯示穩(wěn)定性沒靜態(tài)好,程序編寫復(fù)雜,但是相對(duì)靜態(tài)顯示而言占用端口資源少。在本設(shè)計(jì)中根據(jù)實(shí)際情況采用的是動(dòng)態(tài)顯示方法。并通過查表法,將其在數(shù)碼管上顯示出來,其中P0口為字型碼輸入端,P2口低3位為字選段輸入端。在這里我們通過查表將字型碼送給7段數(shù)碼管顯示的數(shù)字, 。MOV A,R5 MOVC A,@A+DPTR ;查字型碼 MOV P2,01H ;送位選碼 MOV P0,A ;送字型碼ACALL DELAY ;調(diào)延時(shí),去閃爍在七段數(shù)碼管顯示中可分為共陽極和共陰極兩種類型極。以共陰為例,要想a段亮,向a段送1就是,返之送0,共陽剛好相反。 鍵盤電路設(shè)計(jì)鍵盤是人與微機(jī)系統(tǒng)打交道的主要設(shè)備。關(guān)于鍵盤硬件電路的設(shè)計(jì)方法也可以在文獻(xiàn)和書籍中找到,配合各種不同的硬件電路,這些書籍中一般也提供了相應(yīng)的鍵盤掃描程序。站在系統(tǒng)監(jiān)控軟件設(shè)計(jì)的立場(chǎng)上來看,僅僅完成鍵盤掃描,讀取當(dāng)前時(shí)刻的鍵盤狀態(tài)是不夠的,還有不少問題需要妥善解決,否則,人們?cè)诓僮麈I盤就容易引起誤操作和操作失控現(xiàn)象。在單片機(jī)應(yīng)用中鍵盤用得最多的形式是獨(dú)立鍵盤及矩陣鍵盤。 它們各有自己的特點(diǎn),其中獨(dú)立鍵盤硬件電路簡單,而且在程序設(shè)計(jì)上也不復(fù)雜,一般用在對(duì)硬件電路要求不高的簡單電路中;矩陣鍵盤與獨(dú)立鍵盤有很大區(qū)別,首先在硬件電路上它要比獨(dú)立鍵盤復(fù)雜得多,而且在程序算法上比它要煩瑣,但它在節(jié)省端口資源上有優(yōu)勢(shì)得多,因此它更適合于多按鍵電路。其次就是消除在按鍵過程中產(chǎn)生的“毛刺” 現(xiàn)象。這里采用最常用的方法,即延時(shí)重復(fù)掃描法,延時(shí)法的原理為:因?yàn)椤懊獭泵}沖一般持續(xù)時(shí)間短,約為幾毫秒,而我們按鍵的時(shí)間一般遠(yuǎn)遠(yuǎn)大于這個(gè)時(shí)間,所以當(dāng)單片機(jī)檢測(cè)到有按鍵動(dòng)靜后再延時(shí)一段時(shí)間(這里我們?nèi)?0ms)后再判斷此電平是否保持原狀態(tài),如果是則為有效按鍵,否則無效。 系統(tǒng)復(fù)位使CPU進(jìn)入初始狀態(tài),從0000H地址開始執(zhí)行程序的過程叫系統(tǒng)復(fù)位。從實(shí)現(xiàn)系統(tǒng)復(fù)位的方法來看,系統(tǒng)復(fù)位可分為硬件復(fù)位和軟件復(fù)位。硬件復(fù)位必須通過CPU外部的硬件電路給CPU的RESET端加上足夠時(shí)間的高電位才能實(shí)現(xiàn)。上電復(fù)位,人工按鈕復(fù)位和硬件看門狗復(fù)位均為硬件復(fù)位。硬件復(fù)位后,各專用寄存器的狀態(tài)均被初始化,且對(duì)片內(nèi)通用寄存器的內(nèi)容沒有影響。但是,硬件復(fù)位還能自動(dòng)清除中斷激活標(biāo)志,使中斷系統(tǒng)能夠正常工作,這樣一個(gè)事實(shí)卻容易為不少編碼人員所忽視。軟件復(fù)位就是用一系列指令來模擬硬件復(fù)位功能,最后通過轉(zhuǎn)移指令使程序從0000H地址開始執(zhí)行。對(duì)各專用寄存器的復(fù)位操作是容易的,也沒有必要完全模擬,可根據(jù)實(shí)際需要去主程序初始化過程中完成。而對(duì)中斷激活標(biāo)志的清除工作常被遺忘,因?yàn)樗鼪]有明確的位地址可供編程。有的編程人員用020000(LJMP 0000H)作為軟件陷阱,認(rèn)為直接轉(zhuǎn)向0000H地址就完成了軟件復(fù)位,就是這類錯(cuò)誤的典型代表。軟件復(fù)位是使用軟件陷阱和軟件看門狗后必須進(jìn)行的工作,這時(shí)程序出錯(cuò)完全有可能發(fā)生在中斷子程序中,中斷激活標(biāo)志已置位,它將阻止同級(jí)中斷響應(yīng)。由于軟件看門是高級(jí)中斷,它將阻止說要中斷響應(yīng),由此可見清除中斷激活標(biāo)志的重要性。在所有的指令中,只有RETI指令能夠清除中斷激活標(biāo)志。前文各處提案到的出錯(cuò)處理程序ERR主要完成這一功能,其他的善后工作交由復(fù)位后的系統(tǒng)去完成。這部分程序如下:POWER DATA 67H ;上電標(biāo)志存放單元 ERR: CLR EA ;關(guān)中斷 MOV DPTR,ERR1 ;準(zhǔn)備返回地址PUSH DPLPUSH DPHRETI ;清除高級(jí)中斷激活標(biāo)志ERR1: MOV POWER,0AAH;重建上電標(biāo)志 CLR A ;準(zhǔn)備復(fù)位地址 PUSH ACC ;壓入復(fù)位地址0000HPUSH ACCRETI ;清除低級(jí)中斷激活標(biāo)志,從程序0000H開始執(zhí)行。這段程序先關(guān)中斷,以便后續(xù)處理能順利進(jìn)行,然后用兩個(gè)RETI指令代替兩個(gè)LJMP指令,從而清除了兩級(jí)中斷激活標(biāo)志。有相應(yīng)軟件陷阱捕捉來的程序可能沒有全部激活兩個(gè)標(biāo)志,這也無妨。第三章 搶答器的軟件設(shè)計(jì) 軟件任務(wù)分析軟件任務(wù)分析和硬件電路設(shè)計(jì)結(jié)合進(jìn)行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計(jì)基本定型后,也就基本上決定下來了。軟件任務(wù)分析環(huán)節(jié)是為軟件設(shè)計(jì)做一個(gè)總體規(guī)劃。從軟件的功能來看可分為兩大類:一類是執(zhí)行軟件,它能完成各種實(shí)質(zhì)性的功能,如測(cè)量,計(jì)算,顯示,打印,輸出控制和通信等,另一類是監(jiān)控軟件,它是專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系,在系統(tǒng)軟件中充當(dāng)組織調(diào)度角色的軟件。這兩類軟件的設(shè)計(jì)方法各有特色,執(zhí)行軟件的設(shè)計(jì)偏重算法效率,與硬件關(guān)系密切,千變?nèi)f化。軟件任務(wù)分析時(shí),應(yīng)將各執(zhí)行模塊一一列出,并為每一個(gè)執(zhí)行模塊進(jìn)行功能定義和接口定義(輸入輸出定義)。在各執(zhí)行模塊進(jìn)行定義時(shí),將要牽扯到的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型問題也一并規(guī)劃好。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。首先根據(jù)系統(tǒng)功能和鍵盤設(shè)置選擇一種最適合的監(jiān)控程序結(jié)構(gòu)。相對(duì)來講,執(zhí)行模塊任務(wù)明確單純,比較容易編程,而監(jiān)控程序較易出問題。這如同當(dāng)一名操作工人比較容易,而當(dāng)一個(gè)廠長就比較難了。軟件任務(wù)分析的另一個(gè)內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。整個(gè)系統(tǒng)軟件可分為后臺(tái)程序(背景程序)和前臺(tái)程序。后臺(tái)程序指主程序及其調(diào)用的子程序,這類程序?qū)?shí)時(shí)性要求不是太高,延誤幾十ms甚至幾百ms也沒關(guān)系,故通常將監(jiān)控程序(鍵盤解釋程序),顯示程序和打印程序等與操作者打交道的程序放在后臺(tái)程序中執(zhí)行;而前臺(tái)程序安排一些實(shí)時(shí)性要求較高的內(nèi)容,如定時(shí)系統(tǒng)和外部中斷(如掉電中斷)。也可以將全部程序均安排在前臺(tái),后臺(tái)程序?yàn)椤笆瓜到y(tǒng)進(jìn)入睡眠狀態(tài)”,以利于系統(tǒng)節(jié)電和抗干擾。 主程序機(jī)構(gòu)圖 。其工作原理為:接通電源后,主持人按復(fù)位按鈕是系統(tǒng)復(fù)位,如想調(diào)節(jié)搶答時(shí)間和回答時(shí)間,主持人需按加一和減一鍵調(diào)節(jié),在按停止鍵確定。先按加一健調(diào)節(jié)的是搶答時(shí)間,反之則調(diào)節(jié)的是答題時(shí)間。當(dāng)主持人按下開始鍵后,顯示60s倒計(jì)時(shí)(系統(tǒng)程序搶答時(shí)間初值為60s)。蜂鳴器發(fā)出警報(bào)提示選手搶答,有選手搶答成功后,顯示60s答題倒計(jì)時(shí)(系統(tǒng)程序答題時(shí)間初值為60s),到倒計(jì)時(shí)5s是,蜂鳴器發(fā)聲提示選手快點(diǎn)做答。當(dāng)一輪搶答之后,定時(shí)器停止、禁止二次搶答,主持人按停止鍵,顯示000。如果要再次搶答,主持人再次按開始鍵后選手即可開始再次搶答。系統(tǒng)初始化模塊按鍵模塊非法搶答模塊正確搶答模塊調(diào)整搶答時(shí)間調(diào)整回答時(shí)間數(shù)碼顯示模塊 軟件系統(tǒng)結(jié)構(gòu)圖 程序流程圖設(shè)計(jì)在本設(shè)計(jì)中包括了以下八個(gè)主要的程序:主程序;非法搶答序;搶答時(shí)間調(diào)整程序;回答時(shí)間調(diào)整程序;倒計(jì)時(shí)程序;正常搶答處理程序;犯規(guī)處理程序;顯示及發(fā)聲程序。顯示000開始鍵按下?加一鍵按下?減一鍵按下?回答時(shí)間 調(diào)整搶答時(shí)間去抖動(dòng)非法搶答處理顯示犯規(guī)正常搶答 顯示搶答號(hào)并倒計(jì)時(shí)Y YY 初始化初始化Y YY 顯示搶答號(hào)并倒計(jì)時(shí)正常搶答 顯示非法搶答處理去抖動(dòng)調(diào)整搶答時(shí)間回答時(shí)間 減一鍵按下?加一鍵按下? 開始鍵按下?LED顯示調(diào)整搶答時(shí)間 程序設(shè)計(jì)流程圖 程序設(shè)計(jì)程序代碼如下:OK EQU 20H 。搶答開始標(biāo)志位 RING EQU 22H 。響鈴標(biāo)志位 ORG 0000H AJMP MAIN ORG 0003H AJMP INT0SUB ORG 000BH AJMP T0INT ORG 0013H
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1