Autor Tema: Dotando de salida analógica a nuestro PIC  (Leído 35779 veces)

0 Usuarios y 3 Visitantes están viendo este tema.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #30 en: 15 de Mayo de 2009, 03:16:02 »
Aquí está para 18F2550 y sin tener que ponerle nada en el pin MCLR.

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #31 en: 15 de Mayo de 2009, 03:29:47 »
 :-/ :-/ :-/ muchas gracias Sr. Manuel :mrgreen:
se le recompenza con un Trago de Ron :-)

Saludos

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #32 en: 15 de Mayo de 2009, 07:06:13 »
 :? nada que no me chuta!! en el CP1 pin 13 me sale -0.110 miliVoltio y en el RA0 pin 2 me sale lo mismo, por mucho que pulso no reaciona,  :5] :5] estoy luchando con viento y marea  :z) :z)


Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #33 en: 15 de Mayo de 2009, 08:11:34 »
Haz una cosa Rafael, no lo he montado en real porque sólo lo he simulado en Proteus y todos sabemos que cualquier parecido con la realidad es pura coincidencia.
Es muy posible que los fuses no estén bien configurados.
Abre el HEX con Winpic800 y elimina los fuses FCMEM, IESO, CCP2MX, PBADEN, LPT1OSC y STVREN. Programa el PIC y prueba suerte.

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #34 en: 15 de Mayo de 2009, 08:30:56 »
Haz una cosa Rafael, no lo he montado en real porque sólo lo he simulado en Proteus y todos sabemos que cualquier parecido con la realidad es pura coincidencia.
Es muy posible que los fuses no estén bien configurados.
Abre el HEX con Winpic800 y elimina los fuses FCMEM, IESO, CCP2MX, PBADEN, LPT1OSC y STVREN. Programa el PIC y prueba suerte.
El Winpic800 :z) Sr Manuel se le olvida que yo tengo el ICD2 y el MPLAB , pero si Usted lo dice me bajare el Winpic800 :(
Yo no confio en el Proteus , no se para que inventa esa porqueria  :D
Yo estoy seguro que son los Fuse, pero con tantos Fuse que hay en ese codigo reconozco muy poco.
 otras cosas debo decirte que no puse el LCD, pero lo montare cuando tenga mas tiempo, yo solo quiero ver con el Oscilocopio el efecto.

Ahora mi pregunta a usted Sr Manuel, usted probo ese circuito en lo fisico con el 18F2520?
porque si es asi me espero hasta en marte que me llegu :g), que Jillipollon soy :mrgreen:
Gracias  :-/ :-/ :-/

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #35 en: 15 de Mayo de 2009, 09:33:50 »
Sr Manuel, no le quiero ser un paliza :mrgreen:
hice como usted me dijo mire en la foto y sigo igual.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #36 en: 15 de Mayo de 2009, 12:49:56 »
Pues no se me ocurre qué puede estar pasando, la verdad.
Yo no he montado nunca este circuito tal y cual está ahí publicado, pero sí lo he integrado como una parte en proyectos mayores y funciona perfectamente.
¿Si le metes otro firmware el PIC funciona?

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #37 en: 15 de Mayo de 2009, 14:11:50 »
Lo se Sr Manuel, que usted ese circuito lo integro en su fuente de alimentacion, tengo 2 x 18F2550 y lo probe con los dos y nada, luego puse un Led a que hiciera intermitencia y ya no se que hacer, yo pienso que ese Pic18F2550 no va con ese codigo, algo misterio habra :x

Sr, Manuel se le agradece su colaboracion muchas gracias

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #38 en: 16 de Mayo de 2009, 04:29:51 »
Pues bien! a ver si alguien me echa una mano con los Fuse porque me compila pero no me va.
Agradeceria cualquier ayuda
#include <18F2550.h>
#device adc=10

#FUSES WDT4                     //Watch Dog Timer uses 1:4 Postscale
#FUSES INTRC_IO                 //Internal RC Osc, no CLKOUT
#FUSES NOPROTECT                //Code not protected from reading
#FUSES BROWNOUT                 //Reset when brownout detected
#FUSES BORV20                   //Brownout reset at 2.0V
#FUSES PUT                      //Power Up Timer
#FUSES NOCPD                    //No EE protection
#FUSES STVREN                   //Stack full/underflow will cause reset
#FUSES NODEBUG                  //No Debug mode for ICD
#FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOWRT                    //Program memory not write protected
#FUSES NOWRTD                   //Data EEPROM not write protected
#FUSES IESO                     //Internal External Switch Over mode enabled
#FUSES FCMEN                    //Fail-safe clock monitor enabled
#FUSES PBADEN                   //PORTB pins are configured as analog input channels on RESET
#FUSES NOWRTC                   //configuration not registers write protected
#FUSES NOWRTB                   //Boot block not write protected
#FUSES NOEBTR                   //Memory not protected from table reads
#FUSES NOEBTRB                  //Boot block not protected from table reads
#FUSES NOCPB                    //No Boot Block code protection
#FUSES NOMCLR                 //Master Clear pin disabled
#FUSES LPT1OSC                  //Timer1 configured for low-power operation
#FUSES NOXINST                  //Extended set extension and Indexed Addressing mode disabled (Legacy mode)
#FUSES PLL1                     //No PLL PreScaler

