TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: Meta en 14 de Enero de 2008, 05:46:45

Título: Menús con PIC
Publicado por: Meta en 14 de Enero de 2008, 05:46:45
¿Ya se han rendido? Era cuestión de tiempo.

Hacer un SO con un PIC ahora diría que se puede con los nuevos de 32 Bits y a 72MHz.

¿Cuántos Bits tiene la BIOS de un PC actual?

Con eso se ve hasta el monitor, controla la placa base y tiene un menú muy chulo para lo que es.


(http://content.answers.com/main/content/wp/en/d/dd/Phoenix_-_AwardBIOS_CMOS_Setup_Utility.jpg)

(http://www.easylinux.de/Artikel/ausgabe/2003/12/030-platteneinbau/vmware-bios.png)

(http://www.yoreparo.com/foros/files/bios.jpg)







En estas BIOS si se pueden hacer menús, ¿Y los PIC se puede?
Título: Menús con PIC
Publicado por: Meta en 14 de Enero de 2008, 06:15:38
Por si solo si hace cosas y muchas si te fijas bien, activas el tipo de HD, quién arranca primero, decir la temperatura, cambiar las entradas Y/O salidas de los puertos, desactivar el sonido de la palca integrada para utilizar la externa, bla, bla, bla...

Con un PIC me gustaría hacer un menú y que se muestre en TV o monitor de PC, al menos se puede con un LCD.

Los modernos PIC de 32 Bits, ¿se pueden realizar esta tarea que dices?

Quizás sea muy pronto, primero con los años mirarán si es muy aceptado estos tipos de PIC, después harán sus no se qué cosas para implementarlo y ser más fácil.
Título: Menús con PIC
Publicado por: reiniertl en 14 de Enero de 2008, 11:39:12
Yo apostaría que se puede hacer incluso con PICs de 8 bits. Por ejemplo las viejas consolas de juego de los 80´s se hacían con Z80 y 8051, un PIC16F877 es mas poderoso que cualquiera de aquellos uC.

No dudo que podamos generar con un PIC, incluso de 8 bits, menúes como ese, pero en general los PICs fueron diseñados para otro tipo de aplicaciones y es por eso que no abundan implementaciones como esa en base a uC.

Por ejemplo la primera PC (el primer ordenador al que se le dió este título de forma comercial) tenía un uP 8086 que trabajaba a 40MHz, con ciclo de instrucciones de 12 pulsos de reloj y cola de instrucciones o pipeline de 2 instrucciones, tenían 64KB de memoria RAM (aspecto que todavía se conserva en las actuales PC), un temporizador porgramable, un controlador de DMA, un controlador de interrupciones entre otras cosillas.

Puede alguien decirme que no hay PIC capaces de menejar esos otro circuitos (DMA, IT) que tiene además sus temporizadores, que puede manejar memorias RAM grandes y demás?

Así que estoy convencido que hasta con uC de 8 bits se pueden hacer esas cosas. Así que ni hablar de las cosas que pueden hacerse con un PIC de 32 bits.

Saludos
Reinier

Ha y los SO no necesitan de ordenadores muy poderosos, el CP-M uno de los abuelos de los SO, trabajaba sobre ordenadores que no tenían siquiera uP integrado, fueron anteriores a los 4004, así que imaginen por donde va la cosa.


Título: Menús con PIC
Publicado por: Meta en 14 de Enero de 2008, 12:30:49
Pen algún PIC se podrá hacer estas cosas, el de PIC32 seguro. Me imagino que lo de hacer menús necesitaría algo como un "Hitachi 44780", este ejemplo es para que lo entiendan. En realidad este Hitachi 44780 es de un LCD del LM016L. Con esto quiero decir que si ponemos algún driver de vídeo que entienda el monitor de PC o Televisión junto al PIC, entonces tendremos algo de la BIOS.

No se si habrá algún PIC8 o PIC16 que ya venga incluido dentro del mismo encapsulado. A parte de eso, que hagan más funciones como, activar motor, luz, medir temperatura, etc... con menú incluido.

¿Pero quién es el demonio hacer un mini SO con un PIC así?

A ver si sale alguno.
Título: Menús con PIC
Publicado por: reiniertl en 14 de Enero de 2008, 12:49:04
AQue si se pueden hacer cosas asombrosas con PICs y pantallas?

El que tenga PROTEUS que mire el ejemplo que hay de ajedrez con un PIC y una pantalla gráfica, después de eso no digo nada más al respecto.

Si alguien logra hacer una librería para manejar LCD y hacer menúes gráficos, pos que las pase al resto de la comunidad que agradecidos les quedaremos.

Saludos
Reinier
Título: Menús con PIC
Publicado por: Meta en 14 de Enero de 2008, 13:02:17
Hay varios de ajedrez y no gano nunca. Bueno, no se si con ese LCD enorme se hará algo complejo con menú y submenús cmo las BIOS. Me da que si, pero muy difícil.

A ver si alguien se anima hacer esto algún día.
Título: Menús con PIC
Publicado por: jfh900 en 14 de Enero de 2008, 13:12:06
No entiendo que tiene que ver los menús con las bios, alguien me lo puede explicar.

Un saludo
Título: Menús con PIC
Publicado por: Meta en 14 de Enero de 2008, 13:17:32
Pues que un PIC si es capaz de mostrar un menú como la BIOS y mostrarlo en una TV o monitor de PC.

Hablo de eso, y que tiene que ser muy difícil hacerlo.
Título: Re: Menús con PIC
Publicado por: Nocturno en 14 de Enero de 2008, 13:31:04
He dividido el hilo para sacarlo del de Sistemas Operativos con PIC porque considero que el tema no tiene ninguna relación con el otro.

Hacer un menú con un PIC es relativamente fácil. Generar vídeo es algo más complejo pero también se consigue con un PIC. Hacer ambas cosas, por tanto, es factible.
Lo que pasa es que no parece la solución más lógica para hacer las cosas, habiendo otras alternativas más eficaces.
Título: Re: Menús con PIC
Publicado por: reiniertl en 14 de Enero de 2008, 14:07:50
Gracias Nocturno, me parece que se estaba estropeando mi hilo sobre SO en PICs

Saludos
Reinier
Título: Re: Menús con PIC
Publicado por: reiniertl en 14 de Enero de 2008, 14:12:54
Meta, a veces cosas muy simples resultan ser realmente complejas. Y otras cosas que parecen realmente complicadas resultan no serlo tanto.

No creo que hacer un menú interactivo sea sumamente complicado de hacer, de hecho existen en el mundo de las PCs desde princiopios de los años 80 (recordemos que el primer uP integrado el 4004 apareció en 1972 y era de 4bits), así que resulta que en más o menos 10 años ya existían sistemas de vídeo con menues y todo, y recordemos también que por aquel entonces tampoco habían herramientas de desarrollo como las actuales.

Así que te aseguro que no es demasiado difícil hacerlo, entonces puedes preguntarte. Si claro viene este tío y me dice que no es difícil, bueno y entonces por que no hay uno por alli?

Y te digo yo que si buscas bien seguro lo encontrarás, pero también te aseguro que si no los encuentras a la primera es porque los PICs se usan en aplicaciones que usualmente no requieren este tipo de cosas.

Mira, para que tengas una idea, un PIC de 16bits (los de la familia 24) es capaz de correr una dstribución de uCLinux, que puede entre otras cosas:
Dar soporte al stack TCP/IP
Almacenar páginas Web
Un servidor de bases datos
Manejar displays gráficos con interfaces a todo color (te suena que los celulares tienen estas cosas)
Y otro montón de cosas más que puedes hacer con sólo expandir un poco el uC

Imagina que en solo 64KB de memoria de programa caben las librerías gráficas, más otros 64KB para el Kernel del SO (claro muy optimizado para este entorno puesto que sólo debes poner lo que utilizarás en tu aplicación)

Así que no te asombres por ver un sistema de menues, de hecho hace un tiempo encontré una página de un loco que le gustan los juegos viejos y se hizo una consola con un PIC para jugar al pong y al TETRIS y a todo color, está muy bueno su proyecto.

Y que decir de una página que Aitopes me recomendó, donde otro grupo de locos hicieron una PC con SO y todo y utilizaron que? Pues únicamente compuetras lógicas, así que procesador y todo lo hicieron solo con compuertas.

Te asombrarás cada día de las cosas que se pueden hacer en el mundo electrónico.

Saludos
Reinier
Título: Re: Menús con PIC
Publicado por: aitopes en 15 de Enero de 2008, 10:30:12
Hola Meta!

Me parece que estas confundido:

1) El BIOS es solo una MEMORIA, guarda un monton de 0 y 1 dentro, pero ni ahi genera ningun tipo de imagen, ya que no es un procesador de ninguna clasa, ni puede ejecutar un programa, ni nada de eso: solo es el Basic Input Outoup System, una coleccion de rutinas de software almacenadas en el chip que mostras en la foto de arriba.

2) Las imagenes tan bonitas que ves "del BIOS" en el monitor, en realidad son imagenes generadas por una placa de video algunos miles de veces mas potente que un PIC, y increiblemente mas rapidas.


Para generar una imagen sobre un TV, como seguro ya sabes, necesitas dibujar cada linea en menos de 64 microsegundos.
Un PIC a 4MHz solo ejecuta 64 instrucciones en ese tiempo, por lo que el maximo teorico de columnas que podrias dibujar en ese tiempo son 6. En la practica, dudo que puedas dibujar la mitad. Con un PIC a 20MHz, puedes quintuplicar ese numero. Pero para llegar a una imagen de 800x600 pixeles, ni el DSPIC mas rapido puede.

Yo creo que cuando dices "¿Ya se han rendido? Era cuestión de tiempo." solo muestra que no conocias bien el problema a resolver. Y la respuesta a "En estas BIOS si se pueden hacer menús, ¿Y los PIC se puede?" es parcialmente "NO": Ni los BIOS hacen menues, ni los PICs son incapaces de hacerlos.  :-)

