Autor Tema: Consulta PIC18F4420  (Leído 5530 veces)

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

Desconectado gerard

  • PIC10
  • *
  • Mensajes: 13
Consulta PIC18F4420
« en: 05 de Junio de 2006, 18:01:50 »
Hola a todos!!!

Bien estoy realizando el proyecto final de carrera y junto con un compañero estamos diseñando un ondulador y el control es mediante micro, en concreto el 18F4420. Bien tengo una consulta que creo que es sencilla pero no puedo resolver.....

Porque las entradas, que las programo como digitales me dan 2V y por lo tanto para activar una entrada tengo que poner la masa??? me tiene loco y es una tontería porque activar se activa igual pero con lógica invertida!!!!!!


Un saludo!!!!!


Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Consulta PIC18F4420
« Respuesta #1 en: 05 de Junio de 2006, 21:40:06 »
Hola, desconozco la familia 18F, pero por lo que decis, si medis y hay voltaje presente en un/os pin/s que declaraste como entrada/s, entonces seguramente tenes activadas la "weak pull ups" en esos pines.
Estas weak pull ups son resistencias a positivo, que se utilizan para minimizar circuito electronico externo en ciertos proyectos.
Lo que no se es si, por defecto, ese PIC las trae activadas y en tu caso debas desactivarlas por soft o bien no vengan activadas por defecto y en alguna parte de tu codigo las estes activando sin darte cuenta.
Desde lo lejos y desde la nebulosa del cuasi nulo conocimiento que poseo de esta familia, es la unica idea que se me viene a la mente.

Edito: Nuevas impresiones:

Bueno, aunque sabiendo que para medir una entrada de manera correcta, la misma debe estar flotante, es muy probable que aun sin las weak pull ups activadas, el instrumento de medicion muestre voltaje presente en el pin, ya que un pin flotante esta sometido al medio ambiente, y puede ingresar cualquier tipo de voltaje al mismo.
Otra idea es que a las entradas las tengas configuradas como analogicas en lugar de digitales, aunque dudo de esta opcion.

Exitos.
« Última modificación: 05 de Junio de 2006, 21:46:10 por BrunoF »
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado gerard

  • PIC10
  • *
  • Mensajes: 13
Re: Consulta PIC18F4420
« Respuesta #2 en: 06 de Junio de 2006, 19:25:45 »
Gràcias por tu información, la verdad es que me tendré que informar mejor sobre  las "weak pull ups", no sabía ni lo que eran......... però de todas formas con lo que me dices que es normal que la entrada me de tensión té doy la razón, pero el que no es normal es que tenga que poner las entradas a masa para que interprete una señal de entrada. Es decir normalmente el micro interpreta que las entradas las tengo a 1.....................

Gràcias de nuevo por tu información, voy a informarme sobre estas resistencias!!!!!

SAludos i mas éxitos!!!

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Consulta PIC18F4420
« Respuesta #3 en: 06 de Junio de 2006, 21:02:24 »
Hola. Bueno, exactamente eso es lo que hacen. Cuando las entradas estan en reposo, fuerzan a las entradas a valer un 1 logico. En realidad no invierten NADA, simplemente fuerzan a las entradas a tener un valor logico, aun sin estar conectadas a nada, de esta manera se evita que ingrese "ruido" a las mismas.
Por lo que comentas, estas ingresando a las patillas señales con un solo estado logico, y no dos.
Entonces, si te resulta contraproducente que las pull ups esten activadas, me lleva a pensar, que la señal/es que les envias es/son:
un 1 logico(5v) o flotante(circuito al aire), y aqui se produce tu problema ya que te obliga a invertir la señal para lograr que funcione.
¿la solucion? Desactivar las weak pull up internas, y colocar resistencias externas a tierra(pull down) para forzar un estado logico 0 cuando el circuito esta en reposo. De esta manera no necesitas mas invertir la señal.
Exitos!
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado gerard

  • PIC10
  • *
  • Mensajes: 13
Re: Consulta PIC18F4420
« Respuesta #4 en: 07 de Junio de 2006, 16:51:44 »
Pues muchas gracias de nuevo, voy a intentar averiguar el que y si me sale lo expongo para que todos sepan como resolver este problemilla!!!   realmente sé nota quien sabe y quien no..................    :o

De todas formas pronto haré una nueva consulta porque estoy programando un PI y me trae loco loco!!!!

