Autor Tema: ayuda mplab emulacion puertos  (Leído 4935 veces)

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

Desconectado dj_valle

  • PIC10
  • *
  • Mensajes: 48
ayuda mplab emulacion puertos
« en: 09 de Diciembre de 2005, 11:46:00 »
saludos,

alguien sabe como emular los puertos del mplab? es decir, haces un programa donde porta es la entrada y portb la salida. Para meter datos al puerto A como se hace con el mplab? es que no me deja cambiar los bits desde el special funtion register, solo puedo cambiar los bits del puerto de salida pero no del de entrada. Es posible cambiar las entradas?

gracias por adelantado.

Desconectado PAOLA09

  • Moderadores
  • PIC18
  • *****
  • Mensajes: 332
RE: ayuda mplab emulacion puertos
« Respuesta #1 en: 09 de Diciembre de 2005, 21:29:00 »
HOLA
PARA HACER LO QUE DICES DENES ENTRAR A DEBUGGER Y HAY SELECCIONAR STIMULUS. AQUI VAS A PIN STIMULUS Y DAS ADD ROW, EN CADA FILA QUE AGREGUES EN DONDE DICE PIN SELECCIONAS EL PIN DE ENTRADA QUE DESEES VARIAR Y CON LA ACCION LE DAS COMO QUIERES QUE TRABAJE YO PREFIERO USAR EL TOGGLE. ESPERO TE SIRVA LA AYUDA.

Desconectado dj_valle

  • PIC10
  • *
  • Mensajes: 48
RE: ayuda mplab emulacion puertos
« Respuesta #2 en: 10 de Diciembre de 2005, 04:01:00 »
gracias paola por contestar:

ahora ya lo puedo emular pero a traves del puerto c, el puerto a me dice esto "IOPORT-W0001: Pin(s) (0x01) on PORTA can not be stimulated due to being controlled by the A/D converter" cuando hago toggle sobre ra0

lo tenia configurado de la siguiente manera:
inicio   BSF status,5      
   movlw b"111111"      
   movwf trisa      
   movlw b"00000000"
   movwf trisb         
   BCF status,5   

se puede configurar asi el puerto A o esta mal echo? (todo el puerto a como entradas).

gracias   

Desconectado PAOLA09

  • Moderadores
  • PIC18
  • *****
  • Mensajes: 332
RE: ayuda mplab emulacion puertos
« Respuesta #3 en: 10 de Diciembre de 2005, 06:14:00 »
HOLA dj_valle

TU PROBLEMA ES MUY SENCILLO CUANDO CONFIGURAS EL PUERTO A COMO ENTRADA ESTAS OLVIDANDO TAMBIEN CONFIGURARLO COMO SOLO ENTRADAS DIGITALES PARA ESTO DEBES HACER LO SIGUIENTE:

MOVLW       0X07
MOVWF       ADCON1

RECUERDA QUE ESTE SE ENCUENTRA EN EL PRIMER BANCO.

SUERTE CON LO QUE ESTAS HACIENDOSonrisa Gigante

Desconectado dj_valle

  • PIC10
  • *
  • Mensajes: 48
RE: ayuda mplab emulacion puertos
« Respuesta #4 en: 10 de Diciembre de 2005, 10:37:00 »
oki gracias de nuevo...

toy aprendiendo, no toy haciendo na... de momento

Desconectado dj_valle

  • PIC10
  • *
  • Mensajes: 48
RE: ayuda mplab emulacion puertos
« Respuesta #5 en: 10 de Diciembre de 2005, 10:57:00 »
lo he probao y no me va... sigue diciendo lo mismo
es:

adcon1 equ 0x05

y luego lo que tu me has dicho no? despues de entrar en el bank1

es para un pic16f876


Desconectado PAOLA09

  • Moderadores
  • PIC18
  • *****
  • Mensajes: 332
RE: ayuda mplab emulacion puertos
« Respuesta #6 en: 10 de Diciembre de 2005, 14:56:00 »
hola

a la hora de configurar yo lo hago asi

LIST   P=PIC16F876
INCLUDE <P16f876.INC>


            ORG   000
                               GOTO    INICIO
INICIO

 BSF STATUS,5
movlw b"111111"
movwf TRISA
movlw b"00000000"
movwf TRISB
MOVLW   0X07
MOVWF   ADCON1
BCF STATUS,5

recuerda que cuando vayas a simular debes elegir el dispositivo a decuado y realizar configuracion de bits.

