martes, 9 de agosto de 2016

PROGRAMACION DE UN MICROCONTROLADOR

Las memorias tradicionales como los 24CXX son mas que conocidas y utilizan el protoclo I2C, y las primeras iniciales son faciles de reconocer por empezar con 24xx, de igual forma sucede en las memorias SPI que vienen con las siglas 25xx, Que utilizan protocolo SPI, y son faciles de reconocer por las primeras iniciales.
Las memorias I2C
24C01.....................1Kb
24C02.....................2kb
24C04.....................4kb
24C08.....................8kb
24C16.....................16kb
Donde el menor jamas reemplazo al superior, pero si el superior al menor , siendo asi perfectamente reemplazable
Las memorias SPI
W25P10.................128kb
W25P2O.................256kb
W25X40AL..............512kb
A25L80P................1M
W25P16.................2M
W25Q32BV ............4M
W25X64.................8M
W25Q128BV...........16M ,etc

Para reprogramar memoria EEPROM o mi controlador para restaurar sus funciones, es necesario extraerlos, para ello:
1.- Coloca en la base del programador universal el circuito integrado, sino tiene la forma de la base utiliza un adaptador, baja la palanca de la base una vez que el circuito este acoplado, después de conecta el programador universal a la computadora. Antes de programar necesitas encontrar el código que se graba en el circuito integrado por lo que tendras que buscarlo en internet  con los siguientes datos:
Fabricante
Numero de serie del producto
Nombre del circuito integrado
Encaso de no encontrar el código de programación debes cambiar el circuito por uno nuevo.
Una vez encontrado el archivo punto .bin o . hex , lo debes cargar al dispositivo siguiendo estos pasos:
1.-  seleccionar el dispositivo a programar dando click en select ic.
2.- Da clict sobre el icono del folder que se llama open file, al cargar el archivo podrás ver en el área de trabajo el cambio en la información de las direcciones de memoria,
3.-da click en información para ver la forma correcta de colocar el circuito integrado en la base
4.- da click en el icono del circuito integrado con una p después da click en botón progran ,
5.- verifica que la programación haya sido cargada en el dispositivo dando click en el circuito integrado marcado con una r, se deben mostrar las localidades de memoria
CAMBIO DE UN MICROCONTROLADOR
En las tarjera de control se presentan dos tipo de sujeción de circuito integrados,
Truehole: Son aquellos circuitos que atraviesan la tarjeta de control y se suelda de lado contrario de donde se encuentra el nombre del chit.
SMD: No atraviesan la tarjeta de control y se sueldan del mismo lado donde se encuentra el nombre del chip.
Para desoldar los circuitos truehole, coloca pasta en la soldadura que une los pines con la tarjeta , coloca el cautin en un ángulo de cuarentaicinco grados cuando la soldadura se derrita, toma el soldador de succión.
Para desoldar SMD, colocar la pistola de aire caliente a una temperatura de 400 grados centígrados, aplica flux en los pines de circuito integrado de manera uniforme, activa la pistola de aire caliente con movimientos circulares.



Los amplificadores de audio tienen dos transformadores, uno de potencia o alimentación y otro de alta impedancia para conectar las bocinas.
Para verificar que un transformador está funcionando se realiza una prueba de continuidad con el milímetro en cada lado del transformador, en cada lado el milímetro debe emitir un sonido en caso de que no lo haga indica que el transformador tiene una falla y es preciso cambiarlo.
La prueba de voltaje, mide los voltajes de corriente alterna en cada lado y verifica estos con el manual


¿QUE ES UNA MEMORIA EEPROM?

Es importante que todo técnico tenga conocimiento de este componente llamado EEPROM, ya sea su funcionamiento, característico, por qué se alteran, como se malogran, las causas de alteración, como evitar que se malogren.
Estos dispositivos vienen en todos los aparatos electrónicos de última generación es por ellos de la importancia de estos circuitos integrados. Para los que no están familiarizados con estos eeproms, son dispositivos programados, van junto al Procesador y, se usan diferente software para su grabación, el más usado para los tv era el Ponyprogram2000. Era un programa muy versátil, fácil de usar, estaba en varios idiomas, pero la única desventaja era, que su interface se hacía por el puerto COM1 y VGA y en estos tiempos las PC ya no vienen con estos puertos.
Su tarjeta electrónica trabajaba con 8v por tal motivo no se podía adaptar al USB ya que estos conectores solo son de 5v.
En los primeros televisores que llegaron con esta tecnología se podían apreciar el código 24c02, en el solo se podía grabar algunos comandos que le servían al microprocesador para realizar funciones y esas solo eran las básicas como: volumen, canales, programación, color, reloj, y algunos más que hoy en día se han mejorado en muchas funciones más.
eeprom_1A unos años más se mejoró y amplió las funciones de todos los tv, por tal motivo se tuvo que aumentar el espacio de estos eeprom y es cuando empezaron a llegar estas memorias con otros códigos como el 24c04, 2408 y por el último los 24c16.
Cuando los televisores llegaban al taller por muchas fallas como: fallas en el volumen como el Samsung que llegaban con el indicador display en alto volumen y por más que tratabas de bajar, no se podía. Solo bastaba con cambiar la memoria en blanco y se solucionaba esta falla. Así como estas fallas era muy común solucionar solo con sustituir este componente.

 eeprom_2Dentro de la modernidad y las mejoras de los televisores se incluía reducir el tamaño de estos dispositivos.
En la imagen de la izquierda podemos ver un "eeprom" de la misma numeración que la que se colocaban por la parte de encima de las tarjetas, estos venían por la parte baja de las placas y eran del tipo SMD (Surface Mount Device). Eran circuitos integrados soldados en la misma placa... los TV Panasonic fueron los primeros en donde llegaron este tipo de integrados, pero realmente no se si fueron ellos los primeros en usar esta tecnología.
Como podrán ver hay mucho que saber de estos dispositivos es por ello que es necesario que vean este archivo sobre los EEPROM. Aparte de este informe, también les adjunto este otro sobre problemas en los tv y que se incluía a esta memoria como el principal causante de ello. FALLAS DE MEMORIAS EEPROM EN TV DIGITAL (PDF)

Tip: Para quienes que no tienen el conocimiento, los EEPROM smd pegados al impreso se pueden reemplazar por los normales y ponerlos en un zócalo para su mejor uso, el único detalle es que la posición de las patas es al revés, esto justamente por estar debajo de la placa.
Conclusión
Con este post aclaro muchas dudas sobre algunas fallas particulares en los tv incluyendo los modernos como los Plasma, LCD, LED, ya que estos aparatos también vienen con este tipo de memorias las cuales tienen fallas similares.
Estos dispositivos no solo vienen en televisores, son muy usados también en balanzas, equipos y cuanto aparato electrónico que necesite de otras opciones para su mejor desempeño.