Saludos!
Título: Re: Menús con PIC
Publicado por: Meta en 15 de Enero de 2008, 11:25:57
Pues, creo que esos menú lo hace la BIOS internalmente, y lo muestra con una tarjeta gráfica integrada no en el Bios pero si en la placa base. Porque la placa base es controlada por la BIOS. Hablo de lo que creo.
Título: Re: Menús con PIC
Publicado por: RedPic en 15 de Enero de 2008, 11:40:07
Somos valientes y hablamos de oídas. Y si hay que decir alguna insensatez se dice y en paz que para eso estamos.

Si a un PC le quitas el procesador la BIOS sirve exactamente para usarla de pisapapeles.

La BIOS no es un procesador. Una BIOS es una ROM con un el primer programa que debe cargarse en la RAM y ser ejecutado por el Procesador.

Ese "firmware" es capaz de hacer manejar por parte del Procesador los periféricos básicos y sus configuraciones mínimas, no de la Placa Base sino de todo aquel Hardware que necesite el Procesador para ponerse en marcha, así ese mínimo programa le dice a la CPU como usar el teclado, la tarjeta gráfica en su mínima expresión, sea ésta integrada en la PB o a través del AGP o de un PCI o por inspiración divina, y sobre todo el Disco Duro donde está almacenado el sistema operativo que ha de arrancar. Nada más (y nada menos).

Resumiendo: La BIOS tiene el primer programa a ejecutar por la CPU.

El procedimiento general es: Le llega corriente a la CPU, ésta direcciona la BIOS, copia el programa que contiene en la RAM y lo ejecuta. Para cada conjunción de Placa Base/Procesador/Periféricos hay una BIOS especial.

http://es.wikipedia.org/wiki/BIOS

Hasta luegoooo.
Título: Re: Menús con PIC
Publicado por: aitopes en 15 de Enero de 2008, 11:41:32
Te repito, el BIOS no es mas que una memoria, una EEPROM o algun otro tipo de ROM. Solo contiene un lindo monton de 0 y 1 dentro. Todo el resto del ordenador es el que te dibuja los menues, exibiendo los datos que puedan estar almacendados en ese chip ( tamaño del disco duro, etc).

Mira que dice la Wikipedia:

"El sistema Básico de entrada/salida Basic Input-Output System (BIOS) es un código de interfaz que localiza y carga el sistema operativo en la RAM; es un software muy básico instalado en la placa base que permite que ésta cumpla su cometido. Proporciona la comunicación de bajo nivel, y el funcionamiento y configuración del hardware del sistema que, como mínimo, maneja el teclado y proporciona salida básica (emitiendo pitidos normalizados por el altavoz del ordenador si se producen fallos) durante el arranque. El BIOS usualmente está escrito en lenguaje ensamblador. El primer término BIOS apareció en el sistema operativo CP/M, y describe la parte de CP/M que se ejecutaba durante el arranque y que iba unida directamente al hardware (las máquinas de CP/M usualmente tenían un simple cargador arrancable en la ROM, y nada más). La mayoría de las versiones de MS-DOS tienen un archivo llamado "IBMBIO.COM" o "IO.SYS" que es análogo al CP/M BIOS.

En los primeros sistemas operativos para PC (como el DOS), el BIOS todavía permanecía activo tras el arranque y funcionamiento del sistema operativo. El acceso a dispositivos como la disquetera y el disco duro se hacían a través del BIOS. Sin embargo, los sistemas operativos SO más modernos realizan estas tareas por sí mismos, sin necesidad de llamadas a las rutinas del BIOS.

Al encender el ordenador, el BIOS se carga automáticamente en la memoria principal y se ejecuta desde ahí por el procesador (aunque en algunos casos el procesador ejecuta la BIOS leyéndola directamente desde la ROM que la contiene), cuando realiza una rutina de verificación e inicialización de los componentes presentes en la computadora, a través de un proceso denominado POST (Power On Self Test). Al finalizar esta fase busca el código de inicio del sistema operativo (bootstrap) en algunos de los dispositivos de memoria secundaria presentes, lo carga en memoria y transfiere el control de la computadora a éste.

Se puede resumir diciendo que el BIOS es el firmware presente en computadoras IBM PC y compatibles, que contiene las instrucciones más elementales para el funcionamiento de las mismas por incluir rutinas básicas de control de los dispositivos de entrada y salida. Está almacenado en un chip de memoria ROM o Flash, situado en la placa base de la computadora. Este chip suele denominarse en femenino "la BIOS", pues se refiere a una memoria (femenino) concreta; aunque para referirnos al contenido, lo correcto es hacerlo en masculino "el BIOS", ya que nos estamos refiriendo a un sistema (masculino) de entrada/salida."

Sigue...en http://es.wikipedia.org/wiki/BIOS
Título: Re: Menús con PIC
Publicado por: aitopes en 15 de Enero de 2008, 11:44:43
http://es.wikipedia.org/wiki/BIOS

Ja! Leimos lo mismo, al mismo tiempo! :)
Título: Re: Menús con PIC
Publicado por: reiniertl en 15 de Enero de 2008, 15:47:20
Meta antes de hablar sin saber lo que se dice, primero hay que leer mucho y orientarse.

Creo que las respuestas de nuestros amigos han sido más que correctas, sólo basta que no les ofendas con respuestas un poco traídas por los pelos de tu parte.

Saludos
Reinier
Título: Re: Menús con PIC
Publicado por: Meta en 15 de Enero de 2008, 17:02:11
Tranqui hombre, respeto tu opinión. Además, me puedo equivocar. Lo de la electró0nica, soy electrónico y si te digo que no recuerdo muchos cosas porque no las doy desde hace mas de ocho años que no lo practico y se me ha olvidado. Ahora, recordé de repente esa pregunta básica de la electrónica. En fin, me volví a leer esos libros de antes y sigo haciendolo. Lo que hago en al empresa es reparar aparatos que no hace falta que haga la tabla de la verdad con TTL, esas cosas y formulitas raras ya me pasó la época.

