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

正文內(nèi)容

三位倒計時器pic單片機(jī)課程設(shè)計含全部匯編程序清單(更新版)

2025-05-21 05:00上一頁面

下一頁面
  

【正文】 SHI3 BCF PORTB,1 。將NUM9與NUM6相加 ADDWF NUM6,W MOVWF NUMB 。十位位選打開 MOVF NUM,W 。同時送入顯示變量 MOVWF NUM11 。KEYFLAG恢復(fù)初始值 MOVWF KEYFLAG RETURN 。是否第二次鍵入 CALL XIANSHI2 。是否借位 GOTO DIVLOOP 。百位位選打開 CALL DELAY 。位選關(guān)閉 MOVF SHI,W CALL CHABIAO 。返回數(shù)送入SHI,用于十位的顯示 MOVF SHANG,W 。中間變量的初始化 CLRF NUM10 GOTO LOOP 。調(diào)用鍵盤掃描子程序 MOVLW 00H 。送入中斷循環(huán)次數(shù)初值為20 MOVWF COUNTER MOVLW 0FFH 。分頻比為1:256 MOVWF OPTION_REG MOVLW 0C1H 。 return from interruptMAIN 。否,中斷返回 DECF NUMB 。 ensure page bits are cleared goto MAIN 。_XT_OSC。對于后者,只要電路板的編排合理,就可以省去導(dǎo)線連接的步驟,而且能夠?qū)崿F(xiàn)各種形狀的制作,有助于廣大使用者的喜愛。學(xué)習(xí)到這些的同時,它也對我的心態(tài)起到了鍛煉的作用,遇到問題時不能一味的抱怨,而是應(yīng)該靜下心來仔細(xì)的分析問題產(chǎn)生的原因,并且找到解決的辦法?;厥渍麄€過程,我會發(fā)現(xiàn)自己的許多不足。圖27 提醒子程序流程圖程序在主程序中可查,不再贅述。跳轉(zhuǎn)至LOOP大循環(huán)當(dāng)?shù)褂嫊r為0后,指示燈和蜂鳴器發(fā)出警示,之后計時器恢復(fù)初始狀態(tài),可以重新工作。顯示變量減一 RETURN 復(fù)位和歸零所謂復(fù)位,是指該鍵按下后一切恢復(fù)初始狀態(tài),計時器可以重新工作。釋放 BSF INTCON,5 。 附加功能部分為增加該倒計時器工作的靈活性,我們增加了一些比如暫停,繼續(xù),加一,減一,復(fù)位和歸零后重新開始等附加功能。 return from interrupt主程序中有關(guān)部分為:BSF STATUS,RP0 。循環(huán)減1,是否為0 GOTO RT 。由定時時間=分屏比*指令周期*(256初值),我們能夠算出當(dāng)分頻比為1:256時使其定時50毫秒時的初值為3DH,當(dāng)TMR0送入初值時該計時器開始計時,當(dāng)計時循環(huán)20次時計數(shù)變量減1,這就是它工作的基本原理。為0,返回 。不為0,調(diào)用加十2子程序 MOVF NUM10,W 。以三個數(shù)轉(zhuǎn)化為三位數(shù)為例。放入顯示變量里 RETURN 。送入段選 MOVWF PORTD CALL DELAY 。BIAN帶1顯示碼返回 RLF KEYFLAG,1 。NUM8帶0返回 CALL CHABIAO 。是,跳至鍵3功能子程序 0到9按鍵功能子程序和鍵盤顯示子程序0到9按鍵的主要作用是輸入我們倒計時的初值,當(dāng)這些按鍵按下時,會調(diào)用鍵盤顯示子程序,將鍵入的數(shù)字通過數(shù)碼管顯示出來。逐行判斷哪個鍵輸入,首先RC0=0 MOVWF PORTC BTFSS PORTC,4 。RC口低四位輸出低電平 MOVWF PORTC MOVLW 0F0H ANDWF PORTC,W 。模塊劃分時應(yīng)遵循下述原則:1.每個模塊應(yīng)具有獨(dú)立的功能,能產(chǎn)生一個明確的結(jié)果;2.模塊之間的控制參數(shù)應(yīng)盡量簡單,數(shù)據(jù)參數(shù)應(yīng)盡量少;3.根據(jù)模塊的劃分原則,將該程序劃分成6個模塊,如圖18所示。圖11 鍵盤設(shè)計電路圖數(shù)碼管顯示需送入位選和段選,我們所需為3位顯示,采用4個數(shù)碼管,因此需要將4個位選聯(lián)入單片機(jī)中,同時還將有8條段選聯(lián)入其中。鍵F的主要功能為當(dāng)計時需要停止和重新再來時,按下它,計時器重新工作。本次設(shè)計的重要意義還在于對單片機(jī)的內(nèi)部結(jié)構(gòu)和工作狀態(tài)做更進(jìn)一步的了解,同時還對單片機(jī)的接口技術(shù),中斷技術(shù),存儲方式和控制方式有了更深層次的了解。本次設(shè)計注重對單片機(jī)工作原理以及鍵盤控制及顯示原理的理解,能夠提高自己的動手能力和設(shè)計能力,以培養(yǎng)自己的創(chuàng)新能力,做到理論和實(shí)踐相結(jié)合。實(shí)現(xiàn)過程如下:當(dāng)從鍵盤輸入任意三位以內(nèi)包括三位數(shù),數(shù)碼管顯示輸入數(shù)值,按下鍵A倒計時開始,按下鍵B倒計時暫停,按下鍵C倒計時繼續(xù);當(dāng)發(fā)現(xiàn)計時過程中需要調(diào)整計時時,可以在暫?;蚍菚和G闆r下按下鍵D或鍵E實(shí)現(xiàn)計數(shù)加一和減一的功能。因此,我們將RC的低四位與鍵盤的輸入相連,高四位與輸出相連,以實(shí)現(xiàn)鍵盤的正確掃描。其具體電路圖如下:圖14 單片機(jī)接線圖上電電路采用已有的設(shè)計好的電路,由USB接口供電,其電路圖如下:圖15 上電電路總電路圖如下圖16:圖16 總電路圖由以上設(shè)計可知,系統(tǒng)的硬件原理圖如下所示:圖17 硬件原理圖設(shè)計時可采用模塊化程序設(shè)計方法。以RC0=0為例,框圖如下:圖22 鍵盤掃描流程圖程序及注釋如下:JIANPAN MOVLW 00H 。確實(shí)有鍵輸入,蜂鳴器鳴叫 MOVLW 0FEH 。判斷鍵3 GOTO JIAN3 。將0放入W寄存器 MOVWF NUM8 。調(diào)用查表子程序 MOVWF BIAN 。其程序代碼及注釋如下,這里以兩位顯示為例。十位位選打開 MOVF NUM,W 。將NUM9與NUM6相加 ADDWF NUM6,W MOVWF NUMB 。該程序的原理是:首先判斷鍵入幾位數(shù),最初鍵入的數(shù)在十位,十位還是百位,然后對其相應(yīng)的加一百或時循環(huán),最后把所有的轉(zhuǎn)化之后的數(shù)加起來,實(shí)現(xiàn)多位數(shù)的轉(zhuǎn)化。為0,繼續(xù)判斷十位數(shù)是否為0 SUBWF NUM6,F BTFSS STATUS,Z CALL JIASHI2 。不為0,返回加百 RETURN 。但是TMR0定時器所能定時的最長時間為65毫秒,為實(shí)現(xiàn)1秒的定時,我們選擇其定時50毫秒,循環(huán)20次的方法。清TMR0溢出標(biāo)志位 DECFSZ COUNTER 。 restore preisr W register contents retfie 。其子程序在總程序中可查,不再多說。C鍵,用于計數(shù)繼續(xù)JIANC CALL SFANG 。釋放 DECF NUMB 。中間變量的初始化 CLRF NUM10 GOTO LOOP 。跳轉(zhuǎn)至LOOP大循環(huán),重新開始工作 結(jié)束提示部分當(dāng)計時到0時,三色小燈各亮滅一次,且小燈亮起蜂鳴器響起,亮燈關(guān)閉蜂鳴器停止鳴叫。這兩周里我們體驗(yàn)了從焊板到編寫程序,再到燒寫、調(diào)試程序,最終完成我們的設(shè)計的艱辛歷程。通過這次課程設(shè)計我了解了電子設(shè)計的基本流程,熟練的掌握了編程軟件和匯編語言的使用,同時鍛煉了我的編程思維,讓我在以后的編程過程中少走一些彎路。出于這些問題,只要時間足夠,可以設(shè)置兩個內(nèi)存空間用于存放計時變量,且把數(shù)碼管擴(kuò)展為4位甚至更多,就能夠?qū)崿F(xiàn)多達(dá)65535秒的計時,當(dāng)然實(shí)際生活中很少用到這么長時間的秒用計時。_WDT_OFFamp。 processor reset vector clrf PCLATH 。循環(huán)減1,是否為0 GOTO RT 。 restore preisr W register contents retfie 。RD設(shè)為輸出 MOVLW 07H 。打開總中斷和T0中斷使能位 MOVWF INTCON MOVLW .20 。調(diào)用顯示子程序 CALL JIANPAN 。KEYFLAG初始化 MOVWF KEYFLAG CLRF NUM9 。調(diào)用除十子程序 MOVWF SHI 。延時 BSF PORTB,1 。送入段選 BCF PORTB,3 。SHANG加1 BTFSC STATUS,C 。是,調(diào)用顯示1子程序 BTFSC KEYFLAG,2 。鍵入次數(shù)循環(huán)子程序FLAGINI MOVLW 02H 。將加入數(shù)送入NUM5 MOVWF NUM5 MOVWF NUMB 。個位位選關(guān)閉 BCF PORTB,2 。否,調(diào)用加十1子程序 MOVF NUM9,W 。是,返回 。延時 BSF PORTB,2 。判斷百位數(shù)是否為0 SUBWF NUM11,F BTFSS STATUS,Z CALL JIABAI 。NUM11減1 BTFSS STATUS,Z 。否,繼續(xù)加十 RETURN 。再判斷一次是否鍵入 ANDWF PORTC,W SUBLW 0F0H BTFSC STATUS,Z RETURN 。判斷鍵2 GOTO JIAN2 。是,跳至鍵5功能子程序 BTFSS PORTC,6 。判斷鍵9 GOTO JIAN9 。是,跳至鍵C功能子程序 BTFSS PORTC,5 。釋放 MOVLW 00H 。NUM8帶1返回 CALL CHABIAO 。BIAN帶2顯示碼返回 RLF KEYFLAG,1 。釋放 MOVLW 04H 。NUM8帶5返回 CALL CHABIAO 。BIAN帶6顯示碼返回 RLF KEYFLAG,1 。釋放 MOVLW 08H 。將9放入W寄存器 CALL CHABIAO 。進(jìn)入倒計時顯示大循環(huán) RETURN 。釋放 INCF NUMB 。鍵盤次數(shù)判斷恢復(fù)初始值 MOVWF KEYFLAG CLRF NUM9 。無低電平,延時10毫秒 MOVLW 0F0H 。小燈閃爍子程序,3種顏色的小燈每隔1秒交替亮滅1秒SHANSHU BCF PORTE,0 。蜂鳴器關(guān) MOVWF PORTE CALL DELAY1S BCF PORTE,2 。42
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1