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

正文內(nèi)容

基于51單片機的搶答器設計畢業(yè)論文-在線瀏覽

2024-08-05 14:15本頁面
  

【正文】 1 雖然特殊功能寄存器地址在80H~FFH之中,但在80H~FFH的地址單元中,不是所有的單元都被特殊功能寄存器占用,未被占用的單元,其內(nèi)容是不確定的,如果對這些單元進行操作,得到的是一些隨機數(shù),而寫入則無效。單片微機內(nèi)部最核心的部分是CPU??刂破饔沙绦蛴嫈?shù)器PC、指令儲存器、指令譯碼器、實時控制與條件轉(zhuǎn)移邏輯電路等組成。運算器由算術(shù)邏輯器部件ALU、累加器ACC、暫存器、程序狀態(tài)字寄存器PSW,BCD碼運算調(diào)整電路等組成。其內(nèi)部結(jié)構(gòu)如圖23所示。(2) 留有設計余地。因為很少有一錘定音的電路設計,如果現(xiàn)在不留余地,將來可能要為一點小小的修改或擴展而被迫進行全面返工。(4) RAM空間,AT89S51內(nèi)部RAM不多,當要增強軟件數(shù)據(jù)處理功能時,往往覺得不足。如選用8155作I/O接口,則應配置足夠的RAM,如6264,62256等。只要在硬件電路設計初期考慮到這一點,就應該為系統(tǒng)將來升級留足夠的RAM空間,哪怕多設計一個RAM的插座,暫不插芯片也好。如有些新的信號需要采集,就必須增加輸入檢測端;有些物理量需要控制,就必須增加輸出端。[9],數(shù)碼管段選P0口,位選P2口低3位。MCS51單片機允許的時鐘頻率是因型號而異的。12MHz的晶振,其機器周期是1us, 也就是說在執(zhí)行同一條指令時用6MHz的晶振所用的時間是12MHz晶振的兩倍。振蕩方式的選擇:內(nèi)部振蕩方式,MCS51內(nèi)部都有一個反相放大器,XTALXTAL2分別為反相放大器輸入和輸出端,外接定時反饋元件以后就組成振蕩器,產(chǎn)生時鐘送至單片機內(nèi)部的各個部件。這種方式適合用來使單片機的時鐘與外部信號一致。晶振我選擇了12MHz,相對于6MHz的晶振,整個系統(tǒng)的運行速度更快了。內(nèi)部振蕩方式所得的時鐘信號穩(wěn)定性高。一般選用石英晶體振蕩器。電路中兩個電容 C1,C2的作用有兩個:一是幫助振蕩器起振。C1,C2的典型值為30PF。其大小是時鐘信號頻率的倒數(shù),常用fosc表示。s。MCS51的復位輸入引腳RST為MCS51提供了初始化的手段,可以使程序從指定處開始執(zhí)行,在MCS51的時鐘電路工作后,只要RST引腳上出現(xiàn)超過兩個機器周期以上的高電平時,即可產(chǎn)生復位的操作。只有當RST由高電平變低電平以后,MCS51才從0000H地址開始執(zhí)行程序。MCS51單片機有一個復位引腳RST,它是施密特觸發(fā)輸入,當振蕩器起振后,該引腳上出現(xiàn)2個機器周期(即24個時鐘周期)以上的高電平。此時ALE、/PSEN、P0、PPP3口都輸出高電平。復位以后內(nèi)部寄存器的初始狀態(tài)為(SP=07,P0、PPP3為0FFH外,其它寄存器都為0。如圖,在加電瞬間,電容通過電阻充電,就在RST端出現(xiàn)一定時間的高電平,只要高電平時間足夠長,就可以使MCS51有效地復位。10MHz時間約為1ms,1MHz時約為10ms,所以一般為了可靠地復位,RST在上電時應保持20ms以上的高電平。當振蕩頻率為12MHZ時,典型值為C=10uF,R=. 圖33上電復位電路除上電自動復位以外,常常需要人工復位,將一個按鈕開關(guān)并聯(lián)于上電自動復位電路,按一下開關(guān)就RST端出現(xiàn)一段時間的高電平,即使器件復位。當時鐘頻率選用12MHz時,C選取10uF,R選擇1000歐。 顯示模塊在系統(tǒng)硬件中的安排操作者主要設計從顯示設備上獲取微機系統(tǒng)的信息的,因此,操作者每操作一下,顯示設備商都應該有一定的反應。不同的操作需要顯示不同的內(nèi)容,這又說明各執(zhí)行模塊對顯示模塊的驅(qū)動方式是不同的。這時顯示模塊不是由操作者通過命令鍵來驅(qū)動,而是由各類自動執(zhí)行的功能模塊來驅(qū)動。如果監(jiān)控安排在中斷子程序中,兩者的要求就統(tǒng)一了,問題比較好解決,如果監(jiān)控程序安排在主程序中,在監(jiān)控程序調(diào)用顯示模塊的過程中發(fā)生了中斷,中斷子程序也調(diào)用顯示模塊,這時就容易出問題。這就要設置一個顯示申請標志,當某模塊需要顯示時,將申請標志置位,同時設定有關(guān)顯示內(nèi)容(或指針)。為了使顯示模塊能及時反應系統(tǒng)需要,應將顯示模塊安排在一個重復執(zhí)行的循環(huán)(如監(jiān)控循環(huán)或時鐘中斷子程序)中。這里將顯示功能集中到一起,作為一個功能模塊,就要求它的功能全面,能根據(jù)系統(tǒng)軟件提供的信息自動完成顯示內(nèi)容的查找,變換和輸出驅(qū)動。如果編寫這樣一個集中顯示模塊有困難,也可以將顯示模塊編小一些,只完成顯示緩沖區(qū)的內(nèi)容輸出到顯示器件上的工作。這樣分而治之比較容易編程,但要小心出現(xiàn)顯示混亂。解決的辦法是,在申請顯示前,先檢查是否已經(jīng)有顯示申請,如果有,就不再申請,等待下次機會;如果沒有,則先申請標志位,再將顯示內(nèi)容送入顯示緩沖區(qū)。在這里我們使用的是七段數(shù)碼管顯示,通常在顯示[6]上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,一種是動態(tài)顯示。在本設計中根據(jù)實際情況采用的是動態(tài)顯示方法。在這里我們通過查表將字型碼送給7段數(shù)碼管顯示的數(shù)字,數(shù)碼管顯示原理如下: MOV A,R5 MOVC A,A+DPTR ;查字型碼 MOV P2,01H ;送位選碼 MOV P0,A ;送字型碼ACALL DELAY ;調(diào)延時,去閃爍在七段數(shù)碼管顯示中可分為共陽極和共陰極兩種類型極。 掃描電路的實現(xiàn)鍵盤是人與微機系統(tǒng)打交道的主要設備。站在系統(tǒng)監(jiān)控軟件設計的立場上來看,僅僅完成鍵盤掃描,讀取當前時刻的鍵盤狀態(tài)是不夠的,還有不少問題需要妥善解決,否則,人們在操作鍵盤就容易引起誤操作和操作失控現(xiàn)象。 它們各有自己的特點,其中獨立鍵盤硬件電路簡單,而且在程序設計上也不復雜,一般用在對硬件電路要求不高的簡單電路中;矩陣鍵盤與獨立鍵盤有很大區(qū)別,首先在硬件電路上它要比獨立鍵盤復雜得多,而且在程序算法上比它要煩瑣,但它在節(jié)省端口資源上有優(yōu)勢得多,因此它更適合于多按鍵電路。這里采用最常用的方法,即延時重復掃描法,延時法的原理為:因為“毛刺”脈沖一般持續(xù)時間短,約為幾ms,而我們按鍵的時間一般遠遠大于這個時間,所以當單片機檢測到有按鍵動靜后再延時一段時間(這里我們?nèi)?0ms)后再判斷此電平是否保持原狀態(tài),如果是則為有效按鍵,否則無效?,F(xiàn)在一般均用軟件延時的方法來避開抖動階段,這一延時過程一般大于5ms,例如取1020ms。如果讀鍵過程安排在定時中斷子程序中,就可省去專門的延時子程序,利用兩次定時中斷的時間間隔來完成抖動處理。 系統(tǒng)復位使CPU進入初始狀態(tài),從0000H地址開始執(zhí)行程序的過程叫系統(tǒng)復位。硬件復位必須通過CPU外部的硬件電路給CPU的RESET端加上足夠時間的高電位才能實現(xiàn)。硬件復位后,各專用寄存器的狀態(tài)均被初始化,且對片內(nèi)通用寄存器的內(nèi)容沒有影響。軟件復位就是用一系列指令來模擬硬件復位功能,最后通過轉(zhuǎn)移指令使程序從0000H地址開始執(zhí)行。而對中斷激活標志的清除工作常被遺忘,因為它沒有明確的位地址可供編程。軟件復位是使用軟件陷阱和軟件看門狗后必須進行的工作,這時程序出錯完全有可能發(fā)生在中斷子程序中,中斷激活標志已置位,它將阻止同級中斷響應。在所有的指令中,只有RETI指令能夠清除中斷激活標志。有復位時系統(tǒng)的歷史狀況,可將復位分為“冷啟動”和“熱啟動”。系統(tǒng)初次上電投入運行時,必須是“冷啟動”,以后由抗干擾措施引起的復位操作一般均為“熱啟動”初次上電投入運行時,必須是“冷啟動”,以后由抗干擾措施引起的復位操作一般均為“熱啟動”。圖36 系統(tǒng)復位策略圖第四章 軟件設計 軟件任務分析軟件任務分析和硬件電路設計結(jié)合進行,哪些功能由硬件完成,哪些任務由軟件完成,在硬件電路設計基本定型后,也就基本上決定下來了。從軟件的功能來看可分為兩大類:一類是執(zhí)行軟件,它能完成各種實質(zhì)性的功能,如測量,計算,顯示,打印[8],輸出控制和通信等,另一類是監(jiān)控軟件,它是專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系,在系統(tǒng)軟件中充當組織調(diào)度角色的軟件。軟件任務分析時,應將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進行功能定義和接口定義(輸入輸出定義)。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。相對來講,執(zhí)行模塊任務明確單純,比較容易編程,而監(jiān)控程序較易出問題。軟件任務分析的另一個內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。后臺程序指主程序及其調(diào)用的子程序,這類程序?qū)崟r性要求不是太高,延誤幾十ms甚至幾百ms也沒關(guān)系,故通常將監(jiān)控程序(鍵盤解釋程序),顯示程序和打印程序等與操作者打交道的程序放在后臺程序中執(zhí)行;而前臺程序安排一些實時性要求較高的內(nèi)容,如定時系 統(tǒng)和外部中斷(如掉電中斷)。 顯示子程序的設計顯示子程序,及部分注解如下:DISPLAY:MOV DPTR,DAT1。 。 MOV TH0,0ECHMOV TL0,0FFHJNB RING,OUT。OUT:T1溢出中斷(計時程序):T1INT:按鍵發(fā)聲MOV A,R2MOV R6,A。因為答題的計時不再查詢搶答,所以就鎖了搶答AJMP COUNTTRUE2:ACALL BARK。MOV A,R2MOV R6,AMOV R3,03HCLR OKAJMP COUNTTRUE4:ACALL BARK。 ACALL BARK。 ACALL BARK。 ACALL BARK。 ACALL BARK。搶答開始標志位響鈴標志位AJMP MAINAJMP INT0SUBAJMP T0INTAJMP INT1SUBAJMP T1INT初設搶答時間為30s初設答題時間為60s設置未定時器/模式1 MOV TL0,0FFH。 MOV TH1,3CH50ms為一次溢出中斷 SETB ET0SETB EX0允許四個中斷,T0/T1/INT0/INT1CLR RING SETB TR1 SETB TR0。=====查詢程序=====START: MOV R5,0BH MOV R4,0BH MOV R3,0BH未開始搶答時候顯示FFF JB ,NEXT。去抖動,如果開始鍵按下就向下執(zhí)行,否者跳到非法搶答查詢 ACALL BARK。 MOV R6,A。搶答標志位,用于COUNT只程序中判斷是否查詢搶答 MOV R3,0AH。 AJMP COUNT。 JNB ,FALS
點擊復制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1