Muchas gracias migsantiago:
Vamos a explicar introductoriamente de que va este tema, ya que en los demás hilos no está del todo bien explicado.
Los únicos integrados de microchip que permiten esta funcionalidad son los 18FXX31:
- 18F2331 y 18F2431 -> 6 PWM
- 18F4431 y 18F4431 -> 8 PWM
Estos usan el llamado Power PWM que mediante tiempos muertos (dead time) consiguen mediante HW conseguir "multiplexar" a una frecuencia elevada los PWM para el control de motores.
CCS dispone de las siguientes funciones para el Power PWM
- setup_power_pwm(config) Sets up the PWM clock, period, dead time etc.
- setup_power_pwm_pins(module x) Configure the pins of the PWM to be in || Complimentary, ON or OFF mode.
- set_power_pwmx_duty(duty) Stores the value of the duty cycle in the PDCXL/H register. This duty cycle value is the time for which the PWM is in active state.
- set_power_pwm_override(pwm,override,value) This function determines whether the OVDCONS or the PDC registers determine the PWM output.
Además de un archivo ejemplo llamado EX_POWER_PWM, donde se implementa esta funcionalidad. Me pondré a hacer pruebas con este integrado que sin quererlo ni beberlo dispongo de alguno de ellos
. todopicxero precavido vale por 3 pics
Un saludete compañeros foreros.