天堂草原最受欢迎的角色,天堂动漫,天堂在线,色天堂下载,天堂中文在线资源,亚洲男人天堂

技術(shù)熱線: 4007-888-234
設(shè)計(jì)開(kāi)發(fā)

專(zhuān)注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開(kāi)發(fā)工具

提供開(kāi)發(fā)工具、應(yīng)用測(cè)試 完善的開(kāi)發(fā)代碼案例庫(kù)分享

技術(shù)支持

從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無(wú)限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競(jìng)爭(zhēng)力

新聞中心

提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)

定時(shí)器0的使用

更新時(shí)間: 2019-03-23
閱讀量:1956

十年專(zhuān)注單片機(jī)方案開(kāi)發(fā)的方案公司英銳恩,分享定時(shí)器0的使用。英銳恩現(xiàn)提供服務(wù)產(chǎn)品涉及主控芯片:8位單片機(jī)、16位單片機(jī)、32位單片機(jī)及各類(lèi)運(yùn)算放大器等。

;========================================================== ;定時(shí)器實(shí)現(xiàn)流水燈 ;MCD-DEMO實(shí)驗(yàn)版 ;========================================================== include

;======================================== ;變量定義 ;======================================== TMR0_TEMP EQU .0 ;軟件模擬使用230,編程為0,256*256=65536US=65.536MS W_TEMP EQU 7FH COUNT1 EQU 20H ;定時(shí)330MS記數(shù)變量 COUNT2 EQU 21H ;更長(zhǎng)時(shí)間記數(shù)變量 STATUS_TEMP EQU 22H PORTC_TEMP EQU 23H FLAG EQU 24H ;330MS定時(shí)標(biāo)志,時(shí)間到=1,未到=0 W EQU 0x00 F EQU 0x01 COUNT_TEMP EQU .4 ;軟件模擬使用2,編程為5,時(shí)間大約是330MS ;======================================== ; ;======================================== ORG 000H NOP GOTO MAIN ORG 004H GOTO TMR0SERC ;============================================= ;主程序開(kāi)始 ;=============================================

MAIN call systeminit ;調(diào)用初始化 LOOP BTFSS FLAG,0 ;判斷定時(shí)是否到 GOTO LOOP1 RlF PORTC_TEMP,F ;循環(huán)左移 BCF FLAG,0 LOOP1 MOVF PORTC_TEMP,W MOVWF PORTC GOTO LOOP ;============================================= ;初始化各端口、變量及中斷特殊寄存器 ;============================================= systeminit BSF STATUS,RP0 ;選擇體1 MOVLW 0 MOVWF TRISC MOVLW 07H ;軟件模擬為08H,編程為07H,1:256 MOVWF OPTION_REG BCF STATUS,RP0 CLRF INTCON MOVLW 0A0H ;開(kāi)總中斷和定時(shí)器0中斷 MOVWF INTCON MOVLW B'00000001' ;賦值 MOVWF PORTC_TEMP MOVLW COUNT_TEMP MOVWF COUNT1 BCF FLAG,0 ;清除標(biāo)志 MOVLW TMR0_TEMP ;啟動(dòng)定時(shí)器0 MOVWF TMR0 return ;============================================= ;定時(shí)器中斷程序,如果COUNT1為0,置標(biāo)志FLAG為1 ;============================================= TMR0SERC MOVWF W_TEMP ;軟件入棧 SWAPF STATUS,W CLRF STATUS MOVWF STATUS_TEMP BCF INTCON,T0IF ;清中斷標(biāo)志 DECFSZ COUNT1,F ;COUNT1減1,判斷是否為零 GOTO JUMP0 ;COUNT1不為零,軟件出棧,跳出中斷,啟動(dòng)定時(shí)器0 MOVLW COUNT_TEMP ;為零,賦值,F(xiàn)LAG=1 MOVWF COUNT1 BSF FLAG,0 JUMP0 MOVLW TMR0_TEMP MOVWF TMR0 SWAPF STATUS_TEMP,W MOVWF STATUS SWAPF W_TEMP,F SWAPF W_TEMP,W RETFIE ;============================================= ;結(jié)束 ;============================================= END

联系我们: 霞浦县| 家居| 江山市| 吐鲁番市| 健康| 舞阳县| 渝中区| 客服| 城口县| 淮滨县| 株洲市| 许昌市| 镇江市| 新安县| 中西区| 嫩江县| 共和县| 农安县| 铜山县| 荔浦县| 桑日县| 屏山县| 西吉县| 庄河市| 昌宁县| 荥经县| 恭城| 都匀市| 金平| 江孜县| 温州市| 庆元县| 奉节县| 兴山县| 中方县| 开封县| 神池县| 景德镇市| 泸西县| 冕宁县| 昌乐县|