Usando un microcontrolador para controlar la aceleración y desaceleración de motores paso a paso, por favor...
6 es el SPD de tres teclas EQU 30HNUMBER EQU 31HORG 0000 LJMP MAINORG 0003H LJMP INT0DEALORG 000BH LJMP T0DEAL
ORG 0030H;===================== == =============QIDONG: mov dptr,#speedd mov a,spd rl a push acc movc a,@a+dptr mov th0,a pop acc inc a movc a,@a +dptr mov tl0,a mov p1,#08h número de mov,#1 setb tr0 setb et0 setb ea ret;=============== ============ == ==cerrar: clr tr0 clr et0 clr ea ret;=================================;medio paso en la pestaña: DB 08H,0AH,02H,06H,04H,05H,01H,09H;====== ==========================;Total tabla de progreso de pasos: DB 0AH,06H,05H,09H;=============================== Velocidad: DW 56320 100 Hz DW 60928 200 Hz DW 62464 300 Hz DW 63232 400 Hz DW 63693 500 Hz DW 64000 600 Hz DW 64219 700 Hz DW 64384 800 Hz DW 64512 900 Hz DW 64614 1000 Hz DW 64698 Hz DW 64768 120 0 Hz DW 64827 1300 Hz DW 64878 1400 Hz DW 64922 1500 Hz DW 64960 1600 Hz DW 64994 1700 Hz DW 65024 1800 Hz DW 65051 1900 Hz DW 65075 2000 Hz;---------------------------------T0DEAL.clr tr0 mov dptr,#speed mov a,spd rl a push acc movc a,@a+dptr mov th0,a pop acc inc a movc a,@a+dptr mov tl0,a mov dptr,#hsteptab mov a,número movc a,@a+ dptr anl a ,#0fh mov p1,a mov a,number inc a cjne a,#8,t0deal1t0deal1:JC T0 DEAL2 MOV A,#0T0 DEAL2:NÚMERO DE MOV,AT02: RETI;============= ======== ======== ===================RETARDO: MOV 3DH,#249 ;0.5ms DJNZ 3DH,$ MOV 3DH,#249 ;0.5ms DJNZ 3DH,$ DJNZ 3EH,DELAY ;3EH=?ms RET;============================= ======== ========== PRINCIPAL: CLR EA CLR ET0 CLR ET1 CLR TR0 CLR ET0 CLR EX0 CLR EX1 CLR ES MOV SP,#5FH MOV 3EH,#250 LCALL DELAY MOV TMOD ,#01H SETB EA M
OV P1,#00HMAIN1: JB 3DH,$ DJNZ 3DH,DELAY ;3EH=?00HMAIN1: JB P1.4,MAIN2 ;K1:cambiar velocidad MOV 3EH,#10 LCALL DELAY JB P1.4,MAIN2 INC SPD MOV A,SPD CJNE A,#20,MAIN2MAIN2: JC MAIN3 MOV SPD,#0 SJMP MAIN1MAIN3: JB P1.5,MAIN4 ;K2: Iniciar MOV 3EH,#10 LCALL DELAY JB P1.5,MAIN4 LCALL QIDONG SJMP MAIN1MAIN4: JB P1.6 ,PRINCIPAL1 ;K3: Detener MOV 3EH,#10 RETARDO LLAMADA LC JB P1.6,CIERRE LLAMADA PRINCIPAL1 SJMP PRINCIPAL1;=========================== ====================FIN