Display de nokia 1100

Estuve tratando de hacer funcionar un Lcd de nokia, al parecer tenía problemas con la corriente de salida del micro... en fin después de tanto intentar cambié el LCD y lo pude correr.
El punto está en que probé el primer LCD que tuve en mis manos, y al encender el led, me di cuenta de que era de un Nokia 1108.

La cuestión es:

...Sí hay alguna diferencia entre el LCD de Nokia 1100 y el 1108 ?...
 
Hola que tal soy nuevo en este foro.. pero he esta al pendiente sobre este tema de las pantallas del celular, La verdad no tengo idea si hay diferencia entre estos 2 celulares que mencionas, yo ya manejo la pantalla del nokia 1100 aunque no puedo realizar movimientos o funciones graficas todavia podria decirse que ando en el "hola mundo" pero ya es algo, tambien he podido desplegar valores de ADC asi como, el valor de la medida de un sensor ultrasonico..

Lo que todavia no se es darle movimiento o hacer graficas, navegando encontre un programa en el cual te simulaba la pantalla del celular y te generaba la matriz para que se desplegara.. el problema es que no lo encuentro..

Bueno creo que muchos de ustedes utilizan Pic y mm bueno yo utilizo un ATMEGA32 pero cualquier cosa que yo les pueda ayudar pues con gusto y bueno el programa esta en C++ y no en ensamblador pero tengo los diagramas que utilice y si quieren les puedo pasar mi codigo.. :LOL: para muestra basta un boton :evil:
 

Adjuntos

  • copia_de_112008142631_156.jpg
    copia_de_112008142631_156.jpg
    30.1 KB · Visitas: 873
hola....soy nuevo en el foro............Lo que sucede es que para este semestre debo realizar un proyecto empleando un microprocesador AT89C52 y una pantalla lcd del nokia 1100.Debo hacer que aprezca en la pantalla un menu de 5 items y en uno de ellos se debe mostrar una grafica.... Agradeceria si me pudieran ayudar con información para aprender a manejar esta pantalla ya que he estado buscando en internet y no he podido encontrar nada.........................

Gracias
 
Fonsi
Sam_and

Cordial saludo

Bueno quisiera saber si esta pantalla es SPI y la podemos conectar al at89c52.

Lo primero es saber la secuencia para escribir en el lcd y transformarla para el AT89C52 y quien nos puede colaborar es Andres Zamora quien se puso a disposicion para enviarnos como conecto el display ademas de información que nos pudiera colaborar.

gracias.
 
el protocolo del display es serial con clock, lo unico que tienen que hacer es poner un uno o un cero y dar el pulso de clock, en las librerias que estan disponibles en el foro indica como enviar cada comando.

Como todo el codigo esta en C, lo unico que tienen que hacer para utilizarlo en Atmel o PIC, es reemplazar las macros del respectivo puerto.

en un post anterior tienen las librerias graficas para hacer puntos lineas y para colocar un bmp en pantalla y como todo se basa en funciones que llama a funciones, solo tienen que reemplazar el codigo en la funcion de escritura.

saludos.
 
Guillermo

antes que nada, las tensiones de trabajo son de 3 a 3.6 V tipico 3.3V, con 4V en Vdd corres el riesgo de quemar los leds

la tension mas importante es la Vlcd con la cual le das mas o menos contraste (sin querer).

voy a intentar guiarte un poco para que uses la idea en ensamblador

todos los "bytes" que se envian al lcd son de 9 bit, el primero indica si es un comando o un dato y los siguiente obviamente son o un dato o un comando Smile

a diferencia de algunos display el del nokia utiliza el flanco ascendente del clock para tomar el bit, por lo que tendrias que poner en la pata que usas como clock, un cero, poner el valor del bit del byte a transmitir (el mas alto) en la pata de dato y poner luego el valor de la pata de clock en uno.

esto lo tenes que repetir para todos los bits a enviar, te repito, el primer bit a enviar es el mas alto del byte

en C sería así:

sclk = 0;
sda = dc; // 1 para dato y 0 para control
sclk = 1;

// enviar byte de control/dato
for(i=0;i<8;i++){

sclk = 0;

if(c & 0x80)
sda = 1;
else
sda = 0;

sclk = 1;
c <<= 1;


}


algo muy importante y con lo que renegué mucho fue con la inicializacion del display, si no esta bien inicializado no anda

esto inicializa el lcd

rst = 0;

Delay_ms(200);

rst = 1;

