TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: Sispic en 09 de Diciembre de 2003, 00:51:00
-
Estoy utilizando para insertar valores en le flash esta directiva :
DW valor_12_bits
pero ocupa 2 posiciones en la flash y pone el byte alto en una posicion y el bajo en la siguiente .
Sabriais si existe alguna otra directiva para que ocupe solo una posicion .
Los valores que uso son menores de 3FFFh. y es una lastima ya que tengo que usar el doble de memoria con este sistema .

saludos .
sisco
-
En PBP podes escribir uno solo de los bytes utilizando la instruccion Valor.LowByte, siendo Valor la word sobre la que quieres guardar su valor.


-
gracias por contestar marcos , pero es que quiero aprovechar los12 Bits de cada posicion de la flash
-
Buenas:
A lo sumo podrias hacer alguna rutina para grabar 2 registros de 12 bit (osea 24 bits) en 3 registros de la eeprom ,ya que estos son de 8 bit.-
Si te alcanza la cantidad de registros del micro como para usar registros dobles, ni pensar en hacer todas esas conversiones.-
Saludos
Jorge
-
si jorge , pero no me refiero a la eeprom si no a la propia flas del pic que son registros de 12 bits .
ejemplo :
0x0000 : 287F 3FFF 3FFF 0008
Esto son los valores de las cuatro primeras posiciones
Lo que intento hacer es escribir valores directatemte en la flash en tiempo de compilacion y que aprobeche los 12 bits ya que usando la directiva "DW valor" escribe el byte alto en una posicion y el bajo en la siguiente 
En tiempo de ejecucion de programa no hay problema ya que se puede leer y escribir sin problemas en ella , a un 16f876 me refiero .
He mirado el manual Mpasm , pero no maclaro .
unos saludos .
sisco