gooooorgeeeee... qe onda menszoooooo ya ves yo tmbn poedooooooo jaja... eii grasiias poor pasar nooo sale poooes babae y eamm.. trataree de portarmee biiien JAJA... :D
ketransa oye un fabor chek este programa porfa y dime si esta bien o mal es para kontrolar un motor a pasos con el pic 16f84 chompy program steepin_1 'Este programa realiza secuencia de giro de motor a pasos unipolar empleando el 'PIC16F84 a 4 Mhz guardando en la variable paso el numero de la secuencia y 'pudiendo continuar en el mismo valor si se interrumpe el ciclo
symbol up = porta.2 'Empleo un simbolo para los pines 2 y 3 de PtoA symbol dn = porta.3
dim x,paso,pos as byte 'Paso almacena el numero de la secuencia de 0 a 7 'pos almacena valor que corresponde a esa secuencia
const STEPI as byte[8] = ($00, $01, $02, $03, $04, $05, $06, $07) ' STEPI en cada cambio corresponde a los 8 valores que puede tomar la constante
'------------------------------------------------ sub procedure avanza 'Subprocedimiento de avance if paso >= 7 then 'Pregunta si es el ultimo paso o no paso=0 'La variable paso reeinicia else 'Si no es cero incrementa inc(paso) end if pos=STEPI[paso] 'La variable pos toma el valor binario que corresponde al paso en el que nos encontramos end sub '------------------------------------------------ sub procedure retrocede 'Subprocedimiento de retroceso pos=STEPI[paso] 'Variable pos guarda el valor que asumira la nueva secuencia if paso
<=0 then 'Pregunta si el paso esta iniciando paso=7 else dec(paso) end if end sub
sub procedure delay 'Aqui no se si este realizando bien el programa para las variaciones de tiempo que se almacenan en la variable "X" while true 'si quito toda esta rutina y agergo en los retardos tiempos contantes el programa trabaja bien if up=1 and dn=0 then 'Manejo un tiempo minimo de 100 ms y un maximo de 1000 ms y sobre esto se modifica "x" que afecta a "vdelay_ms(X)" delay_ms(50) x=x+100 if x=1000 then x=1000 end if end if if dn=1 and up=0 then delay_ms(50) x=x-100 if x=100 then x=100 end if end if wend end sub
while true while (porta.0=1) and (porta.1 = 1) 'Si se cumplen las dos condiciones avanza avanza delay portb=pos 'El puertoB adopta el valor de la variable pos vdelay_ms(x) wend
while (porta.0=0) and (porta.1=1) 'Si se cumplen las dos condiciones retrocede retrocede delay portb=pos vdelay_ms(x) 'Retardo de permanencia de la condicion wend wend
hoooola!! mal amigo.... ntc... ke andas haciendo ahora eh?? ya tiene un buen rato que no platicamos.... cuidate mux niño, sabes que se te quiere mux y 2 montones sale byeee!!!XD
mmm....
weno aremos jira a por ai!!!!
jojojojoj....
ai la vemos compadre....xDDDDD