Autor Tema: Rutina LCD 4 Bits  (Leído 34432 veces)

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

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Rutina LCD 4 Bits
« Respuesta #60 en: 06 de Julio de 2006, 13:32:35 »
BrunoF, gracias por el interes y la ayuda... no voy a preguntaros más cosas porque entiendo que la gente se canse de explicar las cosas muchas veces...

maunix, perdoname  :?

picto no es que te tenga que perdonar o no, ni tampoco es que me moleste o me canse explicar las cosas muchas veces.

El punto es que te dí un datasheet para que leas donde está explicado al detalle todo esto y ni siquiera me has dicho "no entiendo tal o cual cosa", simplemente dices que no entiendes...  A eso lo llamo facilismo porque vuelves una y otra vez sobre tu problema puntual de los mensajes de acá o allá pero sin observar lo que te he estado apuntando que es "en el datasheet está explicado como entender lo de tablas que estén en muchos lados o en cualquier página de la memoria de programa"!  Más simple que eso...

Te he pedido una y otra vez que especifiques qué es lo que no entiendes pero no lo has hecho.  Tal vez debamos pensar en que no leíste el datasheet que te dí... lo cual lamentaría mucho que fuese cierto. :? :?

No soy de enojarme, y de hecho no estoy enojado.  Simplemente que parece que hablamos un idioma diferente y así no tiene mayor sentido seguir intentándolo.  Tu postura suena a "quiero resolver mi problema ya, urgente, ayudenme!".  Cuando te estamos mostrando el camino para que "comprendas" qué es lo que le está pasando a tu código!.  Ese es el camino que te llevará a comprender bien las cosas y a que luego ya no tengas que detenerte en pensar en esto, sino en cosas cada vez mas complicadas.

Saludos y hasta la próxima.



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

  • PIC16
  • ***
  • Mensajes: 106
Re: Rutina LCD 4 Bits
« Respuesta #61 en: 10 de Julio de 2006, 02:52:52 »
Hola amigos, vuelvo a estar por aquí!

A ver si esta semana tengo un poco de tiempo y vuelvo a intentar resolver mis dudas.

Muanix, que sí, que tienes razón. Lo suyo es entender uno mismo las cosas.

PEro el datasheet si estuviera en castellano, entendería el 80% de lo que dice, pero en ingles encima, la cosa se complica. Aparte que comenta cosas que me pierdo.

Voy a intentar como he dicho, hacer que funcione y sui veo que me atasco os digo...

Esque lo suyo es saber lo que se hace...

Saludos!

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Rutina LCD 4 Bits
« Respuesta #62 en: 10 de Julio de 2006, 08:44:25 »
Hola amigos, vuelvo a estar por aquí!

A ver si esta semana tengo un poco de tiempo y vuelvo a intentar resolver mis dudas.

Muanix, que sí, que tienes razón. Lo suyo es entender uno mismo las cosas.

Si, ese es el espíritu que en gral, se le quiere dar al foro.


PEro el datasheet si estuviera en castellano, entendería el 80% de lo que dice, pero en ingles encima, la cosa se complica. Aparte que comenta cosas que me pierdo.

Si, es una pena que no sepas inglés.  De todas formas, te comento que hace tiempo no es un "componente extra" saber ingles... sino una necesidad.  Te recomiendo que tomes clases, porque el 95% de los textos de vanguardia en todo lo que sea firmware, microcontroladores y software, viene todo en inglés.  Si esperas a que alguien traduzca puedes esperar semanas, meses o años y encima algunos textos ni siquiera se traducen.

Cuando te metes en este mundillo te vas haciendo "especialista" en la materia, y cuando logras eso, los textos son mas excasos, menos populares y por ende no son masivos , son en casi un 100% en inglés y terminan siendo mucho más dificil de conseguirse (incluso en inglés).

Voy a intentar como he dicho, hacer que funcione y sui veo que me atasco os digo...

Esque lo suyo es saber lo que se hace...

