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

正文內(nèi)容

基于522單片機(jī)的搶答器設(shè)計(jì)-在線瀏覽

2024-08-05 14:05本頁(yè)面
  

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