TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: juanalzate en 13 de Octubre de 2013, 18:33:41
-
BUENOS DÍAS.
ESTOY TRABAJANDO CON UN PIC16F819 PARA GENERAR UN PWM CON EL CCP1 QUE TENGO EN PUERTO B2
Y NECESITO GENERAR EL PWM TAMBIÉN EN EL PUERTO B3 QUE TAMBIÉN TIENE CCP1, PERO NO LOGRO OBTENER
LA SALIDA DEL PWM SIMULTÁNEAMENTE POR B2 Y B3.
MI CODIGO ES EL SIGUIENTE:
#include <16F819.h>
#device adc=10
#fuses XT,NOWDT,NOPUT,NOLVP,NOBROWNOUT,NOWRT,PROTECT,NODEBUG ///configura los fusibles
#use delay(clock=4000000) /// declara la frecuencia del cristal
#byte porta=5
#byte portb=6
#use fast_io(B)
//#FUSES CCPB3
//#FUSES CCPB2
int d;
long voltaje;
void main()
{
set_tris_a(0xff); //PUERTO A COMO ENTRADA
set_tris_b(0x00);
setup_adc_ports(AN0);
//setup_adc_ports(sAN0); //RA0 COMO ANALOGO
setup_adc(adc_clock_internal); //modulo ccp como pwm
setup_ccp1(CCP_PWM);
setup_timer_2 (T2_DIV_BY_16,255,1);
//setup_timer_2(T2_DIV_BY_4, 255, 2); //periodo pwm 4.098ms, 244Hz
portb=0;
while(true)
{
set_adc_channel(0); //PIN 17 COMO ANALOGO
voltaje=read_adc();//ENVIAMOS AL PWM EL VALOR DEL POTENCIOMETRO
set_pwm1_duty(voltaje);
}
}
-
Creo que sólo podrás sacar la señal del pwm por uno de los 2 pines
FUSES CCPB3 con este fuse utiliza el pin b3
FUSES CCPB2 mientras que con este otro el pin b2
-
No escribas con mayúsculas; lee las reglas del foro.