Programación Específica > Microcontroladores

 Quemar Datos Permanentemente

<< < (3/3)

© Jonathan ©:

--- Citar ---quemo en el micro el programa que guarda los datos en la eeprom,
luego debo borrar este programa, para quemar el programa principal , pero los 100 datos ya estarian en la eeprom????
--- Fin de la cita ---

Mira, no necesariamente primero quemas para almacenar los datos y luego borras para quemar el prog principal, tmb puedes hacer el uso de banderas, es decir, si los datos son constantes puedes iniciar el programa quemando los datos que seran permanentes dentro de la eeprom: ej


--- Código: Text --- INICIO..1 - miro flag para ver si los datos estan en la eeprom...2 - &#34;están&#34; salto al programa PRINCIPAL ...3 - &#34;No Están&#34; grabo los 100 datos...4 - termino de grabar 100 datos?...5 - si -&#62; coloco la bandera de datos grabados y voy a PRINCIPAL...6 - no -&#62; regreso al 4... PRINCIPAL......aqui tu codigo normal...   
Esto se entenderia de la siguiente manera, como los datos son permanentes dentro de la eeprom, puedes grabar los 100 datos mas 1 mas que sera la bandera, cuando inicies el programa chequeas esa bandera, si esta activada (o desactivada si prefieres) saltas a principal, de lo contrario grabas los 100 datos... solo grabara los 100 datos cuando inicies por primera vez el programa.. a partir de ahi solo chequea y salta a principal... de esta manera te evitas hacer 2 programas y borrar el que quemo los datos para poner el programa principal.. aparte ya te quedan las rutinas por si necesitas variar algun dato en un futuro.. aver si me comprendes :).. por la tarde tienes las rutinas ;) . Saludos :hola:

karen81:

--- Citar ---Karen y pq no escribes los datos en la ROM (FlashROM) en vez de en la EEPROM, con eso te aseguras q los datos no van a borrarse ni sobreescribirse y no tienes q hacer dos programas..... lo veo mas lógico. Estoy seguro q el 'modo' de hacerlo debe venir en el datasheet.
--- Fin de la cita ---

podria quemarlos en la flash pero mi duda es la misma ;)
--- Citar ---quemo en el micro el programa que guarda los datos,
luego debo borrar este programa, para quemar el programa principal , pero los 100 datos ya estarian en la flash????
--- Fin de la cita ---

gracias igualmente por tu tiempo

la idea que me das jonathan es buena pero son demasiados datos, y el programa principal es bastante largo no creo que me quepa, pero voy a revisar  :comp: ,

gracias :hola:

Alternative:
Hooola Karen81

Mira, ya entendi tu objetivo, tratare de explicarme, haber si te entendi bien.

1. Deseas almacenar datos en la memoria EEPROM
2. Una ves que estan tus datos, deseas borrar tu PIC y realizar un programa
    en donde accederas los codigos antes programados en la memoria EEPROM

Tu idea principal es que el codigo que realisas es muy grande y al hacer estos
dos pasos te ahorrarias instrucciones en tu nuevo programa y  no hacer todo
en tu programa principal lo que menciona Jonathan, ya que si lo realizas como
 dice Jonathan no crees que te alcance la memoria para realizar tu programa.

Bueno, me resulto interezante asi que lo realice para probar,
pero desafortunadamente al borrar un PIC
tambien borra la memoria EEPROM colocandoles 0xFF en toda sus localidades

Realice el programa en el PIC16F877A, lo cheque, y lo prove pero esta idea
desafortunademente no te funcionara, lo ideal es que trates de realizar metodos
en los que utilices menos lineas, y utilizacion de tablas o hacerlo como dice
Jonathan y esperemos que te alcance la Memoria para tu proyecto

coloco el codigo ASM para que lo cheques
y te desengañes por ti misma
lo hice que almacenara 3 codigos en la memoria EEPROM en las
direcciones 0     dato colocado = 1
direcciones 1     dato colocado = 3
direcciones 2     dato colocado = 7
direcciones 3     dato colocado = 15

estos codigos los desplegara por el PORTB, dandoles un pequeño
retardo para que se visualicen

en la linea 40 se encuentra un "goto lectura" el cual esta como comentario

1.  programa el pic con el codigo como esta
2. Prueba que te saca los datos 1, 3 7 y  15 por PORTB
3. borra el PIC y programalo ahora pero abilitando lo que estaen la linea 40
    esto para que no programe la EEPROM y solo lea las direcciones
    0, 1, 2 y 3
4. Los datos Obtenidos son 0xFF y no los datos
    como los que almacenastes cuando programastes el PIC
    anteriormente



Saludos
bye

pmluis  :hola:

© Jonathan ©:

--- Citar ---Bueno, me resulto interezante asi que lo realice para probar,
pero desafortunadamente al borrar un PIC
tambien borra la memoria EEPROM colocandoles 0xFF en toda sus localidades
--- Fin de la cita ---

Hola Alternative, sino me equivoco existe la posibilidad de no borrar la EEprom cuando borras el pic, creo que en el mismo programa puedes desmarcar la opcion de borrar la eeprom, voy a rebizar porque nunca le preste atencion. Saludos :) y exelente tu prueba  :lightsabre:

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa