9 votos

Kinetis vs STM32

Estoy buscando a una nueva industrial de los controles de aplicación, y a partir de mis investigaciones me han reducido a 2 microcontroladores que mirar para adaptarse a la aplicación. El STM32 y la Kinetis. Ambos parecen muy capaz de hacer el trabajo y ya he usado el STM32 en otro algo no relacionado de la aplicación. Me gusta el STM32 de la familia ya que hay una amplia selección de configuraciones que son todos para la mayor parte pin compatible. El Kinetis sin embargo parece ser un poco más explosión para el buck procesador/memoria sabio.

Así que mis preguntas a cualquier persona con un poco más de experiencia con estos es... ¿cuáles son algunas de las ventajas y desventajas de cada familia?

Estoy bastante seguro de que no hay exactamente una elección equivocada aquí para mi aplicación, pero me gustaría un poco más de detalles de una persona distinta de Freescale y ST. Me doy cuenta de los detalles de mi solicitud puede ser un factor de aquí, pero es un campo muy amplio de aplicación de la medida de la funcionalidad va. Nuestro mayor límite que nos ha empujado a mudarse a un lugar diferente es el controlador de memoria (~16k de RAM, 256 kb de flash).

Cualquier conocimiento, sería muy apreciado. Gracias

7voto

landon9720 Puntos 11241

De la STM32 (ST Microelectronics) y el Kinetis de la familia (Freescale), sólo he trabajado en el STM32 de la familia de procesadores y por lo tanto, voy a ser capaz de detalle mi experiencia con el STM32 y con la esperanza de que alguien puede hacer lo mismo para el Kinetis, así que usted puede contraste de los dos. Esta lista puede no estar completa, y se basa simplemente en mi experiencia.

PROS:

  1. SAN proporcionar un enorme conjunto de bibliotecas para cada uno de sus los procesadores que usted obtenga de forma gratuita. Estas bibliotecas contienen una enorme lista de las funciones necesarias para realizar la mayoría de los básicos de bajo nivel la interfaz con el hardware y puede hacer su vida mucho más fácil.

    e.g nula GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct) Esto inicializa el GPIOx periféricos de acuerdo a los parámetros especificados en el GPIO_InitStruct.

    Simplemente rellenar el GPIO de la estructura (y no son ejemplo de proyectos para guiarle a través de este proceso), y llamar a la GPIO_init función. Esto le ahorra tener que buscar al menos 4-5 registros y calcular lo que cada bit debe ser.

  2. Sus microcontroladores de la Lectura funcionalidad de protección, que puede ayudar a proteger su propiedad intelectual, en cierta medida, aunque no completamente. Hay toneladas de los microcontroladores, que en realidad no le esta muy bien.

  3. Tienen una familia de baja potencia de micro-controladores, L1 la serie, que tienen diferentes niveles de funciones de ahorro de energía que puede ser encendido/apagado cuando sea necesario.

  4. Aunque hay muchos fabricantes que ahora están haciendo su versiones de el BRAZO CM3 núcleos, ST F de la serie chips han tenido un par de revisiones y aunque no está completamente libre de errores, que son ahora bastante madurar.

  5. Casi todas las variantes que he trabajado han toneladas de Temporizadores y otros periféricos y usted nunca puede tener suficiente de ellos. :)

  6. Para empezar, tienen algunos ejemplos de proyectos que pueden ser programados en sus placas de evaluación, que casi siempre te dan gratis. Aunque creo que la mayoría de los otros fabricantes, haría lo mismo.

CONTRAS:

  1. A pesar de las mencionadas bibliotecas sin duda de gran ayuda, sin embargo, algunos de los nombres de función no son intuitivos y se tarda un mientras que para conseguir su cabeza alrededor de sus convenciones de nomenclatura. Esto no es cierto que toda la biblioteca, pero hay un poco de código, que no está bien comentado, y usted realmente tiene que leer a la figura que es lo que se está haciendo.

  2. Si usted está utilizando sus bibliotecas y quieren convertir en MISRA la comprobación de su proyecto, usted conseguirá toneladas de errores/advertencias su código no parece ser MISRA compatible. Usted necesitará encontrar una manera de excluir a sus bibliotecas de su MISRA comprobación. Hay maneras de evitar esto, pero requieren un poco de trabajo hacerlo.

  3. ST documentación para los procesadores que he trabajado en una poco pobre. Sus hojas de datos no son muy bien escrito. El la información no está en una central/documento principal. No tienen lo que ellos llamar a un manual de referencia, toneladas de notas de aplicación y al menos un hoja de datos. Realmente hay que arrastre a través de estos documentos a veces para encontrar la información que usted está después.

    Ellos a menudo se describen los puertos GPIO, y una configuración recomendada para uno de los bits
    tal vez descritas las 50 páginas más adelante.

Es todo lo que puedo pensar en este momento, espero que esto le da un poco de idea sobre el STM32 productos. Voy a añadir más, si puedo pensar en otra cosa.

Una sugerencia sería la de obtener una placa de evaluación para ambos tipos de microcontroladores (Kinetis uno y un STM32), que tienen los periféricos que usted está después, y tener un juego con ellos.

Que le dará una muy buena sensación de que uno se adapte a tus necesidades.

4voto

K70 tiene muy buggy de silicio. A menudo los periféricos que se han descrito tienen sólo lite funcionalidad; por ejemplo, es un buen uso de la caché con la memoria externa, pero si se utiliza esta memoria con el DMA tendrá que vaciar la caché manualmente. K70 tiene un controlador de LCD, pero es casi imposible de lograr una mejor resolución de 480x272, que no es mejor de lo que puede lograrse con el estándar de Mcu. El K70 tiene un monstruo generador de reloj, pero sólo un par de periféricos son capaces de utilizar en lugar de la del reloj de bus.
La cosa más importante es que he encontrado que la complicada bajo la administración de energía simplemente no funciona!

3voto

sq1020 Puntos 143

Supongo que usted está comparando el Kinetis con la STM32F4 Cortex-M4 procesadores. Yo no lo he hecho usados, pero han estado buscando en ellos para su posible uso en un próximo proyecto. También hay M4 familias de dispositivos disponibles de TI-Stellaris y anunciado por Atmel y NXP muchos de los que se incluyen el procesador de punto flotante, las cargas de los puertos serie y temporizadores.

El apoyo en términos de software para los procesadores (Freescale y ST) se ve bien con Freescale proporcionar una interfaz de la biblioteca y libre de regalías, RTO de sus partes. SAN proporcionar un conjunto de interfaz de bibliotecas que permiten la configuración y el uso de sus procesadores y periféricos.

SAN dispositivos parecen ganar la velocidad de procesamiento de la guerra con un citada velocidad de 168MHz utilizando (IIRC) un ancho de bus de memoria para el programa flash. Esto puede o puede no ser importante para usted.

El Kinetis partes son las más maduras, de haber estado disponible durante casi un año. Como resultado, existe ahora una gran familia de dispositivos en la producción con una amplia gama de interfaces y periféricos conjuntos. El ST partes han sido sólo por un mes, a pesar de que tenía la liberación de un número de partes al mismo tiempo como el anuncio de la familia. Su gama de partes aumentará en mucho tha de la misma manera que sus Cortex-M3 de la familia.

2voto

jilles de wit Puntos 5207

Recientemente estaba respondiendo a una consulta de atención al cliente estrechamente relacionado con este hilo. Esperamos que estos comentarios le sean de utilidad.

+++++++++++

A destacar las diferencias entre el K70 con STM32F2:

  • K70 es Cortex-M4, mientras que STM32F2 es Cortex-M3. En otras palabras, K70 proporciona en el chip de hardware FPU y Unidades DSP.

  • K70 puede ejecutar el Cortex-M de núcleo en 150MHz (aunque los disponibles en la actualidad los dispositivos están limitados a 120 mhz). STM32F2 está limitado a 120 mhz.

  • K70 proporciona en el chip de DDR y NAND Flash interfaces, permitiendo a muy altas densidades para dispositivos de almacenamiento externo.

  • K70 tiene en el chip de memoria caché (2 de 8 kb de caché para I/D y Bus del sistema). Esto realmente bootst rendimiento de externa memorias de un modo muy serio.

  • K70 proporciona varios mecanismos de seguridad para garantizar que el software no se pueden copiar utilizando herramientas externas (JTAG depuradores, etc).

  • K70 ha integrado el controlador de LCD así como la integración de la la interfaz táctil.

  • conjunto similar de interfaces de e/S, pero esto debe ser medido en contra de los requisitos de aplicación específicos.

En general, si usted está utilizando la memoria externa en sus aplicaciones y/o la necesidad de una interfaz gráfica de usuario, K70 sería un claro ganador. También, K70 es más eficiente, en términos generales.

+++++++++++

2voto

jilles de wit Puntos 5207

Mi experiencia con STM32 y Kinetis K70 se reduce a ejecutar uClinux en estos procesadores (información detallada sobre estos puertos uClinux disponibles aquí ).

Si piensa usar RAM externa en su aplicación, K70 sería una mejor opción, en mi opinión.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X