Bueno, hazlo y vuelve a preguntar y como te dije antes... dinos qué es lo que no entiendes del datasheet.

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 picto

  • PIC16
  • ***
  • Mensajes: 106
Re: Rutina LCD 4 Bits
« Respuesta #63 en: 11 de Julio de 2006, 03:28:28 »
Hola picto. No me molesta explicar. Pasa que este tema es bastante delicado,largo y confuso.Si tenes MSN fijate en mi perfil que figura mi mail, agregame y te lo explico x ahi que va a ser mas rapido.
A los PICs los aprendi solito. Mirando codigo ajeno y leyendo, leyendo muchos datasheets. Pero nadie me explico nada. Excepto mi gran maestro Peter Jakab (www.jap.hu) quien me oriento con un par de dudas de novato.

Programar en ASM implica irremediablemente conocer el Hardware de un PIC al 100%, cosa que quienes programan en lenguajes de mas alto nivel no tienen obligacion de conocer(y muchos no conocen absolutamente nada pero programan y funcionan).
Fijate sino,por ejemplo, lo facil que es escribir en una memoria I2C programando en C, mientras que yo pa lograrlo he sudado 3 dias enteros...

Ahora, si hablamos de programacion....pues es lo que he estudiado en la Universidad.

Bueno, seguimos x MSN este tema si te parece. Saludos.

Hola BrunoF, acabo de ver el mensaje...

A ver si esta noche puedo conectarme y hablamos...

Estoy mirando la explicación que me diste y tengo el datasheet, quiero intentar entenderlo...

Saludos

Desconectado picto

  • PIC16
  • ***
  • Mensajes: 106
Re: Rutina LCD 4 Bits
« Respuesta #64 en: 12 de Julio de 2006, 06:31:42 »
Hola de nuevo!

Estoy dale que te pego y no consigo arreglar lo de las tablas...

Por lo que explicais, el Pic16F877 tiene Banco 0 (pagina 1,2,3 y 4) Banco 1 (pagina 1,2,3 y 4) Banco 2 (pagina 1,2,3 y 4) y Banco 3(pagina 1,2,3 y 4).

Si me equivoco porfavore corregidme  :lol:

Entonces mi pregunta es... los bancos 0,1,2 y 3 corresponden a la siguiente imágen?


Entonces, si es así... tengo que hacer lo de cambiar de banco con bsf    STATUS,RP0  por ejemplo?

Otra cosa, hay una opción en el MPLAB que pone [view Disassembly listing] eso es para ver que posicion ocupa cada línea de programa?

Bien, poniendo la opcion Disassembly listing... veo que en las tablas, en el Mensaje 18 me pasa de   00F7  a 101, y si pongo por ejemplo org 0x400 al principoio de la tabla me salta a la 501 en el mensaje 18...

Os pongo un ejemplo...