ya lo probe y trabaja sin problemas cualquier cosa me dices.

Desconectado dj_valle

  • PIC10
  • *
  • Mensajes: 48
RE: ayuda mplab emulacion puertos
« Respuesta #7 en: 11 de Diciembre de 2005, 04:27:00 »
gracias por ponerme el trozo de programa, al principio pensaba que no me funcionaba por no poner el LIST y eso, pero me seguia dando el mismo fallo. Luego probe a poner tu trozo de programa donde el mio y funcionaba y entonces volvi a poner el mio y no funcionaba.
 
Bueno, conclusion, me di cuenta que tu ponias STATUS, TRISA, TRISB, ADCON1 y yo lo ponia en minusculas, probe en mayusculas y ya me va..... ¿es alguna condicion que tienen estos micros? al menos cambiando a mayusculas el ADCON1 ya me funciona bien... me acostumbrare a ponerlo en mayusculas a ver aunque me suena raro que sea por eso pero bueno.. tu que crees?

muchas gracias por todo.

Desconectado PAOLA09

  • Moderadores
  • PIC18
  • *****
  • Mensajes: 332
RE: ayuda mplab emulacion puertos
« Respuesta #8 en: 11 de Diciembre de 2005, 15:38:00 »
HOLA

LO QUE SUCEDE ES QUE EL MPLAB RECONOCE LAS MAYUSCULAS Y MINUSCULAS Y AL ESCRIBIRLO EN MINUSCULAS, ES POR ESTO QUE NO RECONOCIA LOS CAMBIOS.

ME ALEGRA QUE TE HUBIERA SIDO DE UTILIDADSonrisa Gigante

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
RE: ayuda mplab emulacion puertos
« Respuesta #9 en: 21 de Diciembre de 2005, 10:28:00 »
Escrito originalmente por dj_valle
gracias por ponerme el trozo de programa, al principio pensaba que no me funcionaba por no poner el LIST y eso, pero me seguia dando el mismo fallo. Luego probe a poner tu trozo de programa donde el mio y funcionaba y entonces volvi a poner el mio y no funcionaba.
 
Bueno, conclusion, me di cuenta que tu ponias STATUS, TRISA, TRISB, ADCON1 y yo lo ponia en minusculas, probe en mayusculas y ya me va..... ¿es alguna condicion que tienen estos micros? al menos cambiando a mayusculas el ADCON1 ya me funciona bien... me acostumbrare a ponerlo en mayusculas a ver aunque me suena raro que sea por eso pero bueno.. tu que crees?

muchas gracias por todo.


El tema de las mayusculas y minusculas es porque el Compilador MPASM es "case sensitive" o dicho de otra forma, sensible a las mayúsculas y minúsculas.

Además, las definiciones de los registros no estan en el Mplab sino en el .INC que agregas al principio de tu código, si están definidos con mayúscula (que es la costumbre de la gente de Microchip) entonces deberas utilizar en mayúscula

Otra cosa que no quería dejar pasar por alto es lo siguiente, en tu código pusiste

Codigo:

adcon1 equ 0x05



Asi fuese en mayúsculas, esto es un "reemplazo" .  De ninguna manera estás cargando al registro ADCON1 con el valor 5!, Solo le estas diciendo al compilador que la variable temporal que declaraste adcon1 vale 5... El compilador reemplazara cada ocurrencia de esta variable con el valor 0x05.

Si quieres cargarle 0x05 al ADCON1 (que dicho sea de paso no te deshabilitará el canal 0 del A/D), debes hacer esto

Codigo:

   movlw   0x05
   movwf   ADCON1



Saludos y felices simulaciones


- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
RE: ayuda mplab emulacion puertos
« Respuesta #10 en: 21 de Diciembre de 2005, 10:35:00 »
Escrito originalmente por PAOLA09
HOLA

LO QUE SUCEDE ES QUE EL MPLAB RECONOCE LAS MAYUSCULAS Y MINUSCULAS Y AL ESCRIBIRLO EN MINUSCULAS, ES POR ESTO QUE NO RECONOCIA LOS CAMBIOS.

ME ALEGRA QUE TE HUBIERA SIDO DE UTILIDADSonrisa Gigante


Es la opción por defecto pero puede ser modificada yendo a

PROJECT, BUILD OPTIONS, PROJECT  (o bien boton derecho sobre el archivo del proyecto .mcw)

Luego ir a la pestaña MPASM Assembler, y clickear en Disable case sensitivity.

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)


 

anything