int main(void) { _U08 i; _U08 u8Array[] = {99,95,90,85,80,75,70,65,60,55,50,45}; ANCON0 = 0XFF; /*Desativamos las entradas analógicas*/ ANCON1 = 0XFF; /*Desativamos las entradas analógicas*/ /*el modulo pwm1 no tiene los pines conectados asi que hay que asignarlos a los pines RPx que deseemos*/ System_PeripheralPinSelect(EnhancedPWMOutputChannel1B, 19); /*PWM1_B en el pin RP19 (D2)*/ Gpios_PinDirection(GPIOS_PORTD, 2, GPIOS_OUTPUT); /*pin RD2 como salida para PWM_1B*/ Pwm_Init(PWM_PORT1, 750); while (1) { for(i=0;i<sizeof(u8Array);i++) { Pwm_DutyCycle(PWM_PORT1, PWM_CHANNEL_B, u8Array[i]); Delays_ms(300); } i--; for(;i<sizeof(u8Array);i--) { Pwm_DutyCycle(PWM_PORT1, PWM_CHANNEL_B, u8Array[i]); Delays_ms(300); } Delays_ms(3000); } }
void main(void) { ANCON0 = 0XFF; /*Desativamos las entradas analógicas*/ ANCON1 = 0XFF; /*Desativamos las entradas analógicas*/ /*el modulo pwm1 no tiene los pines conectados asi que hay que asignarlos a los pines RPx que deseemos*/ System_PeripheralPinSelect(CompareOrPWMOutputChannel1A, 2); /*PWM1_A en el pin RP2 (A5)*/ System_PeripheralPinSelect(CompareOrPWMOutputChannel2A, 19); /*PWM2_A en el pin RP19 (D2)*/ Gpios_PinDirection(GPIOS_PORTA, 5, GPIOS_OUTPUT); /*pin RA5 como salida para PWM_1A*/ Gpios_PinDirection(GPIOS_PORTD, 2, GPIOS_OUTPUT); /*pin RD2 como salida para PWM_2A*/ Pwm_Init(PWM_PORT1, 1000); Pwm_Init(PWM_PORT2, 1000); Pwm_DutyCycle(PWM_PORT1, PWM_CHANNEL_A, 40); Pwm_DutyCycle(PWM_PORT2, PWM_CHANNEL_A, 70); while (1) { /*Escribe aqui tu aplicacion*/ } }