Delay_ms(200);

Write_lcd(CMD,0x25); // VOP
Write_lcd(CMD,0x90); // EV
Write_lcd(CMD,0xA4); // Display en modo normal
Write_lcd(CMD,0x2F); // power control set


// Write_lcd(CMD,0xd1); // MUX
Write_lcd(CMD,0x40);
Write_lcd(CMD,0xb0);
Write_lcd(CMD,0x10);
Write_lcd(CMD,0x0);
Write_lcd(CMD,0xC8); // invertir filas
Write_lcd(CMD,0xa1); // invertir columnas

Write_lcd(CMD,0xac);
Write_lcd(CMD,0x07);

Write_lcd(CMD,0xf9); // activar modo icono (acelera encendido)
Write_lcd(CMD,0xac); // ubicacion de imagen
Write_lcd(CMD,0x07);



Write_lcd(CMD,0xaf);



fijate los delay que necesita y los comandos.

cualquier cosa, tenes mi mail. seguimos por ahi.


un abrazo.

alberto
 
Que tal saludos aqui pongo los diagramas asi como las librerias que utilice, repito todo es para el ATMEGA32 y bueno yo utilizo un LM358 como seguidor de voltaje, esto para bajar el voltaje de 5v, a 2.8 que es lo que maneja la hoja de datos del nokia, tambien infica que VDD1 debe de estar a 1.8v pero pues yo corri el riesgo y lo conecte a 2.8v de la salida de LM358 y todo funciona correctamente , el micro lo alimente con 2.8 tambien y bueno ya tienene la prueba.

El unico error que tengo es en el posicionamiento de las lineas en el comando Gotoxy(0,0); ya que si coloco (0,1) me muestra la mitad del texto y aun no se como resolverlo y bueno todavia no se como empezar a dibujar y por ahi vi que pusieron un archivo para generar una matriz y sus comandos pero apenas lo checare.

Y perdon por la tardanza pero por otras razones no habia ingresado a este foro.
 

Adjuntos

  • nokia_1100_937.rar
    979.4 KB · Visitas: 464
zam_and, fijate en estas librerias, vas a solucionar algunos problemas en la presentacion de texto y sobre todo vas a poder dibujar con muy mucha velocidad en el LCD.

lamentablemente como estas librerias son parte de un desarrollo que hice para una empresa, no puedo dar toda la información, tal como las TxTools de las cuales hago algunas conversiones de entero a cadenas sin ocupar recursos ni espacio del micro, pero las librerias graficas estan completas.

otro pero que tiene es que el software generador de la matriz de caracteres TTF tambien el propiedad de ellos ahora, asi que solo puedo dejarles 2 tipos de fuentes.

tambien les adjunto unas captura en un LCD de 128x64 hechas con estas librerias, para que tengan una idea de hasta donde las pueden exprimir.

un abrazo.
 

Adjuntos

  • fast_lcd_618.zip
    3.6 KB · Visitas: 369
  • fonts_123.zip
    2 KB · Visitas: 344
  • captura_134.jpg
    captura_134.jpg
    89.2 KB · Visitas: 534
Que onda Alberto, pues muchas gracias por las librerías , se ve muy padre tus pantallas y bueno creo que me serviran de mucho, sabes apenas mande el mensaje anterior y al dia siguiente me meti de lleno a poder hacer un dibujo, mas o menos tarde como 4 horas pero al fin logre dibujar lo que yo deseo, :LOL: como dije checare lo de tus librerias que me parecen muy bien, y aprovechando, tengo una duda:

fijate que como ya puedo dibujar con las librerias que yo mande, intente hacer una pequeña animación, alomenos con tres imagenes pero, la primer imagen la desplegaba estupendamente, la segunda imagen con pequeña información basura ej: A?1234, bueno numeros y letras en una linea ("obvio estos no deberian ir") y la tercer imagen ya no se muestra porque todo es basura es decir puros signos y numeros.

Encontre el programa que me genera los BMP a la matriz que es la que se desplega y lo unico que hago es cambiar el nombre de la matriz para mostrarla en ciertos tiempos, pero me ocaciona ese error.

Como estoy viendo tu libreria supongo que ese "refresh" que haces es para mandar a dibujar al LCD, y el LCD_Clear es para limpiarlo. Si no me equivoco con el Lcd_Clear debes de mandar a cero el buffer o la memoria del lcd no? pienso que ese es el error que tengo, no se como limpiar el buffer y se me ocurre que es asi. con el LCD_Clear.