Un saludo y continuad así porque este foro es de lo mejorcito que se encuentra!!!!!


Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Consulta PIC18F4420
« Respuesta #5 en: 07 de Junio de 2006, 18:56:43 »
Pues muchas gracias de nuevo, voy a intentar averiguar el que y si me sale lo expongo para que todos sepan como resolver este problemilla!!!   realmente sé nota quien sabe y quien no..................    :o

De todas formas pronto haré una nueva consulta porque estoy programando un PI y me trae loco loco!!!!

Un saludo y continuad así porque este foro es de lo mejorcito que se encuentra!!!!!



gerard recién leo tu post.  Veo que has olvidado mencionar que pines son los que lees 'mal' o 'crees que estan mal'.

Por favor, detalla eso porque es fundamental para poderte seguir dando una mano

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)

Desconectado gerard

  • PIC10
  • *
  • Mensajes: 13
Re: Consulta PIC18F4420
« Respuesta #6 en: 09 de Junio de 2006, 11:29:25 »
Hola de nuevo, respecto a las entradas que por defecto las tengo a 1 son las del puerto A, esta noche pasaré un programita con los bits de configuración porque empiezo a dudar de mi opinión!!!

Me me estado mirando las resistencias "Weak pull up" y solo las tengo en el puerto B y no en el A, que es donde me surge el problema............................

Gràcias por vuestra ayuda!!!!!!

Saludos

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Consulta PIC18F4420
« Respuesta #7 en: 09 de Junio de 2006, 13:12:17 »
Hola de nuevo, respecto a las entradas que por defecto las tengo a 1 son las del puerto A, esta noche pasaré un programita con los bits de configuración porque empiezo a dudar de mi opinión!!!

Me me estado mirando las resistencias "Weak pull up" y solo las tengo en el puerto B y no en el A, que es donde me surge el problema............................

Gràcias por vuestra ayuda!!!!!!

Saludos

¿Has apagado el comparador analógico? 



- 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 anna

  • PIC10
  • *
  • Mensajes: 5
Re: Consulta PIC18F4420
« Respuesta #8 en: 11 de Junio de 2006, 08:38:31 »
Pues si que està apagado, o almenos eso creo.......... de hecho utilizo el datasheet en donde inicializa el puerto A y lo hace de la siguiente forma:

CLRF PORTA ; Initialize PORTA by
; clearing output
; data latches
CLRF LATA ; Alternate method
; to clear output
; data latches
MOVLW 07h ; Configure A/D
MOVWF ADCON1 ; for digital inputs
MOVWF 07h ; Configure comparators
MOVWF CMCON ; for digital input
MOVLW 0CFh ; Value used to
; initialize data
; direction
MOVWF TRISA ; Set RA<3:0> as inputs
; RA<5:4> as outputs


He probado de poner el CMCON todo a 0 y parece que las entradas ahora si que se activan a estado alto!!! A ver si tengo suerte!!!! OS iré informando...........................

Muchas gracias por tu ayuda!!!!!! 

Desconectado pibe

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 635
Re: Consulta PIC18F4420
« Respuesta #9 en: 11 de Junio de 2006, 09:52:00 »

MOVLW 0CFh ; Value used to
; initialize data
; direction
MOVWF TRISA ; Set RA<3:0> as inputs
; RA<5:4> as outputs



RA 0, 1, 2, 3 como entradas  y 4, 5 como salidas con ese valor (0xCF)
Si  pones  0x00 serán todas salidas.
Mi jefe mirando el prototipo que estoy creando: "Y eso va a funcionar?"

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Consulta PIC18F4420
« Respuesta #10 en: 11 de Junio de 2006, 13:29:55 »
Pues si que està apagado, o almenos eso creo.......... de hecho utilizo el datasheet en donde inicializa el puerto A y lo hace de la siguiente forma:

CLRF PORTA ; Initialize PORTA by
; clearing output
; data latches
CLRF LATA ; Alternate method
; to clear output
; data latches
MOVLW 07h ; Configure A/D
MOVWF ADCON1 ; for digital inputs
MOVWF 07h ; Configure comparators
MOVWF CMCON ; for digital input
MOVLW 0CFh ; Value used to
; initialize data
; direction
MOVWF TRISA ; Set RA<3:0> as inputs
; RA<5:4> as outputs