Antes que nada, deberías saber que no es recomendado actualizar la BIOS, a menos que esté fallando. 
El método explicado más adelante es arriesgado. Yo ya lo he utilizado 3 veces, pero los que quieran seguirlo deben saber del riesgo al que se exponen. El principal riesgo es el de arruinar una segunda placa base además de aquella a la que ya arruinaste la BIOS. 

1. ¿Qué es la BIOS?

La BIOS es el programa (guardado en un chip de memoria similar a una memoria flash) que permite iniciar el PC. Es el primer programa ejecutado por el procesador al iniciar el PC y que pasa el control al sistema operativo, luego ya no es utilizado. De aquí que si flsheaste mal esta memoria, tu PC no iniciará. 


http://static.commentcamarche.net/es.ccm.net/faq/images/19055-bios-s-.png


No debemos confundir esto con el SETUP de la BIOS, que permite modificar ciertos parámetros del inicio. En el caso de que se cometan errores al configurar la BIOS, bastará con reinicializar los parámetros, ver: 
Olvidé la contraseña de la BIOS – Reinicializar la BIOS 

2. Lo que debes saber antes de flashear la BIOS

Por lo general los programas para flashear permiten hacer una copia de seguridad de la BIOS. Es muy importante hacer esta copia de seguridad, ya que en caso de algún error al momento de flashear la BIOS, sólo este fichero puede salvar tu PC! 

3. Los sistemas de recuperación

Algunas placas vienen equipadas con sistemas que permiten restaurar una copia de seguridad de la BIOS, grabando el fichero en un CD o en un disquete. Otras placas poseen 2 BIOS: la que podemos modificar, y otra que es utilizada en caso de problemas. Lee atentamente las instrucciones en el manual de tu placa base para que puedas utilizar estos sistemas. 

Ejemplos: 
Asus Crashfree BIOS 
En las placas ASUS, este sistema permite detectar una BIOS defectuosa. Cuando esto suceda, tan solo debes meter el fichero de la BIOS en un CD o disquete, e insertarlo en la unidad de lectura. El CD que viene con la placa base contiene el fichero en cuestión. El sistema flashea automáticamente la BIOS con el fichero encontrado y la placa base es reparada! 

4. Pagar para reparar

Si no tienes una copia de seguridad y tu placa no dispone del proceso de restauración, pero estás dispuesto a desembolsar algo de dinero: 
Existen sitios Web que venden BIOS ya programados para placas bases. Aquí lo único que tienes que hacer es comprar la BIOS en estos sitios, y recibirás un nuevo chip que reemplazará al antiguo de tu placa base. 

5. Recurrir a los amigos para repararla

Si no tienes dinero y haz hecho una copia de seguridad, pero tu placa no tiene el sistema de restauración:
·         a) Tienes un amigo electrónico: Pídele que extraiga el chip de la BIOS de la placa base, y que la reprograme con un programador de EEPROM y con tu fichero de respaldo de la BIOS. Seguro que el sabrá hacerlo.
·         b) No tienes quien reprograme la BIOS, pero tienes otro PC:

Este era mi caso. La solución que presentaré es arriesgada por lo que debe ser llevada a cabo con precaución. 

Al primer PC, en el que actualizaste mal la BIOS, lo llamaremos A. Al otro lo llamaremos B. Llamaremos BIOS A, a la memoria (BIOS) proveniente de la placa base del PC A,… 

La operación consiste en utilizar el PC B como programador para la BIOS A. Por lo tanto, vamos a extraer cuidadosamente la BIOS A de su placa base, y también la BIOS B. Vamos a pasar un cable entre las patas de la BIOS B, que ataremos a un anillo. Reposamos la BIOS B sobre su soporte, pero sin conectarlo completamente. Si llegas a iniciar el PC B, carga el programa para flashear, si no, presiona un poco más la BIOS y vuelve a intentar (todos los contactos deben estar buenos). 

Una vez iniciado el PC B, ya no hay necesidad de acceder a la BIOS. Entonces la retiraremos, con el PC encendido. No es recomendado ni prudente, pero lo haremos teniendo cuidado de no hacer corto circuito…ahora vamos a poner la BIOS A en la placa B, siempre teniendo mucho cuidado. En cambio, está vez lo conectas completamente en el conector. 
Procede a flashear esta BIOS con la BIOS de respaldo de A, pero con el programa de programación de B. 
Seguramente el PC te advertirá que la BIOS no es compatible, que puedes sobrescribir la placa base…esto es lo que queremos: un programa que funcione sobre otra placa base. Por lo general siempre existe una opción en estos programas para forzar la programación. Hazlo, y haz una verificación de la programación. 

Luego, apaga el PC y vuelve a poner cada BIOS en su placa base original. Los 2 PCs deberían iniciar sin problemas. 

Nota: en algunas placas, la BIOS está soldada. No es recomendado el desoldado de circuitos electrónicos a aquellos que no tienen experiencia en esto.
Hola como estas yo tambienme compre un programador, no el que yo queria pero igual sirve, te digo que grabar memorias bios plcc32 es algo muy complicado porque despues de romperme la cabeza buscando informacion descubri que las memorias estan protegidas contra escritura, hay un voltaje que deshabilita esta opcion para que la puedas borrar y nuevamente para que la puedas escribir aunque no puedo lograr todavia desprotegerla pero en eso estoy, que programador que compraste? 
Saludos 
Alejandro

willem EPROM
02/12/2010 10:07PM
Hola a todos, compre un programador y necesitaria un poco de hayuda de como utilizarlo, lo que mas me intereza es como leer, programar, flashear una memoria bios. alguien me podria dar una buena mano, gracias.
¿Sabes la respuesta?Responder
20/12/2010 10:57AM
Hola como estas yo tambienme compre un programador, no el que yo queria pero igual sirve, te digo que grabar memorias bios plcc32 es algo muy complicado porque despues de romperme la cabeza buscando informacion descubri que las memorias estan protegidas contra escritura, hay un voltaje que deshabilita esta opcion para que la puedas borrar y nuevamente para que la puedas escribir aunque no puedo lograr todavia desprotegerla pero en eso estoy, que programador que compraste?
Saludos
Alejandro
ASISTIÓ A LA SOLUCIÓN
28/12/2010 10:37PM
mira aca te dejo un dibujo:

el soft este es el PCB 5.0c eprom

donde dice device buscas el tipo de memoria a colocar y ahi te marcara como tienen que ir las llaves en tu programador


ahora alejandro respecto a lo que comentas me pasa lo mismo no me deja grabar ese tipo de memorias, pero si le hago un backup antes, si me hace un archivo bin que luego puedo volver a grabar.

pero los archivos de los bios rom no me deja grabarlos y si los quiero convertir en bin tampoco me da un error de hardware. yo no se si hay que cambiar los jumper o que pasa que no me deja hacerlo. si sabes de algo avisa.

