Autor Tema: al hacer un debbug en proteus una instruccion no funciona bien  (Leído 939 veces)

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

Desconectado Eduardo96

  • PIC10
  • *
  • Mensajes: 4
al hacer un debbug en proteus una instruccion no funciona bien
« en: 08 de Diciembre de 2022, 15:41:01 »
buenos días vengo a molestarlos con un pequeño problema.
estaba simulando una practica, y cuando lo puse a funcionar no estaba funcionando como debería, al hacer un debbug en el proteus me di cuenta que una instrucción btfss estaba funcionando de manera contraria, el btfss revisa que el bit 0 del registro gpi0 este sea uno si es uno debería mandarla al modo12, pero si es cero debería  mandarla al modo11, cosa que no pasa así, y no se por que en el debbug de mplab me corre sin ningún problema, pero al quererlo hacer en proteus me da ese error, quisiera saber si es algo que ignoro o un bug o un fallo en la versión, intente cambiar a otros simuladores pero ninguno puede simular como proteus, por lo que no se que hacer acepto sus recomendaciones y les agradezco de ante mano cualquier ayuda que me pudieran brindar.
les adjunto unas imágenes del problema.

Conectado Eduardo2

  • PIC24F
  • *****
  • Mensajes: 965
Re:al hacer un debbug en proteus una instruccion no funciona bien
« Respuesta #1 en: 08 de Diciembre de 2022, 18:17:43 »
Tal vez no esté configurado PORTA como digital ,  si es asi agregá

Código: [Seleccionar]
    BANKSEL ADCON1
    movlw 0x06
    movwf ADCON1

antes de TRISA

Desconectado Eduardo96

  • PIC10
  • *
  • Mensajes: 4
Re:al hacer un debbug en proteus una instruccion no funciona bien
« Respuesta #2 en: 08 de Diciembre de 2022, 19:17:55 »
Tal vez no esté configurado PORTA como digital ,  si es asi agregá

Código: [Seleccionar]
    BANKSEL ADCON1
    movlw 0x06
    movwf ADCON1

antes de TRISA
el pic que estoy usando es 12f629, no tiene registro adcon ni ansel.

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:al hacer un debbug en proteus una instruccion no funciona bien
« Respuesta #3 en: 08 de Diciembre de 2022, 22:43:29 »
buenos días vengo a molestarlos con un pequeño problema.
estaba simulando una practica, y cuando lo puse a funcionar no estaba funcionando como debería, al hacer un debbug en el proteus me di cuenta que una instrucción btfss estaba funcionando de manera contraria, el btfss revisa que el bit 0 del registro gpi0 este sea uno si es uno debería mandarla al modo12, pero si es cero debería  mandarla al modo11, cosa que no pasa así, y no se por que en el debbug de mplab me corre sin ningún problema, pero al quererlo hacer en proteus me da ese error, quisiera saber si es algo que ignoro o un bug o un fallo en la versión, intente cambiar a otros simuladores pero ninguno puede simular como proteus, por lo que no se que hacer acepto sus recomendaciones y les agradezco de ante mano cualquier ayuda que me pudieran brindar.
les adjunto unas imágenes del problema.

¿Será problema de las resistencias de pull-up? Todos los pines de GPIO tienen la opción de esa resistencia (sólo GP3 no posee esa propiedad) Sería interesante conocer el bit 7 del registro OPTION (bit GPPU).

Respecto al ADC, ¿Cómo está configurado el registro ANSEL? El bit 0 o ANS0 configura al bit 0 de GPIO como digital o analógico.

Si después de esto no logras que funcione, la verdad es que alguna veces que use el depurador de proteus no se comporta 100% con la realidad, aunque ya son bastante años de eso, me imagino que muchos errores de ese tipo deben estar corregidos, sobre todo con un microcontrolador muy antiguo.

Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado Eduardo96

  • PIC10
  • *
  • Mensajes: 4
Re:al hacer un debbug en proteus una instruccion no funciona bien
« Respuesta #4 en: 09 de Diciembre de 2022, 13:16:54 »
buenos días vengo a molestarlos con un pequeño problema.
estaba simulando una practica, y cuando lo puse a funcionar no estaba funcionando como debería, al hacer un debbug en el proteus me di cuenta que una instrucción btfss estaba funcionando de manera contraria, el btfss revisa que el bit 0 del registro gpi0 este sea uno si es uno debería mandarla al modo12, pero si es cero debería  mandarla al modo11, cosa que no pasa así, y no se por que en el debbug de mplab me corre sin ningún problema, pero al quererlo hacer en proteus me da ese error, quisiera saber si es algo que ignoro o un bug o un fallo en la versión, intente cambiar a otros simuladores pero ninguno puede simular como proteus, por lo que no se que hacer acepto sus recomendaciones y les agradezco de ante mano cualquier ayuda que me pudieran brindar.
les adjunto unas imágenes del problema.

¿Será problema de las resistencias de pull-up? Todos los pines de GPIO tienen la opción de esa resistencia (sólo GP3 no posee esa propiedad) Sería interesante conocer el bit 7 del registro OPTION (bit GPPU).

Respecto al ADC, ¿Cómo está configurado el registro ANSEL? El bit 0 o ANS0 configura al bit 0 de GPIO como digital o analógico.

Si después de esto no logras que funcione, la verdad es que alguna veces que use el depurador de proteus no se comporta 100% con la realidad, aunque ya son bastante años de eso, me imagino que muchos errores de ese tipo deben estar corregidos, sobre todo con un microcontrolador muy antiguo.

deshabilite las resistencias pull-up desde el bit GPPU y también desde el registro WPU y nada sigue dando el mismo error.

el pic 12f629 no tiene registro ansel, bueno al menos en la datashet dice que ese pic no cuenta con entrada analógicas.

si empiezo a creer que el simulador me puede estar dando ese problema por algún motivo, cambie de versión de proteus a la 12 y me sigue dando ese problema, por lo que pienso que ha de ser un problema el simulador, supongo que me tocara probar mis circuitos a la antigua con el protoboard, el micro y los leds.


Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:al hacer un debbug en proteus una instruccion no funciona bien
« Respuesta #5 en: 09 de Diciembre de 2022, 13:22:45 »
el pic 12f629 no tiene registro ansel, bueno al menos en la datashet dice que ese pic no cuenta con entrada analógicas.

Buen punto, ¿Y el comparador analógico está apagado? (CM2:CM0 = 111) También suele ser un problema no deshabilitar ese periférico.

si empiezo a creer que el simulador me puede estar dando ese problema por algún motivo, cambie de versión de proteus a la 12 y me sigue dando ese problema, por lo que pienso que ha de ser un problema el simulador, supongo que me tocara probar mis circuitos a la antigua con el protoboard, el micro y los leds.

Lo ideal sería depurar con el hardware, pero por el número de pines que tiene, posiblemente no se pueda hacerlo correctamente.

Entre el simulador de MCHP y el depurador de Proteus, prefiero el de MPLAB.
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado Eduardo96

  • PIC10
  • *
  • Mensajes: 4
Re:al hacer un debbug en proteus una instruccion no funciona bien
« Respuesta #6 en: 09 de Diciembre de 2022, 15:33:10 »
Buen punto, ¿Y el comparador analógico está apagado? (CM2:CM0 = 111) También suele ser un problema no deshabilitar ese periférico.

ese fue el error, el comparador estaba en 000, esto te configura la entrada del comparador para que sean entradas analógicas, muchas gracias por la ayuda ya no tendré que armar todo para probar si funciona.



 

anything