En cuanto al comportamiento, si lo dices por el tema de la Universidad o otra cosa, si he molestado a alguien, le pido perdón.

Pues es curioso, ya que estaba con un colega a comprar componentes electrónicos, estábamos hablando de la BIOS.
Título: Re: Menús con PIC
Publicado por: RedPic en 15 de Enero de 2008, 17:36:13
Lo que algunos (Sispic) son capaces de hacer con un PIC (gordo) y una VGA en este Foro:

http://www.todopic.com.ar/foros/index.php?topic=14648.msg89686#msg89686

(http://www.winpic800.com/proyectos/ds_vga_gen/vga_640_480_con2.jpg)

Título: Re: Menús con PIC
Publicado por: Cryn en 16 de Enero de 2008, 17:57:04
 :shock: muy buena imagen, segun el link esta hecho con un dsPIC, cierto?
Título: Re: Menús con PIC
Publicado por: RedPic en 16 de Enero de 2008, 19:16:25
:shock: muy buena imagen, segun el link esta hecho con un dsPIC, cierto?

Si, creo que Sisco lo hizo con un 24H.
Título: Re: Menús con PIC
Publicado por: maunix en 16 de Enero de 2008, 19:35:08
:shock: muy buena imagen, segun el link esta hecho con un dsPIC, cierto?

Si, creo que Sisco lo hizo con un 24H.

Diego, un 24H no es un dsPIC, sino un PIC24.  :) :)  Tal vez te hayas mareado después de jugar tanto con tu nuevo kit.  :mrgreen: :mrgreen:
Título: Re: Menús con PIC
Publicado por: Meta en 16 de Enero de 2008, 19:36:04
Las letras se ven muy bien, sin distorsión de imagen ni nada.
Título: Re: Menús con PIC
Publicado por: RedPic en 16 de Enero de 2008, 19:37:04
La verdad es que sigo confuso (la noche me confunde) y meto en el mismo saco los 24H los 30F y los 33FJ ...  :D :D :D
Título: Re: Menús con PIC
Publicado por: maunix en 16 de Enero de 2008, 20:21:51
La verdad es que sigo confuso (la noche me confunde) y meto en el mismo saco los 24H los 30F y los 33FJ ...  :D :D :D

Jaja, mientras cuando los tengas que soldar los sueldes bien...  :lol: :lol: :lol:

Título: Re: Menús con PIC
Publicado por: Sispic en 19 de Enero de 2008, 07:26:18
(http://www.winpic800.com/proyectos/ds_vga_gen/vga_320_240_ram.jpg)

Todo en un solo chip .

Esta es de 320x240 con un 33F y 2 colorines , puede llegar a 16 colores pero ya con ram externa .
para llegar a 640x480 usé el modulo spi  :D , mientras envia los 16bits da tiempo para pillar los nuevos valores a cargar,le , aunque todo al limite pobre .

Haver si saco un rato y pongo un ejemplo .

Título: Re: Menús con PIC
Publicado por: Meta en 19 de Enero de 2008, 12:23:58
Esto si que es una obra. ¿Ves como se puede hacer estas cosas? Lo que no sabía que chupa muchos recursos.
Título: Re: Menús con PIC
Publicado por: Sispic en 19 de Enero de 2008, 13:25:13
Claro , cada cacharrito llega hasta donde llega , con un 16f84 tambien se puede generar video aunque con menos pixels .
Título: Re: Menús con PIC
Publicado por: Cryn en 19 de Enero de 2008, 15:58:26
es una sanguijuela, chupa muhco :D

pero ha qeudado muy linda la imagen que has conseguido sispic, yo quiero ver los detalles :mrgreen:

un saludo
Título: Re: Menús con PIC
Publicado por: Meta en 19 de Enero de 2008, 17:10:42
Yo quiero ver si hace un tutorial  sobre esto de poner imágenes a los tv para todos aprender y futuros visitantes.