Código: [Seleccionar]
                                                      35:    Mensajes
  0001    0782     ADDWF 0x2, F                  36:    addwf PCL,F
  0002    3420     RETLW 0x20                     37:    Mensaje0 DT "  mensaje 0", 0x00
  0011    3420     RETLW 0x20                     38:    Mensaje1 DT "   mensaje 1", 0x00
  001F    3442     RETLW 0x42                     39:    Mensaje2 DT "mensaje 2", 0x00
  002F    3450     RETLW 0x50                     40:    Mensaje3 DT "mensaje 3", 0x00
  0040    3450     RETLW 0x50                     41:    Mensaje4 DT "mensaje 4", 0x00
  004A    3450     RETLW 0x50                     42:    Mensaje5 DT "-" , 0x00
  005B    3450     RETLW 0x50                     43:    Mensaje6 DT "-", 0x00       
  0068    3456     RETLW 0x56                     44:    Mensaje7 DT "-", 0x00
  0078    3456     RETLW 0x56                     45:    Mensaje8 DT "-", 0x00
  0088    3456     RETLW 0x56                     46:    Mensaje9 DT "-", 0x00
  0098    3456     RETLW 0x56                     47:    Mensaje10 DT "-"0x00
  00A8    3456     RETLW 0x56                     48:    Mensaje11 DT "-"0x00
  00B8    3456     RETLW 0x56                     49:    Mensaje12 DT "-"0x00
  00C8    3450     RETLW 0x50                     50:    Mensaje13 DT "-",0x00 
  00D9    3445     RETLW 0x45                     51:    Mensaje14 DT "-", 0X00
  00E3    3445     RETLW 0x45                     52:    Mensaje15 DT "-", 0x00
  00ED    3445     RETLW 0x45                     53:    Mensaje16 DT "-", 0x00
  00F7    3441     RETLW 0x41                     54:    Mensaje17 DT "-", 0x00
  0102    344C     RETLW 0x4c                     55:    Mensaje18 DT "-", 0x00
  010F    3452     RETLW 0x52                     56:    Mensaje19 DT "-", 0x00
  011A    344D     RETLW 0x4d                     57:    Mensaje20 DT "-", 0x00
  0125    3445     RETLW 0x45                     58:    Mensaje21 DT "-", 0x00
  0132    3445     RETLW 0x45                     59:    Mensaje22 DT "-", 0x00
  013F    3445     RETLW 0x45                     60:    Mensaje23 DT "-", 0x00
  014C    3445     RETLW 0x45                     61:    Mensaje24 DT "-", 0x00
  0159    3443     RETLW 0x43                     62:    Mesnaje25 DT "-", 0x00
  0164    344D     RETLW 0x4d                     63:    Mensaje26 DT "-", 0x00
  016F    3442     RETLW 0x42                     64:    Mensaje27   DT "-", 0x00
  017B    3441     RETLW 0x41                     65:    Mensaje28 DT "-", 0x00
  0187    3443     RETLW 0x43                     66:    Mensaje29 DT "-",0x00
  0194    3441     RETLW 0x41                     67:    Mensaje30 DT "-", 0x00
  019E    3449     RETLW 0x49                     68:    Mensaje31 DT "-", 0x00
  01AC    3453     RETLW 0x53                     69:    Mensaje32 DT "-", 0x00
  01B7    3453     RETLW 0x53                     70:    Mensaje33 DT "-", 0x00
  01C3    3441     RETLW 0x41                     71:    Mensaje34 DT"-",0x00
  01D3    3420     RETLW 0x20                     72:    Mensaje35 DT"   -", 0x00
  01DE    3449     RETLW 0x49                     73:    Mensaje36 DT"mensaje 36", 0x00
                                                  74:    Finmensajes

Entiendo que cuando llega al mensaje18 cambia de página? Me pasa de F7=247 (banco 0 pagina 1) a 102=257 (banco 0 página 2) ?
Es lo que yo interpreto por lo que veo... igual interpreto muy mal...

Si todo esto es correcto, entonces ahora tendría que cambiar de página de la 0 a la 1... pero no sé como se cambia de la 0 a la 1. Con PCLATH? Pero como?

Es más complejo de lo que pensaba... voy a seguir investigando.
Gracias


Desconectado picto

  • PIC16
  • ***
  • Mensajes: 106
Re: Rutina LCD 4 Bits
« Respuesta #65 en: 12 de Julio de 2006, 08:31:28 »
Creo que vpy cogiendo la idea...

Es como cuangho me expicasteis lo de cambiar de banco con el Status verdad? Pues debería de hacer lo mismo si paso de 255 osea de página...

PEro creo que ya sé porque no he logrado hacerlo funcionar... las librerías que me pasarón son solo válidas para no más de 255 lineas, y mis mensajes pasan de 255...

Mala solución veo...

Saludos

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Rutina LCD 4 Bits
« Respuesta #66 en: 12 de Julio de 2006, 09:21:04 »
picto estoy haciendo un par de rutinas que subiré en el hilo de veguepic de ejemplos en ensamblador.

Ni bien lo termine te daré el link así lo puedes ojear.

