蜂蜜厂家
免费服务热线

Free service

hotline

010-00000000
蜂蜜厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

以8051单片机为核心的电机转速测量控制程序

发布时间:2020-07-21 18:01:58 阅读: 来源:蜂蜜厂家

以单片机8031为核心, 利用8279芯片实现按键输入和利用数码管显示所测转速,利用ADC0809将输入电压模拟量转化为数字量(实验箱内部已接好相关接口)控制电机转速的目的。然后利用DA0832将电机上的传感器配合DA0832的CKMOT接口将脉冲信号接到8031的INT0,利用外中断实现速度的测量,一次外中断会使速度计数器自动加一,利用定时器产生一秒的计时,得出一秒内速度计数器的值就可以得到电机的转速。另定时计数器每250MS产生一次定时器中断,利用中断来检测是否有新的控制信号输入,以达到实时控制转速的目的。 ORG 0000h ajmp main ORG 0003h ;外部中断0 AJMP ZS ORG 000BH ;定时计数器0中断 AJMP JS ORG 0100Hmain: mov sp,#60h CLR PSW.5 ;清零标志位 SETB P1.0 ;置位检测位 setb et0 SETB IT0 ;外部中断0下降沿有效 SETB EX0 ;允许T0中断 mov DPTR,#5FFFH ;8279初始化 MOV A,#0DCH MOVX @DPTR,AWAIT: MOVX A,@DPTR JB ACC.7,WAIT MOV A,#00H MOVX @DPTR,A MOV A,#34H MOVX @DPTR,A

本文引用地址: MOV R0,#30H ;清零所用数值缓冲区CL: MOV A,#00H MOV @R0,A INC R0 CJNE R0,#36H,CL MOV 36H,#200 MOV 37H,#20 ACALL DIRTIME: MOV TMOD,#02H ;一秒定时 MOV TH0,#6 MOV TL0,#6 SETB TR0 ;开启T0中断 SETB EA

LOP2: JNB PSW.5,LOP3 CLR PSW.5 ACALL DIR ;到一秒显示转速 JMP LOP2LOP3: MOV DPTR,#9FF4H ;启动a/d MOVX @DPTR,A ;ACALL DELAY1 JB P1.0, $ MOVX A,@DPTR MOV DPTR,#7FFFH ;启动d/a MOVX @DPTR,A AJMP LOP2

JS: PUSH ACC ;T0中断子程序 DJNZ 36H,OUT DJNZ 37H,next ajmp next1 next: MOV 36H,#200 ajmp outnext1:SETB PSW.5 MOV 33H,30H MOV 34H,31H MOV 35H,32H MOV 30H,#0 MOV 31H,#0 MOV 32H,#0 MOV 36H,#200 MOV 37H,#20OUT: POP ACC RETI

ZS: PUSH ACC ;外部中断子程序 CLR EX0 MOV A,30H ADD A,#1 DA A MOV 30H,A CJNE A,#99H,OUT1 MOV 30H,#0 MOV A,31H ADD A,#1 DA A MOV 31H,A CJNE A,#99H,OUT1 MOV 31H,#0 MOV A,32H ADD A,#1 DA A MOV 32H,AOUT1: SETB EX0 POP ACC RETI DIR: MOV R0,#33H MOV DPTR,#5FFFH MOV A,#92H MOVX @DPTR,A MOV R2,#03HLED: MOV A,@R0 ANL A,#0FH MOV DPTR,#LEDTAB MOVC A,@A+DPTR MOV DPTR,#5EFFH MOVX @DPTR,A MOV A,@R0 SWAP A ANL A,#0FH MOV DPTR,#LEDTAB MOVC A,@A+DPTR MOV DPTR,#5EFFH MOVX @DPTR,A INC R0 DJNZ R2,LED RET

LEDTAB:DB 0c0H,0f9H,0a4H,0b0H,99H,92H,82H,0f8H,80H,90H

DELAY1: MOV R6,#5DELAY2: MOV R7,#200 DJNZ R7,$ DJNZ R6,DELAY2 RET END

接地电阻相关文章:接地电阻测试方法

Wiki宝典

text-shadow 文本阴影

JavaScript Function

Android 文本输入框 EditText