#use delay(clock=8000000,restart_wdt)

#byte       PORTA=      0xF80
#byte       PORTB=      0xF81
#byte       PORTC=      0xF82
#byte       PORTE=      0xF84

#bit        PULS1=      PORTC.0     // Pulsador Marrón
#bit        PULS2=      PORTA.6     // Pulsador verde

#define use_portb_lcd TRUE
#include <LCD.C>

int16 i,j;

void main()
{
   setup_adc_ports(AN0_TO_AN4|VSS_VDD);
   setup_adc(ADC_CLOCK_INTERNAL);
   setup_spi(FALSE);
   setup_wdt(WDT_ON);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_4);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DIV_BY_4,255,1);
   // Frecuencia = clock / 4 / prescaler / (repeticiones+1) = 8000000/4/4/(255+1)=1953
   setup_timer_3(T3_DISABLED|T3_DIV_BY_1);
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);
   lcd_init();
   enable_interrupts(INT_TIMER0);
   enable_interrupts(INT_AD);
   enable_interrupts(GLOBAL);
   setup_low_volt_detect(FALSE);


   i=512;   // punto medio del duty de 10 bits
   setup_ccp1(CCP_PWM);
   set_pwm1_duty(i);

   set_adc_channel(0);
   while (1) {
      if (!PULS1)
         i--;
      if (!PULS2)
         i++;
      set_pwm1_duty(i);
      j = read_adc();
      lcd_gotoxy(1,1);
      printf(LCD_PUTC,"Duty%3lu ADC %4lu",i,j);
      lcd_gotoxy(1,2);
      printf(LCD_PUTC,"PWM%3.0f%% Vin %4.2fV",(float)i*100/1024,(float)j*5.0/1024.0);
      delay_ms(10);
   }

}
Saludos



Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #39 en: 17 de Mayo de 2009, 03:40:42 »
Hola señor, lo he montado en protoboard y en 5 minutos estaba funcionando, así que debes hacer algo raro porque no es normal que no te funcione.

De todas formas para minimizar riesgos, he reducido el programa a su mínima expresión, eliminando todo lo que se refiere al LCD y los pulsadores.
El programa que te adjunto genera una señal PWM por el pin CCP1 (pin 13) proporcional a la lectura de la entrada analógica RA0 (pin 2) donde puedes poner un potenciómetro para probar.

Te dejo el código fuente y el hex.

SUERTE MONSTRUO

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #40 en: 17 de Mayo de 2009, 05:21:34 »
 :-/ :-/ Muchisima Gracias Sr Manolo por sacarme de este apuro   :-/ :-/ :-/ :-/ ya tengo mas idea para seguir conociendo el PWM  :-/ :-/ :-/ muchas gracias  :-/ :-/

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #41 en: 17 de Mayo de 2009, 05:23:00 »
Esto no se queda asi  :mrgreen:,
 a ver cuandos nos bebemos el ron :P




Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #43 en: 17 de Mayo de 2009, 05:54:27 »
¿Ya te funciona?

Sr Manuel  ahora mismo me pongo a eso,  :mrgreen: muchas gracias Gran Jefe Genio :mrgreen:, me ha dado una piste impresionante macho, el programa es muy facil desde un punto tecnico pero como te comentaba los Fuse  :D :D me vuelven loco  :D :D:-/ :-/ :-/
 Gracias una vez mas por tu gran interes :-/ :-/ de enseñarme Maestros  :P

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: Dotando de salida analógica a nuestro PIC
« Respuesta #44 en: 19 de Mayo de 2009, 09:50:20 »
Hola!! bueno en Vista de algunos exitos que tengo experimentando ya lo posteare , pero aqui va una pregunta? en la salida analogica no me llega ni 5 voltio justo(ca 4.600 Voltio , y me gustaria que subiera mas y pense poner la salida a la base de un transistor y el colector al positivo con una Resistencia calculada para que me suba de 0 a 5 Voltio o al mas,  5,6 Voltio seria ideal,
Tiene alguien otras ideas mejor ???
 :x
Saludos


 

anything