Creo que te será de gran utilidad a tí y a muchos otros.


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 picto

  • PIC16
  • ***
  • Mensajes: 106
Re: Rutina LCD 4 Bits
« Respuesta #67 en: 12 de Julio de 2006, 09:54:33 »
Ok, maunix.
Gracias :-/

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Rutina LCD 4 Bits
« Respuesta #68 en: 12 de Julio de 2006, 15:24:40 »
- 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 picto

  • PIC16
  • ***
  • Mensajes: 106
Re: Rutina LCD 4 Bits
« Respuesta #69 en: 17 de Julio de 2006, 09:26:58 »
Bueno, vuelvo a la carga.
Ahora qu tengo un poco de tiempo voy a vovler a revisar y entender las cosas.
Lo que sí he averiguado... que aparte, el problema que yo tenía en el programa es que la librería que me pasarón del control de LCD solo es válida si no supera 256 posiciones... osea que aunque hiciera bien el programa, no me funcionaria si no tengo una librería que me deje.

Saludos

Desconectado pibe

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 635
Re: Rutina LCD 4 Bits
« Respuesta #70 en: 19 de Julio de 2006, 13:36:29 »
 :shock: Joder picto. A este paso en un mes me superas en conocimiento  :-/. Estás hecho un tigre !
Mi jefe mirando el prototipo que estoy creando: "Y eso va a funcionar?"

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Rutina LCD 4 Bits
« Respuesta #71 en: 20 de Julio de 2006, 14:51:12 »
Bueno, vuelvo a la carga.
Ahora qu tengo un poco de tiempo voy a vovler a revisar y entender las cosas.
Lo que sí he averiguado... que aparte, el problema que yo tenía en el programa es que la librería que me pasarón del control de LCD solo es válida si no supera 256 posiciones... osea que aunque hiciera bien el programa, no me funcionaria si no tengo una librería que me deje.

Saludos

picto de todas formas 256 posiciones creo que te servirá para los display de uso más común.

La rutina que subí es genérica, no solo para sacar por display sino para cualquier cosa que uno desee.   :)
- 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 Manofwar

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 156
Re: Rutina LCD 4 Bits
« Respuesta #72 en: 20 de Julio de 2006, 15:05:59 »
Hola Picto, he estado mirando la librería de control del LCD (P876ALCD_4B.INC) y no encuentro razones para que no la puedas usar con tablas de más de 256 valores. Si utilizas las rutinas que ha publicado Maunix, añadiendo un byte más para llegar a 16 de Offset como dice el código, podrás hacerlo funcionar bien.
« Última modificación: 20 de Julio de 2006, 17:57:07 por Manofwar »
Saludos desde Almería, España

Desconectado picto

  • PIC16
  • ***
  • Mensajes: 106
Re: Rutina LCD 4 Bits
« Respuesta #73 en: 21 de Julio de 2006, 03:11:00 »
Hola Picto, he estado mirando la librería de control del LCD (P876ALCD_4B.INC) y no encuentro razones para que no la puedas usar con tablas de más de 256 valores. Si utilizas las rutinas que ha publicado Maunix, añadiendo un byte más para llegar a 16 de Offset como dice el código, podrás hacerlo funcionar bien.

Hola Manofwar, utilizo 3 librerías... Retardos.inc, P876ALCD_4B.INc y LCD_MENS.INC... te adjunto la librería LCD_MENS.INC y hechale un vistazo por favor... tu crees que con este librería se puede utilizar si pasas de las 256 primeras posiciones?

Ayer intenté de nuevo ponerme manos a la obra, pero no iba el foro  :?

Pibe, por cierto, tu si que estás heho un fenómeno!

Maunix, que es eso de macros?

Saludos!

Desconectado Manofwar

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 156
Re: Rutina LCD 4 Bits
« Respuesta #74 en: 21 de Julio de 2006, 06:31:10 »
Picto debo estar quedandome ciego :D, no veo el archivo
Saludos desde Almería, España