新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 電機轉(zhuǎn)速測量控制程序

        電機轉(zhuǎn)速測量控制程序

        作者: 時間:2012-09-18 來源:網(wǎng)絡 收藏
        以單片機為核心, 利用芯片實現(xiàn)按鍵輸入和利用數(shù)碼管顯示所測轉(zhuǎn)速,利用ADC0809將輸入電壓模擬量轉(zhuǎn)化為數(shù)字量(實驗箱內(nèi)部已接好相關接口)控制電機轉(zhuǎn)速的目的。然后利用DA0832將電機上的傳感器配合DA0832的CKMOT接口將脈沖信號接到的INT0,利用外中斷實現(xiàn)速度的測量,一次外中斷會使速度計數(shù)器自動加一,利用定時器產(chǎn)生一秒的計時,得出一秒內(nèi)速度計數(shù)器的值就可以得到電機的轉(zhuǎn)速。另定時計數(shù)器每250MS產(chǎn)生一次定時器中斷,利用中斷來檢測是否有新的控制信號輸入,以達到實時控制轉(zhuǎn)速的目的。
           ORG 0000hajmp mainORG 0003h  ;外部中斷0AJMP ZSORG 000BH  ;定時計數(shù)器0中斷AJMP JSORG 0100Hmain: mov sp,#60hCLR PSW.5    ;清零標志位SETB P1.0    ;置位檢測位setb et0SETB IT0 ;外部中斷0下降沿有效SETB EX0 ;允許T0中斷mov DPTR,#5FFFH ;初始化MOV A,#0DCHMOVX @DPTR,AWAIT: MOVX A,@DPTRJB ACC.7,WAITMOV A,#00HMOVX @DPTR,AMOV A,#34HMOVX @DPTR,AMOV R0,#30H ;清零所用數(shù)值緩沖區(qū)CL:   MOV A,#00HMOV @R0,AINC R0CJNE R0,#36H,CLMOV 36H,#200MOV 37H,#20ACALL DIRTIME: MOV TMOD,#02H ;一秒定時MOV TH0,#6MOV TL0,#6SETB TR0  ;開啟T0中斷SETB EALOP2: JNB PSW.5,LOP3CLR PSW.5ACALL DIR   ;到一秒顯示轉(zhuǎn)速JMP LOP2LOP3: MOV DPTR,#9FF4H ;啟動a/dMOVX @DPTR,A;ACALL DELAY1JB P1.0, $MOVX A,@DPTRMOV DPTR,#7FFFH ;啟動d/aMOVX @DPTR,AAJMP LOP2JS:   PUSH ACC   ;T0中斷子程序DJNZ 36H,OUTDJNZ 37H,nextajmp next1 next: MOV 36H,#200ajmp outnext1:SETB PSW.5MOV 33H,30HMOV 34H,31HMOV 35H,32HMOV 30H,#0MOV 31H,#0MOV 32H,#0MOV 36H,#200MOV 37H,#20OUT:  POP ACCRETIZS:   PUSH ACC   ;外部中斷子程序CLR EX0MOV A,30HADD A,#1DA AMOV 30H,ACJNE A,#99H,OUT1MOV 30H,#0MOV A,31HADD A,#1DA AMOV 31H,ACJNE A,#99H,OUT1MOV 31H,#0MOV A,32HADD A,#1DA AMOV 32H,AOUT1: SETB EX0POP ACCRETI   DIR:  MOV R0,#33HMOV DPTR,#5FFFHMOV A,#92HMOVX @DPTR,AMOV R2,#03HLED:  MOV A,@R0ANL A,#0FHMOV DPTR,#LEDTABMOVC A,@A+DPTRMOV DPTR,#5EFFHMOVX @DPTR,AMOV A,@R0SWAP AANL A,#0FHMOV DPTR,#LEDTABMOVC A,@A+DPTRMOV DPTR,#5EFFHMOVX @DPTR,AINC R0DJNZ R2,LEDRETLEDTAB:DB 0c0H,0f9H,0a4H,0b0H,99H,92H,82H,0f8H,80H,90HDELAY1: MOV R6,#5DELAY2: MOV R7,#200DJNZ R7,$DJNZ R6,DELAY2  RETEND
        電能表相關文章:電能表原理


        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 盐边县| 三河市| 景德镇市| 永川市| 永城市| 桐庐县| 筠连县| 铁力市| 百色市| 河西区| 靖西县| 祁连县| 浦东新区| 含山县| 仪陇县| 黄大仙区| 左权县| 二连浩特市| 双柏县| 喀什市| 裕民县| 六枝特区| 梁平县| 武宁县| 抚顺市| 龙胜| 凌云县| 大余县| 堆龙德庆县| 潮州市| 锡林浩特市| 平安县| 浙江省| 台湾省| 苍南县| 阳春市| 沾益县| 特克斯县| 桦南县| 磐安县| 襄城县|