vi que hay un jumper el j9 que dice open for w39/49 pero lo saque y no pasa nada
bios pro 1.JPG  (21.76 KB)
Hola como estas, etuve probando lo que dijiste y a mi me pasa lo mismo haciendo un backup de la bios solo que me tira error antes de terminar, yo logre programar una bios pero no me sirvio, logre hacerlo cdo configure el puerto LPT1 desde la bios y lo pase de normal a bidireccional, algunos dicen que tiene que estar en bidireccional y otros dicen que en ECC o EPP, en cual probaste vos? 
Estuve hablando con un tecnico electronico que le graba memorias parecidas a las DIP pero de 8 patas a uno de los tecnicos que trabaja conmigo y me dijo que lo que hace el es muy sencillo, usa un programador mas chico que armo de la revista saber electronica, el tema que dice que el unico onconveniente que tiene por ahi es que tiene que pasar el formato a hexadecimal, entonces me suena al problema que tenemos nosotros, tal vez haya que pasar de formato .BIN a .HEX, buscando en un foro de aqui encontre esto que me parece que es por eso..
http://www.yoreparo.com/foros/reparacion_de_computadoras/113375_0.html#892832 por algo pregunta el vago.. mas tarde pruebo y veo que onda. Me parece que le estamos pegando en el palo . Saludos

Tambien pense en la configuracion de los switches, que cada llave abre o cierra el circuito a una pata o varias. pero tengo 12 pines y 12 patas... entre tantas cosas que vi en foros y que me resulto obvio es que este tipo de memorias estan protegidas electricament contra escritura y para desprotejerla tenes que aplicarle un voltaje mas alto a la pata que tiene esa funcion. lo que no se cual es el voltaje porque supuestamente se borran y escriben con 5 v pwero otros dicen que con 12v, 12.5, 13, 14, 16. tambien dicen que el programador conmuta automaticamente el voltaje a la pata que corresponda segun el modelo de memoria que elijas pro yo no encontre nisiquiera 12 v en ningun punto del programador. segun el data de tu bios las patas pueden ser la 7 la 8 ó la 23. pero no se exactamente cual, una es el bloque de proteccion y la otra habilita la escritura.
Esto es lo ultimo que encontre en un foro: importante, por eso no me borraba!!!
________________________________________
lo que voy a decir puede parecer una tonteria pero en todo el foro no he leido nada de esto y ha sido mi duda y la causa de que no me borrase ni me verificase que estaba en blanco.

lo primero que he hecho ha sido pulsar en el icono de willem para que aparezca pcb3 y asi la numeracion de los microinterruptores del programa coincidan con los del willem

y la duda que tenia era si tenia que fijarme en los microinterruptores en el cuadrito blanco o en el rojo, pues efectivamente es en el rojo!!! y yo me fijaba en el blanco, ahora me reconoce perfectamente la flash, indicandome amd y todo.

para evitar toda duda voy a decir la configuracion de los microinterruptores para am29f800
1 abajo
2 abajo
3 arriba
4 abajo
5 arriba
6 arriba
7 abajo
8 arriba
9 abajo
10 arriba
11 abajo
12 arriba

espero esta sea la causa para aquellos que supuestamente leian la flash (como yo ) pero no borraba ni verificaba blanco y menos programaba.

Probalo yo todavia no lo hice

y como configuraste el puerto lpt1 en la bios?
Hola gracias por mandarme tanto material y que lo estoy siguiendo, pero el programador mio tiene dos lugares para poner la BIOS uno es de 3 Volt y el otro de 5 volt cosa que si le pones mas corriente puede que lo quemes directamente. si con un golpe de corriente te borra lo que esta escrito en el bios, osea que, quiere decir que no esta protegido ya que sino no se borraria. para escribirlo yo veo los binarios en el eprom pero tengo miedo de cambiar numeros equivocadamente un electronico me explico como funciona pero el tambien saco el circuito de saber electronica. quede en molestarlo para que me muestre como hacer pero va a pasar un parde meses hasta que lo vea. 
Yo pase el manual del eprom a español en word pero no me lo deja mandartelo, pero quizas ya lo tengas traducido. felices fiestas de paso

Hola, perdonar que me meta en el ajo. Yo he adquirido una placa de estas, pero la mía es color negra. Se ve que es una version diferente. El caso es que ya he programado varias bios, y de momento va de cine. Hay que seleccionar el chip, y luego poner todos los suiches como lo indica el programa, y ya puedes hacer de todo. El caso es que no se si han ido más allá, pero tengo una placa ASUS P5B, la cual trae un chip de bios SOIC de 8 patas, un 25c80..... Trae la placa un conector de 5 pines, que está unido al chip este. Se ve que se programa por aquí. Ahí va la pregunta....¿Como se puede programar?. Me imagino que habrá que hacer un conector o algo por el estilo, ¿Lo teneis hecho vosotros?. Bueno, si sabeis algo del tema, me lo comentais. Gracias!! 

PD.: Aquí os dejo el link del programador que tengo yo 
http://www.virtualvillage.es/programador-universal-para-eeprom-pic-bios-pcb-5-0e-pc-006401-033.html
PROGRAMADOR PROFESIONAL DE BIOS USB DE ALTA VELOCIDAD
http://i01.i.aliimg.com/wsphoto/v0/32299491005_1/Alta-velocidad-SOFI-SP8-A-SPI-Bios-USB-programador-universal-con-IC-socket-adaptadores-3-unids.jpg
Caracteristicas:

- Programacion de alta velocidad, en promedio 3 segundos de acuerdo al Chip
- Soporta la mayoría de los Chips, un promedio de 4000, memoria flash, EEPROM, puede encontrar el modelo del chip presionando la tecla Crtl+F.
- Tamaño reducido y facil de operar.
- Fuente de alimentación desde el puerto USB, es soportado por las versiones USB 1.1 y 2.0
- El SP8-A es compatible con sistemas operativos Windows XP, Vista y 7, de 32 y 64 Bits
- Puerto de Programacion ISP, esto significa que puede progreamas directamente el CHIP sin ser desmontado.(Solo para tarjetas madres Compatibles)
- Puerto ZIP de 40 Pines de alto rendimiento.
- El hardware es capaz de detectar fallas en las conexiones del CHIP al que va ser programado.
- Proteccion contra sobre corrientes del puerto USB y fallas por ESD.
- Soporta la programación asincrónica en masa a través de la conexión de varios programadores a un Computador.
- Incluye el Adapatador para Chip Bios de Laptops Formato SP08.
- El SP8-A detecta automaticamente al chip al ser Programado.

COMO REPROGRAMAR UNA  BIOS SOLDADA (8 SOP Y 8 PDIP) INSYDE/AMI/AWARD/PHOENIX
djwash Yo voy a comenzar a programar bios, porque es una asignatura pendiente que tengo que superar.
¿Me puedes aconsejar algún programador SPI para montar y un software para manejarlo ..?

Tengo algunos ordenadores portátiles que me temo que no vá a haber mas remedio que reprogramar bios para descartar y poder avanzar en su reparación.

Saludos.
Busca SPIPGM el programador en si es una pavada ya que lleva solo un par de resistencias al puerto LPT y toma alimentacion directo de la fuente.

El programa tambien es facil de usar es por CMD, lo mas dificil de esto es cuando no contas con el conector en el mother tenes que soldar cables o hacer un sistema que haga contacto a presion sobre el chip de BIOS.

Hola.

Este post lo hago después de pasarme un par de horas desmontando, programando bios, 
y vuelta a montar un portátil HP Pavilion DV6825es.

La cosa empezó cuando un cliente me trajo el portátil para que le instalara un Windows 7 64 bits. Todo fue perfecto (no hací­a falta hacer mucho para mejorarlo; tení­a el Vista) hasta que se me ocurrió flashearle la bios. La programación se desarrolló perfectamente hasta que lo reinicié. Pues bien, no programó la bios, le hizo una lobotomí­a (todo esto ocurre sólo cuando tienes mucho trabajo encí­ma) 
y ya os podeis imaginar lo que vino después... Probar Crisis Recovery (Floppy usb, Usb stick, etc.) para al final seguir como estaba, con un portátil muerto.

Desarmé el equipo, desoldé la bios 
y me dije, pues nada a programarla. Pero no, era demasiado fácil. Resulta que no tení­a hecho ningún programador para este chip (W25X80). En el momento del notición todaví­a retumbaba en mi cerebro "tengo que hacer un fin de semana un programador para SPI Flash por si acaso me llega algún muerto con problemas de bios". Pero claro, nunca lo hice, habí­a otras prioridades.

Total que me puse las pilas pues el tiempo era escaso 
y el cliente pasarí­a al cabo de dos dí­as.

Al final encontré un programador para este tipo de chips con muy pocos componentes (más simple que un botijo) 
yme dispuse a montarlo.

Una vez montado pude programar sin problemas el W25X80. Es perfecto para los siguientes chips: Amic A25Lxx, Eon EN25Pxx, EN25Bxx, EN25Dxx, EN25Fxx, Winbond W25Xxx, W25Qxx, SST 25LV/VF, MX25Lxxx.

Tremendamente sencillo de montar 
y funciona muy bien con cualquier Sistema operativo. Se llama ByteBlaster II ysu autor Sebastian Bartkowicz.
Para actualizar este se tiene que sacar de la placa, debes tener un programador para bios, si no tienes va hacer dificil. Lo mejor seria llevarlo a alguien que tenga este programador. En la bios debe llegar los 3 voltios de alimentacion, en el pulso de encendido de la portatil hay 3v. Si es asi casi seguro es bios sino tienes estos voltajes tu problema es otro.

http://i.imgur.com/yyvQxTX.png 

Esta es una imagen de bios es como los mosfet smd de 8 pines paro más anchos.
Estimados colegas de YoReparo, en mi poca experiencia con notebooks tuve que renegar con este problema con las CQ42, el problema es definitivamente el firmware de la BIOS, en el mejor de los casos hay que extraer el chip de la BIOS (25XX32 o 25XX16 o algo similar) y reescribir el firmware con algún programador para esta serie de chips. En otros casos hay que cambiar dicho chips, en algunos lugares los venden grabados, fíjense para que serie de procesadores vienen, los tenemos en AMD o INTEL. Yo particularmente uso un grabador que traje de afuera muy simple que se conecta directamente al USB, sirve para memorias Eprom de las series 24CXX y 25XX. Adjunto imágenes de los chips de BIOS para series AMD, Intel y una de mi bendito grabador uqe me revivió varias CQ42, exhttp://static.yoreparo.com/imagenes/subidas/20141125_093518.jpgchttp://static.yoreparo.com/imagenes/subidas/20141125_093452.jpg http://static.yoreparo.com/imagenes/subidas/20141125_093536.jpgepto 2.

SOLUCIÓN 
si no te funcionan los métodos tradicionales
(fn+esc, fn+b, fn+r, fn+esc, win+esc, win+b, etc etc etc.)

