¿Es posible ejecutar código en la arquitectura ARM Cortex M desde ubicaciones distintas a la memoria flash incorporada (como otro chip flash, tarjeta SD)?
Si es así, ¿cómo?
Si no, ¿qué arquitectura de microcontrolador permite esto?
¿Es posible ejecutar código en la arquitectura ARM Cortex M desde ubicaciones distintas a la memoria flash incorporada (como otro chip flash, tarjeta SD)?
Si es así, ¿cómo?
Si no, ¿qué arquitectura de microcontrolador permite esto?
ARM Cortex M permite la ejecución de código desde Flash, RAM interna y externa. La memoria RAM externa (si está disponible) debe configurarse antes de poder usarse.
Es posible que debas cambiar la secuencia de comandos del vinculador y / o el código de inicio, pero eso depende del compilador que uses.
El CCC r0ket , por ejemplo, carga un código externo en la RAM y lo ejecuta.
La arquitectura Cortex-M no pone ninguna restricción en las memorias, depende de las interfaces de memoria disponibles en un controlador específico.
Por ejemplo, el LPC43xx permite ejecutar código desde flash interno y RAM, RAM externa estática, flash NOR y flash serial (SPIFI). No estoy seguro de la ejecución del código en la RAM dinámica, ya que se encuentra en un rango de direcciones que normalmente no se usa para el código, pero probablemente también sea posible.
Tenga en cuenta que las memorias externas generalmente serán más lentas que las internas. La más rápida es la RAM interna.
Tengo transistor K2554. Hay un símbolo similar al logotipo de Hitachi. No puedo encontrar la hoja de datos para ello.
¿Esequivalentea2SK2554?¿Puedoconfiarenlahojadedatos2SK2554?
Es bastante común que los transistores japoneses eliminen el "2S" en las marcas de dispositivos. Yo diría que es bastante seguro usar la hoja de datos de Hitachi 2SK2554.
Algunos ejemplos: 2SK553 2SD655 2SB649 / 2SD669
Si no tiene una hoja de datos k2554, ese es el primer problema. Sin embargo, si tiene una hoja de datos para el 2SK2554, intente buscarlo para ver cómo se representa el número de pieza del dispositivo en el paquete; podría ser simplemente que "K2554" sea una abreviatura documentada del 2SK2554.
Si todo eso falla, entonces nadie lo sabe. Lea la hoja de datos y muévase en Google hasta la muerte, eso es lo que haría.