Buenas tardes.
Una pregunta. ¿Cómo hago el PWM con FOR en an/ar? Porque he visto unos vídeos y si se puede, pero en el vídeo tiene el todo el puerto B (8bits) para hacerlo, y digamos que cada pin que está en 1 va encendiendo el PWM pero en lenguaje binario, de arriba para abajo.
Por ejemplo:
Si enciendo el pin de arriba (ra0/na0) y todos los demás son 0, mandas una señal pequeña, digamos un 10% y la suma de todos hasta el 7 pin (ra6/an6) es el 50% y el último es el 50%
Pero quisiera usar un sólo pin con el for para hacerlo a un 50% porque como ya dije, en el otro era ocupando todo el puerto B y la verdad si me quita mucho espacio, pero usando FOR es mejor porque no saturo tanto el sistema como con un pwm.
Para que me entiendan lo anterior, les pongo aqui otro ejemplo:
1 2 4 8 16 32 64 128 = Binario entradas de puerto B
1 3 7 15 31 63 127 255 = La suma de cada uno que enciendo que es el PWM
0 0 0 1 1 0 1 0 = El resultado 1 es encendido y 0 es apagado, y esto da una frecuencia de 15 +31+127=173
Lo que quisiera saber, es cómo hago el PWM con un pin o pata sin saturar tanto el sistema. Es para un motor
Estoy programando en PICBasic Pro y la verdad soy bastante nuevo.
No importa si es en C, también me lo acepta.
Este es el código que me aparece en el vídeo:
De antemano, gracias.
Una pregunta. ¿Cómo hago el PWM con FOR en an/ar? Porque he visto unos vídeos y si se puede, pero en el vídeo tiene el todo el puerto B (8bits) para hacerlo, y digamos que cada pin que está en 1 va encendiendo el PWM pero en lenguaje binario, de arriba para abajo.
Por ejemplo:
Si enciendo el pin de arriba (ra0/na0) y todos los demás son 0, mandas una señal pequeña, digamos un 10% y la suma de todos hasta el 7 pin (ra6/an6) es el 50% y el último es el 50%
Pero quisiera usar un sólo pin con el for para hacerlo a un 50% porque como ya dije, en el otro era ocupando todo el puerto B y la verdad si me quita mucho espacio, pero usando FOR es mejor porque no saturo tanto el sistema como con un pwm.
Para que me entiendan lo anterior, les pongo aqui otro ejemplo:
1 2 4 8 16 32 64 128 = Binario entradas de puerto B
1 3 7 15 31 63 127 255 = La suma de cada uno que enciendo que es el PWM
0 0 0 1 1 0 1 0 = El resultado 1 es encendido y 0 es apagado, y esto da una frecuencia de 15 +31+127=173
Lo que quisiera saber, es cómo hago el PWM con un pin o pata sin saturar tanto el sistema. Es para un motor
Estoy programando en PICBasic Pro y la verdad soy bastante nuevo.
No importa si es en C, también me lo acepta.
Este es el código que me aparece en el vídeo:
PHP:
define osc 4
trisa= 0
trisb=255
dato var byte
i var byte
inicio:
dato=portb
for i= 1 to dato
porta.0 = 1
pause 1
next i
for i=1 to (255-dato)
porta.0=0
pause 1
next i
goto inicio
goto inicio
De antemano, gracias.
Última edición por un moderador: