estoy haciendo una practica del control de un motor unipolar con el uln2803. mi codigo esta en pic c compiler y tengo el sistema minimo con el 18f4550.
Mi problema es el siguiente quiero que cambie la velocidad en cualquier punto del programa y mi profe me dijo que con una variable , y son 2 push boton uno para aumentar la velocidad y otro para disminuirla(yo use el puerto b como entrada los 2 primeros pines) pero no me hace nada si me compila pero prende todo al mismo tiempo no se espera ni cambia el tiempo ya no se me ocurre nada ayuda "es para mañana"
#include <18F4550.h> //
#fuses hs,nolvp,nowdt,noprotect
#use delay (clock=20000000) //Declaración del cristal que se ocupa para la operación.
//Habilitar puerto
#byte portb=0XF81
#byte portd=0XF83
//Dirección de la memoria donde se localiza el Puerto b.
//Habilitacion de puertos como entrada o salida
inicializar(){
set_tris_d(0x01); //Configurar el puerto d como entrada
set_tris_b(0x00); //Configurar el puerto b como salida
output_b(0); //Limpio el puerto B de cualquier basura
}
int1 tiempo=400;
//Programa principal
void main()
{
inicializar();
while(true)
{
if(portb==1){ //este es un push boton que tiene que aumentar o disminuir la velocidad en cualquier momento del progama
tiempo=tiempo+200
}
else if(portb=2){ //este es un push boton que tiene que aumentar o disminuir la velocidad en cualquier momento del progama
tiempo=tiempo-200)
}
portb=0x0C;
delay_ms(tiempo);
portb=0x06;
delay_ms(tiempo);
portb=0x03;
delay_ms(tiempo);
portb=0x09;
delay_ms(tiempo);
}
}