He probado de poner el CMCON todo a 0 y parece que las entradas ahora si que se activan a estado alto!!! A ver si tengo suerte!!!! OS iré informando...........................

Muchas gracias por tu ayuda!!!!!! 

Cargar CMCON=00 pone los comparadores en Reset pero fijate en el datasheet que ese modo es para pines analógicos.

El modo CMCON=0x07 es el que apaga los comparadores.

CVRCON=0 apaga también el voltaje de referencia.

Lo más importante ADCON1 = 0x07 ,  esto no setea los pines como digitales, sino que setea las señales AN0 a AN8 como analogicas y el resto como digitales.

Debes poner ADCON1 = 0x0F

Código: [Seleccionar]
movlw 0x0F
movwf ADCON1

Respecto a del TRIS,  ya te fue indicado por pibe.  Estas seteando PORTA<0:5> como entrada y no se condice con el texto del código fuente que subiste.

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)

Desconectado gerard

  • PIC10
  • *
  • Mensajes: 13
Re: Consulta PIC18F4420
« Respuesta #11 en: 12 de Junio de 2006, 10:05:54 »
Teneis toda la razón, de hecho en mi código ya puse el ADCON1 a 0x0FH, lo que ocurre es que cogí la inicialización del PDF y no de mi programa. En esto estamos de acuerdo, lo que no entiendo es porquè me deciis que no puedo poner en el TRISA 0xCF, ya que estoy utilizando 4 entradas (0,1, 2 y 3) y 2 salidas (4 y 5). A menos que no sea porque el ADCON1 estaba a 0x07 y entonces no lo programase como entradas y salidas digitales...............  Posiblemente me equivoque.....

De hecho el problema aun sigo teniendolo, voy a probar de resetear el CVRCON para apagar el voltaje de referencia, posiblemente sea esto!!!!


Gracias a los 2!!!


Desconectado pibe

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 635
Re: Consulta PIC18F4420
« Respuesta #12 en: 15 de Junio de 2006, 08:54:30 »
Queres que te confiese algo, gerard?
Yo particularmente intento no trabajar con el puerto A, siempre me encuentro con algún problema. Si realmente no me queda otra alternativa pues... me tomo 4 PLIDAN y luego de luchar un rato puedo usar el maldito puerto A.
Que si RA4 es open collector, que si analógicas, que si RA5 solo entrada, que no tiene resistencias pullups, que no son de 8 bits... (en algunos micros) Por eso si puedo uso otro puerto y no me complico la existencia.

Joder con el puerto A !  :mrgreen:
Mi jefe mirando el prototipo que estoy creando: "Y eso va a funcionar?"

Desconectado gerard

  • PIC10
  • *
  • Mensajes: 13
Re: Consulta PIC18F4420
« Respuesta #13 en: 15 de Junio de 2006, 09:39:54 »
jajaja pibe!!!!!! tienes razon, estoy harto del puertoA. Creo que te voy  a hacer caso y a probar con otro puerto!!!!!! De hecho problemas con los pics no me faltan pero supongo que como a todos.

Saludos y suerte con lo vuestro!!!

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Consulta PIC18F4420
« Respuesta #14 en: 16 de Junio de 2006, 17:53:57 »
Queres que te confiese algo, gerard?
Yo particularmente intento no trabajar con el puerto A, siempre me encuentro con algún problema. Si realmente no me queda otra alternativa pues... me tomo 4 PLIDAN y luego de luchar un rato puedo usar el maldito puerto A.
Que si RA4 es open collector, que si analógicas, que si RA5 solo entrada, que no tiene resistencias pullups, que no son de 8 bits... (en algunos micros) Por eso si puedo uso otro puerto y no me complico la existencia.

Joder con el puerto A !  :mrgreen:

Los puertos se pueden usar muy bien y de hecho en los PICs 18F no existe el RA4 como open collector.  Jamás he tenido inconvenientes con el uso del puerto A y no veo razón por la cual deban tenerlo.

En los 18F lo que ocurre es que cada pin puede realmente cumplir muchas funciones y si uno se tiene el debido cuidado en apagar el módulo que uno no usará, pues bueno, surgen estas cosas en las que hay que observar bien que se está haciendo.

En mi opinión personal yo no tomaría como consejo el decir que porque tiene estas cosas no usarlo!!  :? :?

Para algo está el puerto ¿no?   :-) :-)

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)