TODOPIC
Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: Nocturno en 29 de Octubre de 2005, 23:21:00
-
Me gustaría compartir con vosotros la librería que he preparado en C30 para manejar el Display del Nokia 3310.
He incluido funciones para escribir textos, puntos, líneas, cuadrados, círculos y bitmaps.
Además, existe la opción de escritura directa en el display o en un buffer de memoria en segundo plano, para componer el dibujo antes de mostrarlo.
En fin, acabo de subirla a El Rebujito. Espero que la disfrutéis.
-
wow manolo como siempre haciendo cosas interesantes.....por cierto muy buena la explicacion del diseño de la libreria, felicidades por este logro Manolo
-
Thanks!!! Ya la vi rulando en la quedada, y se movia de muerte!!

aver si le hago un apaño para usarla con CCS.
-
Nuestro incansable Gladiattor , pero bueno....... , esto ya es fantasia hecha realidad

-
Me he quedado
, recien estoy intentando usar la pantalla del Nokia 3390 (aca en mi pais no hay el 3310) ya lo tengo en mis manos y poco a poco quiero ir usandolo...
Lo pensaba usar con el CCS pero ahora que reviso bien lo hare con un dsPic en C30... Realmente Nocturno... me saco el sombrero... eres todo un MAESTRO.
Tan solo una pequeña pregunta: Aparte del FastLCD hay algun otro programita para editar graficos para el LCD????
Gracias por compartir esto con todos 
Un abrazo...
-
Sí, hay más aplicaciones para esa función. Concretamente un ex-forista, el gran Lager, desarrolló una aplicación llamada Todopic Generator que servía exactamente para eso. La puedes encontrar en el subforo de Basic.
De todas formas, de todas las aplicaciones que he probado, el Fast-LCD es la única que permite obtener los bytes en vertical, tal y como los necesitan los displays de Nokia.
Ah, y lo de maestro resérvalo para otros, yo me limito a ir aprendiendo poco a poco. De todas formas, muchas gracias.
-
Bueno Nocturno un trabajo excelente. Me he quedao helao
con el video de demostración.
Tengo un par de preguntillas
Me he bajao las librerías y veo que has programado unas rutinas de retardo llamadas DelayUs y DelayMs. En concreto, en la DelayUs programas 26 "nop" y un decremento de la variable v (v--). Me gustaría saber que frecuencia de reloj has utilizado (con los MIPS me sirve ya que me has explicado que relación guardan con el cristal de cuarzo) y que fórmula, método científico o cuenta de la vieja 
has utilizado para averiguar que en cada repetición de ese bucle se pierde un microsegundo.
Gracias de antemano.
-
Hola Antonio, muchas gracias.
A ver, intento contestar a tu pregunta, aunque ya sabes que el ASM y yo no somos muy amigos.
Al desensamblar el DelayUs sale esto:
001D9C cp0.w [0x001c]
001D9E bra z, 0x001dd8
... aquí todos los NOP ...
001DD4 dec.w [0x001c],[0x001c]
001DD6 bra 0x001d9c
Segun la data, las instrucciones cp0 y dec ocupan un ciclo cada una, mientras que las instrucciones bra ocupan dos.
Por tanto, la duración de cada bucle sería de 1+2+26+1+2=32 ciclos.
Si el micro estuviera trabajando a 32MIPS, esos 32 ciclos serían un microsegundo.
De todas formas, en el ejemplo del Display Nokia, tenía un 30F4011 con oscilador interno ajustado a su máxima velocidad (tienen cierta tolerancia) y corría a 31,446MIPS, por lo que ese DelayUs duraba un pelín menos de 1 microsegundo, aunque en esta aplicación no era en absoluto algo crítico.
Aunque en C30 no es obligatorio para su compilación, en aplicaciones que dependen de la velocidad del micro, siempre defino la variable MIPS, y comprobarás como en esta librería está definida como:
#define MIPS 31446
-
Muy claro todo


Muchas gracias. Voy a seguir pegandome con el dsPIC y la librería a ver si este puente puedo hacer algo.
Cuando consiga hacerla andar pongo aqui unas fotos.
Estoy teniendo problemas cuando activo el PLL del PIC: un led que tengo conectado a la alimentación se pone a parpadear. Es como si cuando activo el PLL el dsPIC consumiera picos de corriente 

.
Voy a leerma la data a ver si veo algo raro.