TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: fco1306 en 22 de Abril de 2010, 10:18:47
-
Estoy comenzando a programar en pic basic.
El programa que tengo hace mover unos servos y mantiene la posición de los mismos cuando apago el micro.Estoy simulando en Isis.
Necesito grabar l en la memoria el ángulo y velocidad de los servos.
El problema me aparece cuando se lee por primera vez la memoria en una dirección indicada y no hay nada almacenado (la primera vez que simulo el programa) ,que valor se obtiene ¿00? ¿FF?.
Le pongo una condición que es si leo de memoria y el valor es cero salte a una etiqueta.El programa se queda colgado en esa condición.Si grabo en la posición de memoria algo, el programa no da problemas.
Lo he probado en varias posiciones de memoria y me sucede lo mismo.No sé que puede ser.
Un saludo
-
Cuando la data eeprom está vacía o borrada contiene 0xFF en todas sus localidades.
-
Pues era eso.He puesto la condicion "if posicion=$FF then" y funciona.Juraría que ayer ya lo había probado.No sé,igual me dejé el $.
Muchas gracias,ya sé algo más
-
Ya tengo el programa terminado,me falta depurarlo un poco.
Una curiosidad.En un momento determinado el programa graba en la eeprom el ángulo de movimiento del servo para usarlo cuando se conecte otra vez el circuito y el servo vaya a esa posición.
Este valor lo conserva incluso si apago y enciendo el ordenador .¿Es posible? ¿Cómo se podrían poner en 0xFF otra vez? ¿reset?.Pensaba que al ser una simulación en caso de apagar, toda la eeprom se pondría en cero.
-
Si los valores estan grabados en la eeprom del pic, si apagas y enciendes y los vuelves a encender.
Cuando desconectas el Pc no está ya apagdo el pic? ¿No te ha guardado los valores ya antes en la eeprom?
Pues si el pic está apaado que infuencia puede tener el apagar el PC?