Autor Tema: Ayuda para cambiar variable fuera de void main()  (Leído 2983 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Ayuda para cambiar variable fuera de void main()
« Respuesta #15 en: 14 de Mayo de 2015, 20:05:20 »
Un error mio, seguro que no se nota por que yo puse:

int DELAYCOM,valor_B;

8 bits , maximo 255
Reemplazalo por:

int16 DELAYCOM,valor_B;

De esa forma puede llegar a 1000.


Si anda quiere decir que era tu problema, ya que el getc() espera un caracter por la UART y tal ves no se lo estabas enviando

Desconectado MINDFIELD

  • PIC16
  • ***
  • Mensajes: 139
Re: Ayuda para cambiar variable fuera de void main()
« Respuesta #16 en: 14 de Mayo de 2015, 20:18:51 »
No funciona, solo si ago
Código: [Seleccionar]
salida2_off;           
      delay_us(19750);   //maximo 19750                         
      salida2_on;

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Ayuda para cambiar variable fuera de void main()
« Respuesta #17 en: 14 de Mayo de 2015, 20:46:36 »
Proba:

Código: C
  1. int16 DELAYCOM,valor_B;
  2.  
  3. #int_ext
  4. void interrup_RA2()
  5. {
  6.       switch (flag1){
  7.       case 0: flag1=1; ext_int_edge(L_TO_H);break;      
  8.       case 1: flag1=0; ext_int_edge(H_TO_L);break;  
  9.       }
  10.       DELAYCOM = 1000;
  11.        
  12.       salida2_off;            
  13.       delay_us(DELAYCOM);         /*intensidad*/                
  14.       salida2_on;            
  15. }
  16.  
  17. void main()
  18. {
  19. setup_comparator(NC_NC_NC_NC);
  20. enable_interrupts(global);
  21. enable_interrupts(int_rda);
  22. set_tris_D(0x00);          
  23.  
  24.    enable_interrupts(int_ext);  
  25.    ext_int_edge(H_TO_L);        
  26.    setup_adc_ports (NO_ANALOGS);
  27.  
  28. while (TRUE)
  29. {
  30. }

Si no funciona me doy por vencido.

Desconectado MINDFIELD

  • PIC16
  • ***
  • Mensajes: 139
Re: Ayuda para cambiar variable fuera de void main()
« Respuesta #18 en: 14 de Mayo de 2015, 21:13:57 »
Asi si funciona pero si lo ago dentro del while (true) no, porque?

Desconectado hortoedro

  • PIC10
  • *
  • Mensajes: 19
Re: Ayuda para cambiar variable fuera de void main()
« Respuesta #19 en: 15 de Mayo de 2015, 05:50:06 »
Asi si funciona pero si lo ago dentro del while (true) no, porque?

Comprueba con el proteus el valor de DELAYCOM después de pasar por el while (TRUE) a ver si se almacena bien para trabajar con el en la interrupción.

Un saludo

Desconectado MINDFIELD

  • PIC16
  • ***
  • Mensajes: 139
Re: Ayuda para cambiar variable fuera de void main()
« Respuesta #20 en: 15 de Mayo de 2015, 06:57:22 »
y como ago eso?

Desconectado MINDFIELD

  • PIC16
  • ***
  • Mensajes: 139
Re: Ayuda para cambiar variable fuera de void main()
« Respuesta #21 en: 17 de Mayo de 2015, 08:59:36 »
ya no voy a renegar más con ese codigo, ahora estoy renengando con otro  :mrgreen: saludos y gracias a todos los que me ayudaron! porque demasiado buenos son para aguantarme  :D

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Ayuda para cambiar variable fuera de void main()
« Respuesta #22 en: 17 de Mayo de 2015, 10:49:50 »
Sinceramente no se por que no te hace caso, ahi se ve claramente que que funciona con variables, asi que no entiendo por que.

Desconectado MINDFIELD

  • PIC16
  • ***
  • Mensajes: 139
Re: Ayuda para cambiar variable fuera de void main()
« Respuesta #23 en: 17 de Mayo de 2015, 19:46:37 »
Gracias por tú ayuda! te agradezco mucho!!! ya deje ese codigo pero ahora tengo que preguntar por otro parecido con el que estoy renegando  :(