¿Cómo ejecutar el firmware desde la interfaz de memoria flash externa al microcontrolador PIC?

4

Tengo microcontroladores PIC18 y PIC24 con 256 KB de memoria flash.

El tamaño de mi código es de 400 kB y ya no se puede almacenar en la memoria flash de esas MCU. Así que estoy pensando en usar una memoria flash externa para guardar el código del programa.

¿Puedo almacenar mi archivo ejecutable en la memoria flash externa y ejecutarlo desde allí? ¿Cómo hago eso?

    
pregunta shail korat

1 respuesta

5

Hay PIC24 & Modelos dsPIC33 con flash de 512KB.

PIC18F8622 & 8722, y algunos otros PIC18F (87J50, 97J60, por ejemplo) tienen una interfaz de bus externa, puede colocar un flash paralelo (tipo 29xx) allí, y el bus externo puede direccionar hasta 2MB.

Desde la hoja de datos, podemos ver que esto se puede usar para almacenar el código del programa:

  

El bus de memoria externa (EMB) permite que el dispositivo acceda a dispositivos de memoria externa (como Flash, EPROM, SRAM, etc.) como programa o memoria de datos .

El uso de otros tipos de interfaz para conectarse a una memoria flash externa puede ser problemático, ya que no podrá ejecutar el código directamente desde la memoria flash. En su lugar, tendrá que copiar el código en la RAM antes de ejecutarlo, pero ya que estos microcontroladores tienen recursos de RAM extremadamente limitados, esto limitaría severamente la utilidad de tal solución (tendría que implementar algún tipo de técnica de paginación / superposición).

Aquí está la herramienta de selección de productos de Microchip, que le permite buscar modelos con ciertas características: enlace

    
respondido por el Laszlo Valko

Lea otras preguntas en las etiquetas