Límite máximo de archivos hexadecimales para At89c51

-1

Tengo un archivo hexadecimal de tamaño 6kb. ¿Puedo cargar esto en el microcontrolador at89c51. He intentado esto en proteus. Se ejecuta con éxito. Se ejecutará correctamente en el hardware, ya que at89c51 tiene solo 4kb de memoria flash programable.

    
pregunta Chirag Gohil

1 respuesta

1

Los archivos hexadecimales son ASCII legibles para las personas, y el tamaño de un disco puede ser mayor debido a la granularidad del almacenamiento del disco.

Para saber si se ajustará, abra el archivo en un editor de texto y observe las direcciones. La dirección más alta en una memoria interna 8051 de 4K bytes es 0xFFF.

Aquí, desde documentación de Keil , se ofrece una explicación del formato de Intel:

Tenga en cuenta que puede haber espacios vacíos en las direcciones de línea a línea, y que la longitud de la línea puede ser corta o larga (hasta cierto límite especificado en los documentos originales de Intel) y que la longitud de la línea puede variar de una línea a otra (por lo general, es la última línea o la última línea antes de un espacio más corto), por lo que no es posible adivinar de manera confiable el tamaño del archivo binario a partir del tamaño del archivo hexadecimal.

En términos generales, sin embargo, dado que cada byte está representado por dos caracteres ASCII de 1 byte, y hay cierta sobrecarga en cada línea (13 bytes), debería encajar fácilmente si no hay espacios en las direcciones. Por otro lado, si se compilara (compilara) o se ensamblara para un procesador de 32K bytes, podría haber muchas cosas guardadas en la parte superior de la memoria, por lo que no sería posible programarlo en un micro más pequeño.

    
respondido por el Spehro Pefhany

Lea otras preguntas en las etiquetas