Después de haber tratado varios métodos de restauración del bios de mi netbook  benq u106e , con son con las teclas (fn+esc, fn+b, fn+r, fn+esc, win+esc, win+b, etc etc etc + un pendrive  con el bios adecuado. Y después de tener un fracaso absoluto, me dispuse a tratar de buscar alguna forma de recuperar el bios y que por supuesto no fuera exageradamente caro.

Para esto me informe cual era la memoria de la netbook y la memoria eprom en cuestión era la MX25L8005M2C-15G(8 SOP) , revisando mi pc de escritorio veo que tiene la memoria MX25L8005PC-15G    (8 PDIP)
Entonces me dispuse a buscar los respectivos datasheet  y eran exactamente las mismas características solo que en diferente encapsulado:
Anexo los datos de las mismas:
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1255x481.
http://i52.tinypic.com/501hmu.jpg

Entonces se me ocurre, la idea de  hacer un flasheo en caliente, pero por alguna razón la memoria grande de pc no aceptaba el bios, (después en mi investigación me entero que no se puede hacer esto si tienes un bios  AMI.) y otra vez estaba como en el principio; me dirijo a este foro a pedir ayuda y me dieron unas posibles soluciones.

LuisR
Soldarle la una base a la eprom y meterle la bios, eso había quedado descartado por que la bios grande no lo permitía

vercetti
Comprar una mb exacta para netbook y remplazar la memoria eprom dañada por mal flasheo (esta era mi última solución.)

Entonces me dispuse a buscar información no encontré nada en nuestro idioma, en ingles escuetas explicaciones.  Es por eso la razón que escribo la siguiente reseña.

Para esto entre tanta información  encuentro a alguien con el mismo problema
Anexo link en inglés y como lo soluciono:

http://www.electro-tech-online.com/members-lounge/100774-bios-eeprom-programming.html

Solo que el tenía una memoria de 8 mb(lap) y una de 4(pc)

En ese mismo post encontré la información de cómo hacer este magnífico programador extremadamente barato:


*ANTES DE CONSTUIR EL PROGRAMADOR FIJATE EN ESTE ENLACE SI LA MEMORIA EPROM ESTA SOPORTADA *

http://www.mediafire.com/?re4f7fhey9o6cm1



COMO CONSTRUIR UN PROGRAMADOR SPI FLASH ROM 
EN PUERTO PARALELO POR MENOS DE $50 PESOS

(RayeR's homepage/Programátor SPI FlashROM na paralelní port)
http://rayer.g6.cz/elektro/spipgm.htm

El siguiente información se entrega como es:

DIAGRAMA ORIGINAL
http://i56.tinypic.com/53pd1d.jpg

Componentes

Placa fenólica perforada 5x5 o mas grande                         $15
1 base para C.I. 8 PATAS                                                          $  5
4 resistencias 150Ω  ¼                                                    C/U   $  1
1 Capacitor  1µf 10v a 50 v
    (cualquiera entre esos voltajes pero si debe ser 1µf )
1 Plug db25 para soldar(este lo tenía así que lo recicle)     $8
1 Molex hembra (este lo tenía así que lo recicle)               
1 Molex macho  (este lo tenía así que lo recicle)               
1 cable ide 40 hilos (este lo tenía así que lo recicle)
   Solo se ocupan 6 hilos o si tienes uno similar también sirve
CAUTIN, PASTA Y SOLDADURA
--------------------------------------------------------------------------------------------------------------------
*IMPORTANTE*
3 diodos 1N4007                                                             c/u $2.00
   (Estos se colocan en serie y son para reducir el voltaje)
En el diagrama original solo menciona que el voltaje original debe der de 3.3 v y no da más pistas
Estos componentes que le agregue, es en caso de que solo tengas una fuente de 5 v sirven para
Reducir el voltaje aproximadamente entre a (3.7 y 4.5) para memorias PDID
Para  memorias SOP 8 se usan  3 pilas AAA que bajan de 4.5 v a (3.0 a 3.3)

Si tienes una fuente de poder que de exactamente los 3.3 v sáltate el paso anterior.
DIAGRAMA MODIFICADO
http://i52.tinypic.com/2cqxs7n.jpg

Después de haber de haber realizado el programador descarga en este enlace los archivos necesarios para que funcione.
http://www.megaupload.com/?d=V6UA2XJ6

EJEMPLO DE CÓMO SE DEBE PROGRAMAR UNA SPI FLASH ROM BIOS EN ESTE CASO SE TRATA DE UNA MACRONIX  MX25L8005

1.-
Identificar el bios y que esté funcionando correctamente
      SPIPGMW.EXE /i

        Spi connected to LPT port at I/O
        FlashROM JEDEC ID, type: C220014H
        Macronix MX25L800 (1 MB)
        Status = FFh (SRP:1, RES:1, TB:1, BP2:1, BP1:1, BP0:1, WEL:1, BSY:1)

2.-
Hacer backup del bios existente en la memoria (si esta malo pues no sirve de nada)
       SPIPGMW.EXE /D original.bin /d=2
       (el parametro d=2 es un delay)

3.-Hacer un desbloqueo de la eprom (desbloquea la eprom si se encontrase bloqueada)
     SPIPGMW.EXE /U /d=2

4.- Borrar la memoria eprom
       SPIPGMW.EXE /E /d=2

5.-programar la memoria eprom con la bios adecuada (preferentemente bajada del fabricante)
     SPIPGMW.EXE /P ejemplo.bin /d=2
     (acepta cualquier extensión .bin/.fd/.rom/.whp.)

6.- hacer un backup de la bios  que introducimos en el paso 5
     SPIPGMW /D verificar.bin /d=2
     El motivo de hacer un backup de la bios nuevamente es comparar el hash.

ERRORES COMUNES EN LA PROGRAMACION

 La hora de querer identificar nuestra memoria nos da

 FlashROM JEDEC ID je type: FFFFFFh  parity error
generalemente error de hardware, puede ser voltaje alto o  bajo, algún corto, cables muy largos,eprom  bloqueado , resistencias defectuosas, capacitor defectuso.

FlashROM  JEDEC ID je type: xxxxxxx  parity error
cuando aparece un numero distinto a FFFFFh como en el ejemplo anterior se trata de voltaje alto.

FlashROM  JEDEC ID je type: xxxxxxx
Unknown Manufacturer

Sin el “FFFFFFh”y  sin “parity error” es voltaje alto pero programable, te pedirá que introduzcas el valor de la eprom manualmente  (ejemplo Para la MX25L8005PC-15G  es 1 mb se introducen 1024) enseguida comenzara a programar



FINALMENTE AGREGO UNAS FOTOGRAFÍAS DE  LA CONSTRUCCIÓN DEL PROGRAMADOR  Y LA PROGRAMACIÓN DE LA MEMORIA
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i51.tinypic.com/t6pllh.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i52.tinypic.com/15r12xu.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i55.tinypic.com/zx33fc.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i55.tinypic.com/avpsi8.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i56.tinypic.com/fy0861.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i51.tinypic.com/23leivs.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i52.tinypic.com/34ez4m1.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i55.tinypic.com/fdya1i.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i51.tinypic.com/xelseb.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i51.tinypic.com/2mg17a.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i51.tinypic.com/2nq447q.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
http://i52.tinypic.com/2lbj6vb.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1280x1024.
http://i53.tinypic.com/2jchikj.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1280x1024.
http://i52.tinypic.com/24qjpl2.jpg

http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1280x1024.
http://i56.tinypic.com/262a9ht.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1280x1024.
http://i54.tinypic.com/e88m7l.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1280x1024.
http://i54.tinypic.com/scwc1w.jpg
http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1280x1024.

http://i55.tinypic.com/2zebbcy.jpg
Solucionar Mal Flasheo de Bios actuales

En máquinas actuales es común encontrar EEPROM BIOS en encapsulados tipo 8 SOP u 8 PDIP los cuales contiene al firmware UEFI, debido a su sencilla configuración, dichos chips han reducido significativamente la dificultad que representaba volver a programarlos o sustituirlos en caso de un mal flasheo. 
Solucionar Mal Flasheo de Bios actuales
-Dichos chips no son exclusivos para pc y portátiles, también los hay en tarjetas gráficas, módems, routers, tablets, etc. Dichos dispositivos tambien usan un firmware que se puede actualizar o reprogramar. 

Si tu chip es un PLCC cuadrado de los antiguos, me temo que la información de este post no te va a servir, aunque existen alternativas, hay que tomar en cuenta los costos del programador Willem con los de una motherboard nueva, aun así todavía es posible recuperar esas bios mediante otros métodos, como el hot swapping los cuales no explicare de momento en este post. 
bios 
El hardware está construido sobre un DB-25, conocido comúnmente por todos como puerto paralelo, LPT o de impresora. Los materiales empleados son pocos y además económicos. En mi caso no tuve que comprar casi nada ya que disponía de algunos materiales y para lo demás solo tuve que improvisar un poco http://o1.t26.net/images/big2v5.gifhttp://o1.t26.net/images/space.gif . 

El software “SPIPGM” se ejecuta en la línea de comandos de Windows CMD, símbolo de sistema o MS-DOS, también está disponible para Linux y es muy fácil de usar, requiere del programador que vamos a describir mas adelante. Usen preferentemente la última versión. En el caso del port para Windows, solo funcionara en sistemas operativos de 32 bits. 

Como su nombre lo sugiere hace uso del puerto SPI, la identificacion o presencia de dicho puerto puede llegar a ser un problema para el usuario promedio, por lo que es preferible trabajar directamente sobre el chip. 

Acá la web oficial del autor del programa: 
http://rayer.g6.cz/programm/programe.htm#SPIPGM 

Al bajar el software de la página oficial obtendrán un archivo zip con el programa y un archivo readme el cual contiene entre otras cosas, la lista completa de chips soportados. 
Acá la lista de chips soportados por el momento:


AMIC: 
A25L05PU/PT (64kB)
 
A25L10PU/PT (128kB)
 
A25L20PU/PT (256kB)
 
A25L40PU/PT (512kB)
 
A25L80PU/PT (1MB)
 
A25L16PU/PT (2MB)
 
A25L32PU/PT (4MB)
 
A25L64PU/PT (8MB)
 
A25L512 (64kB)
 
A25L010 (128kB)
 
A25L020 (256kB)
 
A25L040 (512kB)
 
A25L080 (1MB) - tested OK
 

Atmel:
 
AT25F512B (64kB)
 
AT25F1024A (128kB) - this chip may be supported but a tester is needed
 
AT25DF021 (256kB)
 
AT26DF041 (512kB)
 
AT25DF041A (512kB)
 
AT26F004 (512kB) - tested OK
 
AT26DF081 (1MB)
 
AT25/26DF081A (1MB)
 
AT25DF081 (1MB)
 
AT26DF161 (1MB)
 
AT26DF161A (2MB)
 
AT25DF161 (2MB)
 
AT25DQ161 (2MB)
 
AT25/26DF321 (4MB)
 
AT25DF321A (4MB)
 
AT25DQ321A (4MB)
 
AT25DF641(A) (8MB)
 

EON:
 
EN25B10 (128kB)
 
EN25B20 (256kB)
 
EN25B40(T) (512kB)
 
EN25B80 (1MB)
 
EN25B16 (2MB)
 
EN25P32 (4MB)
 
EN25P64 (8MB)
 
EN25P128 (16MB)
 
EN25Q40 (512kB)
 
EN25Q80 (1MB)
 
EN25Q16 (2MB)
 
EN25Q32 (4MB)
 
EN25Q64 (8MB)
 
EN25Q128 (16MB)
 
EN25F10 (128kB)
 
EN25F20 (256kB)
 
EN25F40 (512kB)
 
EN25F80 (1MB) - tested OK
 
EN25F16 (2MB)
 
EN25F32 (4MB)
 
EN25F64 (8MB)
 
EN25F128 (16MB)
 
EN25T10 (128kB)
 
EN25T20 (256kB)
 
EN25T40 (512kB)
 
EN25T80 (1MB)
 
EN25T16 (2MB)
 
EN25T32 (4MB)
 
EN25T64 (8MB)
 
EN25QH16 (2MB)
 
EN25QH32 (4MB) - tested OK
 
EN25QH64 (8MB)
 
EN25QH128 (16MB)
 
EN25QH256 (32MB)
 

ESMT:
 
F25L004A (512kB) - tested OK
 
F25L008A/08PA (1MB)
 
F25L016A/16PA (2MB)
 
F25L32PA (4MB)
 
F25L64PA (8MB)
 
F25S04PA (512kB)
 
F25L08PA (1MB)
 
F25L16QA (2MB)
 
F25L32QA (4MB)
 
F25L64QA (8MB)
 

GigaDevice:
 
GD25Q512 (64kB)
 
GD25Q10 (128kB)
 
GD25Q20 (256kB)
 
GD25Q40 (512kB)
 
GD25Q80 (1MB)
 
GD25Q16 (2MB) - tested OK
 
GD25Q32 (4MB) - tested OK
 
GD25Q64 (8MB)
 

Intel:
 
QB25F016S33B8 (2MB)
 
QB25F032S33B8 (4MB)
 
QB25F064S33B8 (8MB)
 

Macronix:
 
MX25L512E/25V512 (64kB)
 
MX25L5121E (64kB)
 
MX25U5121E (64kB)
 
MX25L1005/1006/1025/1026E/25V1006E (128kB) - tested OK
 
MX25L1021E (128kB)
 
MX25U1001E (128kB)
 
MX25L2005/2006/2025/2026E/25V2006 (256kB)
 
MX25U2033E (256kB)
 
MX25L4005/4006/4025/4026/25V4005/4006E (512kB)
 
MX25U4033/4035/25V4033/4035 (512kB)
 
MX25L8005/8006/8008/8035/8036/8073/8075E (1MB) - tested OK
 
MX25U8033/8035E (1MB)
 
MX25V8035 (1MB)
 
MX25L1605/1606/1608E (2MB) - tested OK
 
MX25L1633/1635/1636/1673/1675E (2MB)
 
MX25L1635/1636E (2MB)
 
MX25U1635 (2MB)
 
MX25L3205/3206/3208/3233/3235/3273/3275E (4MB)
 
MX25U3235/25L3239E (4MB)
 
MX25L3225/3236/3237D (4MB)
 
MX25L6405/6406/6408/6435/6436/6445/6465/6473/6475E (8MB) - tested OK
 
MX25U6435/25L6439E (8MB) - tested OK
 
MX25L12835/12836/12839/12845/12865/12873/12875F (16MB) - tested OK
 
MX25U12835F (16MB)
 
MX25L25635/25639/25735/25835E (32MB)
 
MX25U25635F (32MB)
 
MX66L51235F/51245G (64MB)
 
MX66U51235F (64MB)
 
MX66L1G45G (128MB)
 

PMC:
 
Pm25LD512 (64kB) - tested OK
 
Pm25LD010 (128kB) - tested OK
 
Pm25LD020 (256kB)
 
Pm25LV512(A) (64kB) - tested OK
 
Pm25LV010(AB) (128kB) - tested OK
 
Pm25LV020 (256kB)
 
Pm25LV040 (512kB) - tested OK
 
Pm25LV080B (1MB)
 
Pm25LV016B (2MB)
 
Pm25LV032B (4MB)
 
Pm25LV064B (8MB)
 
*Pm25LQ032C (4MB)
 

Spansion:
 
S25FL001A (128kB)
 
S25FL002A (256kB)
 
S25FL004A (512kB)
 
S25FL008A (1MB)
 
S25FL016A (2MB)
 
S25FL032A/P (4MB) - tested OK
 
S25FL064A/P (8MB)
 
S25FL128P/S/129P/S (16MB) - tested OK
 
S25FL256S (32MB)
 
S25FL512S (64MB)
 
S25FL01GS (128MB)
 

ST Microelectronic/Numonyx:
 
M25P05 (64kB)
 
M25P10 (128kB)
 
M25P10AV (128kB) - tested OK
 
M25P20 (256kB)
 
M25P40 (512kB)
 
M25P80 (1MB)
 
M25P16 (2MB)
 
M25P32 (4MB) - tested OK
 
M25P64 (8MB)
 
M25P128 (16MB)
 
M45PE10 (128kB)
 
M45PE20 (256kB)
 
M45PE40 (512kB)
 
M45PE80 (1MB)
 
M45PE16 (2MB)
 
M25PX80 (1MB)
 
M25PX16 (2MB)
 
M25PX32 (4MB)
 
M25PX64 (8MB)
 
N25Q032A13E (4MB)
 
N25Q032A11E (4MB)
 
N25Q064A13E (8MB)
 
N25Q064A11E (8MB)
 
N25Q128A13E (16MB)
 
N25Q128A11E (16MB)
 
N25Q256A13E (32MB)
 
N25Q256A11E (32MB)
 
N25Q512A13G (64MB)
 
N25Q512A11G (64MB)
 
N25Q00AA13GB (128MB)
 

SST:
 
SST25VF512(B) (64kB) - tested OK
 
SST25VF010(B) (128kB) - tested OK
 
SST25VF020(B) (256kB)
 
SST25VF040(B) (512kB)
 
SST25VF080(B) (1MB) - tested OK
 
SST25VF016(B) (2MB) - tested OK
 
SST25VF032(B) (4MB)
 
SST25VF064C (8MB)
 
SST25VF128(B) (16MB)
 
SST26VF016 (2MB)
 
SST26VF032 (4MB)
 
SST26VF064 (8MB)
 

Winbond:
 
W25Q10B (128kB)
 
W25Q20BV (256kB)
 
W25Q40BV (512kB)
 
W25Q80BV (1MB) - tested OK
 
W25Q16BV (2MB) - tested OK
 
W25Q32BV (4MB) - tested OK
 
W25Q64BV/FV (8MB) - tested OK
 
W25Q128BV/FV (16MB)
 
W25Q256FV (32MB)
 
W25Q16FW 1,8V (2MB)
 
W25Q32FW 1,8V (4MB)
 
W25Q64FW 1,8V (8MB)
 
W25Q128FW 1,8V (16MB)
 
W25X10 (128kB)
 
W25X20 (256kB)
 
W25X40 (512kB)
 
W25X80 (1MB) - tested OK
 
W25X16 (2MB)
 
W25X32 (4MB) - tested OK
 
W25X64 (8MB)
 
Para saber si tu chip es compatible, tendrás que fijarte en el número de serie que viene impreso en la superficie del chip y buscarlo en la lista, por ejemplo el que usaba mi placa base Gigabyte F2A55M-S1 era un MX25L6406E de Macronix el cual aparece como soportado por el programa y en el datasheet (hoja de datos) la descripción de las funciones de cada pin coincide con las del circuito programador. 
flashear
Una vez comprobado que tu chip es compatible deberas tener a la mano la bios original que traía de fábrica, por ejemplo una copia de respaldo de la bios, si no se cuenta con una pueden ir a la web del fabricante de la motherboard y bajar la primera versión de la bios para su sistema, no recomiendo usar la última versión directamente ya que en muchos casos las actualizaciones son acumulativas y requieren que esté presente la bios que viene por defecto. 

Acá el diagrama del circuito en cuestión: 
firmware 
El puerto paralelo desafortunadamente ha caído en desuso y es por eso que ya no la incluyen en placas madre modernas, por lo que tendrán que usar temporalmente un placa viejita o quizás les funcione sobre un adaptador USB-LPT o alguna tarjeta controladora PCI (No lo he comprobado). 
programar 

Aquí la lista completa de materiales: 
1 Capacitor electrolítico de 1µf de cualquier voltaje preferentemente a 16v
4 Resistencias de 150Ω
Un conector DB-25 macho
6 cables delgados (25AWG) de no más de 10cm de largo + 2 cables algo más gruesos para la alimentación.

2 pilas AAA de 1.5 v o 1 pila de litio 3v tipo CR2032 (opcional).
2 Bases para circuito integrado de 8 pines (opcional).
1 placa de circuito impreso (opcional)
 

Podrias usar un capacitor de 1000µf en vez de uno de 1µf, yo me decidí por usar uno de 1µf ya que la tensión y voltaje de alimentación producidos por las pilas no son muy elevados pero si vas a emplear una fuente de alimentación deberías optar por el de 1000 µf para así reducir lo mejor posible errores de escritura o lectura. 
Windows 
También se pueden emplar los 3.3v sugeridos por el circuito, siendo así se debe reducir el voltaje de 5v que viene de la fuente de alimentación, aunque la mayoría de las veces no serán necesarios los 3.3v exactos, ya que estos chips puede operar con voltajes que van desde los 2.7v hasta los 3.6v según especifica la hoja de datos del fabricante. 
Linux 
Herramientas: 
Cautin de 25W 
Soldadura 
Pinzas o Alicates 
Navaja o Cutter (para pelar los cables) 


eeprom 
Bueno, como se puede observar la construcción es muy sencilla, solo se necesita un mínimo de habilidad para soldar y mucha paciencia ya que estos chips miden menos de 1 centímetro y la distancia entre pata y pata es de apenas 1.27 milímetros, para removerlo de la placa se deben calentar los cuatro pines de cada lado y palanquear cuidadosamente con un desatornillador plano, este proceso es más sencillo de hacer con un cautín de aire caliente, aunque también existen pastas especiales para remover dispositivos de montaje superficial. 

8 sop
Después de remover el chip pueden colocar una base que permita su extracción rápida, algunos le soldán cables directamente sin extraerlo de la placa base, aunque para eso hay que tener en cuenta que la tensión de alimentación podría verse afectada por los componentes que se encuentran alrededor, dicho procedimiento no sería necesario en caso de contar con un conector SPI en la placa, pero ustedes pueden hacerlo como mejor les convenga. 

8 pdip 
flashrom 
Una vez extraido el ic de la placa y colocado/soldado en el circuito ya armado, lo conectamos al puerto paralelo y procedamos a ejecutar spipgmw.exe


Los comandos a usar van en el siguiente orden: 

1) identify 

spipgmw /i 

Comprueba el correcto funcionamiento del hardware identificando el chip y al hardware, si todo va bien les tiene que aparecer un texto parecido al siguiente: 

Spi connected to LPT port at I/O 
FlashROM JEDEC ID, type: C220014H 
Macronix MX25L6406E (8 MB) 
Status = FFh (SRP:1, RES:1, TB:1, BP2:1, BP1:1, BP0:1, WEL:1, BSY:1) 

2) unlock 

spipgmw /u 

Este comando desbloquea el chip para su escritura 

3) erase 

spipgmw /e 

Este comando borra todo el contenido del chip, como seguramente los datos están corruptos no hace ninguna falta hacer un respaldo, aunque si desean crear uno escriban:spipgmw /d respaldo.bin 

4) program 

spipgmw /p biosdeejemplo.bin 

Para flashear el chip con un binario integro, soporta cualquier extensión (.bin/.fd/.rom/.whp) ya sea un respaldo o bajada de la web del fabricante, aunque ya desde el paso 3 se esta flasheado la memoria hay que tener en cuenta que la memoria eeprom tiene un número limitado de borrados, pero no es nada de lo que deban preocuparse ya que los ciclos de borrado ascienden a más de 100,000 veces. 

5) verify 

spipgmw /v biosdeejemplo.bin 

Este comando verifica que los datos escritos coincidan con la imagen original de respaldo. En caso de encontrar errores, borren la memoria y vuelvan a grabar la bios (paso 3 y 4), eso debería solucionar el problema, recuerden no interrumpir el proceso moviendo el circuito o creando interferencia. 
Por ultimo solo resta poner el chip de vuelta a la motherboard procurando colocarlo en su posición original y soldándolo bien a la placa, si lo desean pueden soldar una base por si se presenta en un futuro algún fallo similar. 

Si el sistema bootea sin problemas, ¡felicitaciones lo has conseguido! y si no, pues algo hiciste mal, si tras varios intentos no se soluciona el problema, puede que la falla se produzca por otras causas o tal vez el chip se haya dañado en una mala maniobra de extracción, si ese es el caso, estos pueden conseguirse en tiendas de electrónica o por internet con el número de serie. 


Aca les dejo algunas capturas propias: 
biosSolucionar Mal Flasheo de Bios actualesflashear


firmwareprogramarWindows



eeprom
Ya con la placa funcionando, logre actualizar mi bios a la version mas reciente usando linux y un programa llamado flashrom, a mi parecer es mas seguro de esta forma que con las utilerias que ofrecen los fabricantes. 
8 sop 
Espero que este post les sea de utilidad y les ahorre un gasto innecesario


http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.


http://www.hardwarecult.com/forum/Themes/Aa_New_Damage_v2/images/icons/assist.gif
This image has been resized. Click this bar to view the full image. The original image is sized 1600x1200.
« Last Edit: November 12, 2012, 07:14:13 PM by d3cameron »

Tutorial programación memoria flash ( o eprom, eeprom, prom, etc) + código de ejemplo para crear binarios

En esta entrada aprenderemos a crear nuestro archivo binario para poder grabarlo en memorias flash, eprom, eeprom, etc.  Las memorias que se leen o programan por I2C no valen.