Bueno te mando una imagen de lo que pude hacer y pues espero que sirva de algo y muchas gracias, saludos.
 

Adjuntos

  • 031209123844_173.jpg
    031209123844_173.jpg
    318.9 KB · Visitas: 307
albertocasatti dijo:
zam_and, fijate en estas librerias, vas a solucionar algunos problemas en la presentacion de texto y sobre todo vas a poder dibujar con muy mucha velocidad en el LCD.

lamentablemente como estas librerias son parte de un desarrollo que hice para una empresa, no puedo dar toda la información, tal como las TxTools de las cuales hago algunas conversiones de entero a cadenas sin ocupar recursos ni espacio del micro, pero las librerias graficas estan completas.

otro pero que tiene es que el software generador de la matriz de caracteres TTF tambien el propiedad de ellos ahora, asi que solo puedo dejarles 2 tipos de fuentes.

tambien les adjunto unas captura en un LCD de 128x64 hechas con estas librerias, para que tengan una idea de hasta donde las pueden exprimir.

un abrazo.


Sin meterme en el tema, ¿porque no las liberaste primero bajo licenia GNU? Con ella puedes vender tus desarroyos sin dejar que la empresa se apropie de todos los derechos, basta que les digas que usaste un proyecto antiguo ya desarroyado que modificaste para ellos. Ademas, ellos podrian sacarle provecho comercial sin miedo a que competidoras usen el mismo soft ya que tu tendrias que licenciarlas, por lo que pasarias de vender tus desarroyos por completo a hacer un contrato de exclusividad comercial.
 
Hemp, el contrato que se firmó no me permitia liberar ninguna información, pero como las librerias graficas si son mias y aparte estan adaptadas para otro display, puedo difundirlas.

cosas que uno aprende a los golpes


saludos
 
En este momento estoy pasando las librerías a C de CCS para manejar el display mediante un PIC18F2550. El tema es que no tengo el display pero en cuanto lo consiga hago las prácticas y posteo los resultados.
 
Acá esta el programa de control, como no tengo el LCD se me hace complicado hacer las pruebas. Por eso lo posteo , el que tenga el circuito a mano para probar que me diga si está bien cualquier cosa lo corrijo.

Quiero hacer un agradecimiento especial al señor alberto por darnos toda la información para manejar la pantalla. :cool:


PD: Aca esta el archivo me lo habia olvidado.......... :eek:
 

Adjuntos

  • lcd_nokia_1100_127.rar
    163.4 KB · Visitas: 422
Saludos Moyano Jonathan, mas arriba encontraras un archivo en el que puse el circuito que utilice para conectar la pantalla del nokia 1100. espero que te sirvan de ayuda. yo los probe y me funcionan muy bien.
 
zam_and

para la mayoria de los casos limpio la pantalla antes de enviar nuevos datos, pero para una animacion que va a ocupar toda la pantalla no es necesario.

el problema de la información basura en el lcd, puede ser porque tengas mal algun puntero y estes leyendo cualquier cosa de la memoria.

Para todos:

Les adjunto un programa para convertir BMP de 96x65 en buffer para C.

cualquier cosa que no les ande o les presente la información al reves, comenten asi lo corrijo.

suerte
 

Adjuntos

  • bmp_lcd_133.zip
    309.1 KB · Visitas: 286
  • bmp_a_lcd_143.jpg
    bmp_a_lcd_143.jpg
    215.9 KB · Visitas: 323
un dato que me estaba olvidando,

si mandan el buffer que genera directamente al lcd, se ve la imagen directamente

unsigned char Icono[9][96]; // aca va el buffer

Write_lcd(CMD,0xb0);
Write_lcd(CMD,0x10);
Write_lcd(CMD,0x00);



for(y=0;y<9;y++){
for(x=0;x<96;x++){
Write_lcd(DTA,Icono[y][x]);
}
}


y siempre, pero siempre recuerden pones las coordenadas al origen con el 0xB0 y 0x10

suerte
 
Hola que tal soy nuevo en el foro y me encuentro en aprietos con un proyecto.......En este me piden que debo...realizar el motor stirling y mostrar en la pantalla de un nokia 1100 la temperatura a la que esta trabajando el motor......No he tenido problemas con el motor.....Pero mi problema es que no he podido deplegar los datos en pantalla....Pues el micro que utilizo es el ATmega32.....Le agradeceria mucho a quien pueda ayudarme.
 
Atrás
Arriba