Primero de todo, abriremos nuestro archivo "codigo_ejemplo.cbp" ( yo usé la IDE de codeblocks, y el compilador GCC).
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEbHPaQQvdl43GdsZnRxwTIvOy4jJjSH24JmV2ZeHN1bDOIrA9GhxwUknA3413tXV1xTT1bTLPAXeOp_kz31InQaYpov0l5edEq_mQj6mV59d6h7mSJMd9mZP5YaIC0YlcK6x_dRLB-KY/s1600/foto_000001.png


Una vez dentro, nos encontramos 3 bloques de código:

1) Declaración de variables y asignación del nombre del archivo de nuestro .bin + limpieza memoria.
2) Creación de las ordenes
3) Creación del archivo


En el código está explicado para que sirve cada parte, así cada uno puede darle el uso que más le convenga.

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgejZOrr5n9Ky5gW-royWRQU-Q_nDr2V3j9IopLNAGPUrbDfQZpELs4xZmwBSdSN5VEABxB_x6pb88sRfAa3YuNypbB-sbBrz_E5LJ7dYQScA4-j9CQMLRX995tmhiF286Y-BCrbfeoeuk/s1600/P3230010.JPG

Foto del programador a usar


https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEOIZwvNiTg0G5dqiaDpMJ8g_qwXAVc0d3dmC8vCynVJGY49Cfmqp4-WZV6FCzI-fHyV96yTCt6KjE5lUDS6UYY0w5whHGtDeUP7mOokp6UMjJjc2eWOGT6pJaQ6D7ND-3gyd1iTfRsuI/s1600/P3230012.JPG

Conectamos nuestra memoria ( en mi caso, es una Winbond, código: W29C020-90 )





Una vez compilado el archivo, conectamos nuestro programador:


https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDTRhdePgHrVlwVGZmpqXmi2tCBoHc1bN2pQjGYeTApHE6QIL6YoJpOyOwk-Z14mtPOLL4a00gvvprWJ0YLXJX02FRHdpgbP0IZfE85XLwlhWvi8Ec3sf9y0ff8ccnLZS5QHV_4SPNcHo/s1600/P3230013.JPG



Abrimos el programa de nuestro programador:

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhl9t8zedZ-uM5yUgKRzRahyphenhyphen1_dHKieeuEbDEyiIui_x9wr-qwn2NbBT46G_Tr47wYtQWAwWVcbfNt_9UPk0UdV7omdjpZU-dutl9pFd6BNOsuUCQbY1A-RfdKzJ-NlPtH0f33_tryIZSw/s1600/programador_001.png
Seleccionamos la memoria que vamos a usar:

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjn5pgTk44bMKFB-ni0hBZDC2_cer3tVSj4NXIxXbJdDn8XG9S97Gw5i5l0-ub0S4naeWGWIel5FBZXPi055kKtURMmE2WzwkQkiGsEdyhmFvZJyFRdofRTovWRxPsMo1mB-L35SEIcDsY/s1600/programador_003.png


Una vez seleccionado, buscamos el archivo binario a grabar:

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDb1rwMNwtDOgdrN2cj9VexR6mbicRT1wOX1xjDB-90K7Qn0orI3ILxeurdJeSzRl0Drwd65VANxQZ1JBMbILehyanmQCOSVdB0TR0nKouoTGdHcaIfNsmcdK8Ni0wcBpVldNuWGX3CWk/s1600/programador_002.png



Aceptamos y grabamos...


https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRzEyleIvPuHxc31nUcJVcdTrS3Zhx7J-_YoE7Rmh2ZcuWkLFiCW-n_n6L5BNb6D3jXTx4VTvbHCAFJRrv8cCX0YQEVttnbakAb0Ve-aypXXG1h3jbWajKgMLURercBiEySqjP2Ip9nMU/s1600/programador_004.png

Y listos! ya tenemos nuestro binario quemado en la memoria.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5c6Vc8zqHJnzUP_T5jH4onZSG8O3aqKRT0DvATsNfAuCJMjTAhoBcr0eTqp199TXvAxClN6nxD7bO48zmF30CxvvhguFkVwmNrxfg1ok5qFQTGlxdW2DpibkdMBX-lsOdvip3TA1NCYE/s1600/programador_005.png


Y ahora sólo falta mirar el datasheet de la memoria usada para saber cómo conectar correctamente los pines :D


Y esto es todo por hoy, nos vemos!



No hay comentarios:

Publicar un comentario