Desarrollo de electrónica. Sobre microcontroladores en los dedos



Pensando en una startup tecnológica, no tiene que ser un as en electrónica en absoluto, es mucho más probable que un especialista limitado con conocimiento de los conceptos básicos del marketing tenga una buena idea, pero incluso si le ordena a alguien que lo desarrolle, debe navegar por las capacidades de la base de elementos modernos y presentar el precio de la solución. De lo contrario, puede exigir lo imposible u obtener un dispositivo con costos caros en una base de elementos obsoletos.
Bajo el corte, un intento de informar breve y simplemente sobre las capacidades de los microcontroladores modernos a personas que están lejos de ellos. Para aquellos que tienen la idea de un nuevo dispositivo electrónico, pero no tienen idea de qué es un microcontrolador. Aquellos que quieran dar el primer paso desde entretener experimentos con la plataforma Arduino hasta diseñar sus propios dispositivos también pueden encontrar consejos simples pero útiles. Intenté, sin detenerme en los detalles técnicos, para este propósito no es suficiente que el libro establezca la esencia y dé algunos consejos simples pero útiles sobre el diseño de circuitos para evitar que los principiantes cometan errores elementales.

Resumen del artículo:


Cómo los microcontroladores conquistaron el mundo
ARM Architecture - Líder actual del mercado de microcontroladores
Competencia con hermanos menores.
Sobre la colocación de asfalto, los beneficios del sueño y sus variedades
Poco sobre la tecnología de fabricación y cómo aparecen las series de microcontroladores
La periferia del microcontrolador ARM más simple por medio dólar
La forma más económica de obtener funciones adicionales
¿Y qué agregará la transición al Cortex-M4, además del aumento del precio un par de veces?
Cortex-M7: cuando quieres más ...


La protección del código, la capacidad de actualización y la diversidad han ayudado a los microcontroladores a conquistar el mundo


Cualquier dispositivo inteligente requiere control. En la mayoría de los casos, los microcontroladores lo hacen hoy: chips que combinan un núcleo de microprocesador, módulos de memoria y periféricos que son responsables de la comunicación con otros componentes del dispositivo y el mundo exterior.

Los microcontroladores son jack de todos los oficios. Un microcontrolador es capaz de reemplazar docenas de microcircuitos especializados que serían necesarios para realizar las funciones requeridas si el microprocesador desempeñara el papel de la calculadora.

Una de las ventajas indiscutibles del microcontrolador es que el programa bajo el cual se ejecuta está oculto dentro de su carcasa (en la sección llamada "memoria del programa") y está muy bien protegido contra piratería, por supuesto, si el desarrollador del microcódigo se ocupó de esto activando los mecanismos integrados. protección Por lo tanto, obtendrá protección de la propiedad intelectual tanto como sea posible hoy.

Lo que no se puede hackear se puede copiar. ¿Por qué intentar leer el código incrustado en el microcontrolador del programa utilizando dispositivos caros e ingeniosos, si es más fácil y económico encontrar un profesional que pueda volver a escribirlo? Quizás el resultado será aún mejor, y la funcionalidad es más rica que la del prototipo. Sí, cuesta dinero, pero el contenido de la memoria FLASH de los microcontroladores actuales está tan bien protegido que los intentos de "hackear" groseramente costarán aún más. Además, el problema de la propiedad intelectual se está resolviendo y usted, junto con los códigos fuente del programa, tiene la oportunidad de desarrollar y mejorar su dispositivo.

La memoria del programa, en los microcontroladores universales modernos, es regrabable, y el proceso de reescritura se puede repetir más de diez mil veces. Se ruega el uso de este hecho para actualizar el software con el fin de eliminar los errores encontrados en él o para expandir las funciones de un dispositivo que ya funciona. Esto es bastante simple de implementar: al agregar una sección especial de código llamada "cargador de arranque" al programa, tiene la oportunidad de actualizar el software de su dispositivo de varias maneras: en el punto de servicio (si el dispositivo tiene un conector especial oculto dentro de la carcasa), conectándolo a computadora a través de USB, a través de una red o incluso una interfaz inalámbrica. Lo principal es proporcionar al dispositivo los periféricos necesarios para esto. Al proporcionar la capacidad de actualizar el software, siempre debe pensar en la seguridad, si este proceso no está suficientemente protegido, los atacantes no solo pueden robar su código, sino que también pueden modificarlo y usarlo para sus propios fines , lo cual es insidioso . Por ejemplo, tome el control de las cosas de su "hogar inteligente" o espíe con la ayuda de la cámara WEB instalada por usted en su hogar.

ARM Architecture - Líder actual del mercado de microcontroladores


Desde la época de King Peas, los microcontroladores generalmente se dividen de acuerdo con la capacidad de los datos en los que realizan operaciones. En la gran mayoría de los casos, hoy en día, en nuevos desarrollos, vale la pena elegir microcontroladores de 32 bits con un núcleo ARM. Hay una gran cantidad de modificaciones y siempre puede elegir la instancia que mejor se adapte a su problema. Dependiendo del conjunto de funciones y rendimiento, el precio de un chip puede variar de decenas de centavos a decenas de dólares.
Los microcontroladores (MCU), dependiendo de la arquitectura del núcleo informático, generalmente se dividen en grandes familias. Hoy, para el desarrollo de dispositivos de pequeña y mediana complejidad, los microcontroladores más populares con núcleos desde Cortex-M0 hasta Cortex-M7. Cuanto mayor sea el número, mayores serán las capacidades informáticas (y no solo), el precio y el consumo máximo de energía. La sucesión de la arquitectura jugó un papel importante en la popularidad de ARM. Un desarrollador puede modificar el código del programa de sus desarrollos anteriores con costos mínimos, pasando de microcontroladores de un fabricante a chips de otro y migrando entre núcleos con un rendimiento diferente.


Competencia con hermanos menores.


Sin embargo, los ARM no se dirigieron. Recuerdo bien los tiempos en que los microcontroladores de 8 bits eran los líderes absolutos del mercado y, desde sus posiciones, los colegas de 16 bits intentaron empujarlos sin éxito, pero, irónicamente, solo los hermanos mayores de 32 bits lograron hacer esto. Dio la casualidad de que en el momento de su aparición, las tecnologías de fabricación de chips redujeron en gran medida el costo de integrar grandes volúmenes de memoria FLASH en ellos. Aprovechando esta oportunidad, los programadores comenzaron a cambiar de ensamblador a un lenguaje de nivel superior: C, cuya estructura se estableció perfectamente en la arquitectura de 32 bits. Como resultado, los microcontroladores de 32 bits realizaron cálculos mucho más rápido que sus colegas de 8 y 16 bits, pero hubo un problema: tenían un mayor consumo de corriente.

Por lo tanto, al principio, se usaron en casos donde se requería un mayor rendimiento computacional.

Se sabe que el consumo de corriente promedio del núcleo informático del microcontrolador aumenta significativamente con un aumento en su frecuencia de reloj. Al principio, los modelos de microcontroladores de 8 bits tenían un consumo notablemente menor a una frecuencia similar y, además, podían trabajar desde una frecuencia de reloj baja, hasta 32 kHz.

El consumo de energía de los microcontroladores depende en gran medida de la frecuencia de reloj del núcleo y los periféricos, para regularlo, comenzaron a usar la unidad generadora de frecuencia de reloj basada en PLL, ampliamente utilizada en dispositivos de transmisión de radio. Esto hizo posible variar ampliamente la frecuencia del reloj sin cambiar el resonador de cuarzo maestro. Los módulos periféricos no tienen que tener la misma frecuencia de reloj que el núcleo informático. Para reducir su consumo de energía, la frecuencia comenzó a alimentarse a través de divisores con una relación de división controlada por programa. Introdujo la capacidad de deshabilitar módulos no utilizados. Estas medidas redujeron en gran medida el consumo de energía, pero aún se mantuvo significativamente más que el de los de 8 bits.

Durante un corto tiempo, se desarrolló la paridad: las MCU de 32 bits capturaron el nicho de las aplicaciones de gama alta, y las de 8 bits mantuvieron posiciones con confianza en dispositivos para los que el bajo consumo de energía era importante. Persistió hasta que las MCU de 32 bits dominaron perfectamente el modo de operación "pulso".

8-biters, para entonces, también aprendieron cómo hacer esto, pero, debido al bajo rendimiento, tuvieron que permanecer despiertos mucho más y, como resultado, comenzaron a perder el consumo de energía, especialmente en tareas que requieren cálculos, como lo ilustra la siguiente imagen.



Sobre la colocación de asfalto, los beneficios del sueño y sus variedades


Entonces, los microcontroladores aprendieron a creer tan bien que comenzaron a hacer su trabajo muy rápidamente y la mayoría de las veces se vieron obligados a "ganar dinero", devorando energía para realizar ciclos inactivos. En dispositivos autoalimentados, esto reduce en gran medida la vida útil de la batería o la vida útil de la batería con una sola carga.

Mira a los trabajadores de la construcción colocando el asfalto. Intensifican bruscamente su trabajo cuando llega un camión con una nueva porción de asfalto, y después de colocarlo se ralentiza. Por lo tanto, los microcontroladores pueden aumentar y disminuir la frecuencia del reloj central. Sin embargo, esto no es tan fácil para ellos como para los trabajadores: la frecuencia de operación de toda la periferia interna también cambiará al mismo tiempo, por lo tanto, sus partes sensibles deberán reconfigurarse.
No sería más fácil, habiendo hecho todo el trabajo rápidamente, dormir un poco. A menudo si. Además, los tipos de sueño de los microcontroladores difieren aún más dramáticamente que en los humanos.

Puedes tomar una siesta. En este caso, nuestro chip siempre está listo y, tan pronto como suena la alarma del temporizador o se interrumpe por una interrupción externa, se activa casi instantáneamente. Como una persona durante una siesta puede aliviar el estrés, pero no dormir lo suficiente cuando lo jalan constantemente, por lo que el microcontrolador puede reducir su consumo de energía en este modo "solo" cada 10 veces, este modo se llama SLEEP.

La mejor manera de dormir bien es desvestirse, acostarse, cerrar las cortinas de la ventana y encender la alarma. Sin embargo, después de tal sueño, no entrará inmediatamente en el trabajo. Al menos deberá enjuagarse con agua fría y vestirse. El microcontrolador también tiene este modo, cuando limita el número de estímulos externos y apaga el generador de reloj principal. Este es el modo STOP. Puede reducir el consumo en 1000 veces, pero tomará una cantidad significativa de tiempo salir de él.

Ahora, imagine que antes de acostarse bebió una buena dosis de pastillas para dormir, apagó la alarma y el teléfono, y cerró todas las ventanas y puertas. Este será el modo EN ESPERA. El microcontrolador se puede quitar de este modo solo con la ayuda de conclusiones especiales, y la mayor parte de la memoria de lo que hizo antes de ese sueño se perderá para siempre, tendrá que comenzar a trabajar nuevamente. Pero estando en este modo, el MCU consume otra mitad más.

Este último, un modo muy exótico, ya recuerda a alguien que no puede quedarse sin equipo especial. Sin embargo, en este caso, solo funciona un generador especial , que es parte del microcontrolador en un reloj de cuarzo separado, que puede operar desde su propia fuente de energía y tener literalmente unos pocos bytes de RAM, cuyo propósito es recordarle al microcontrolador en qué estado se encontraba. Si las partes restantes del microcontrolador, al mismo tiempo, están desconectadas de la fuente de alimentación, entonces el consumo de energía ya puede ser una décima parte del modo activo.

Al elegir un modo de ahorro de energía, debe recordar las consecuencias de la aplicación :

  • cuanto más profundo es el sueño, más largo es el despertar
  • cuanto más profundo es el sueño, menos formas de sacar el microcontrolador
  • cuanto más profundo es el sueño, menos información queda sobre el estado anterior del microcontrolador
  • Para alcanzar los valores mínimos declarados, en muchos modos es necesario tomar medidas adicionales, por ejemplo, desconectar periféricos
  • Para minimizar el consumo de energía del dispositivo en su conjunto, es necesario diseñar correctamente los circuitos de todo el dispositivo.
  • Para minimizar el consumo de energía del dispositivo en su conjunto, debe asegurarse de que los otros componentes y circuitos también tengan microalimentación en modo inactivo. Es estúpido hacer enormes esfuerzos para reducir el consumo del microcontrolador por debajo de una microamperia y, al mismo tiempo, usar un estabilizador barato con una corriente de autoconsumo de 100 microamperios en el dispositivo, pero esto es muy común
  • Para el uso exitoso de los modos de sueño profundo, no solo el programa, sino también los circuitos, deben pensarse cuidadosamente, de lo contrario, en lugar de guardar, puede tener problemas muy serios, que rara vez suceden, pero el dispositivo "muerto" se congela por una razón inexplicable o se despierta con demasiada frecuencia y, como Como resultado, el consumo es un orden de magnitud mayor de lo esperado


Si su programador con un ingeniero de circuitos se ha culpado mutuamente por primera vez de curvatura y, juntos, el fabricante por publicar números poco realistas en hojas de datos en el microcontrolador, y su dispositivo está colocando las baterías en un orden de magnitud más rápido de lo que esperaba, esta es una razón para al menos cambiar a independiente Expertos altamente calificados.

Poco sobre la tecnología de fabricación y cómo aparecen las series de microcontroladores


La parte físicamente activa del microcontrolador, como la gran mayoría de otros microcircuitos, generalmente se forma en una oblea de monosilicio (llamémosla, en este contexto, un chip). Los chips ocupan un área muy pequeña, pero es tecnológicamente rentable producir placas de gran diámetro, por lo tanto, generalmente se coloca una gran cantidad de chips, como panales, en un plato grande y se forman durante un proceso tecnológico. Posteriormente, las placas se cortan en pedazos, recibiendo chips individuales, que se colocan en el estuche. El desarrollo de la topología y la depuración de los procesos tecnológicos de un nuevo chip es muy costoso, y el espacio ocupado por un solo chip en una placa generalmente no es grande. Es rentable para los fabricantes producir chips en grandes lotes, pero los usuarios necesitan microcontroladores en diferentes casos: para alguien es importante obtener un caso más pequeño y más barato, por el contrario, necesita más salidas para administrar una pantalla LCD o memoria externa con una interfaz paralela. Es rentable que los fabricantes cubran todos los nichos para que los clientes no se crucen con los competidores sin encontrar el modelo que sea óptimo para ellos.

A menudo es más rentable lanzar un gran lote de un chip universal y colocarlo en diferentes casos que lanzar una docena de diferentes. Para los chips colocados en cajas con una pequeña cantidad de pines, algunos puertos (en este contexto, por puertos nos referimos a almohadillas de contacto en la superficie del chip que sirven para comunicarse con el mundo exterior) simplemente no están conectados. A menudo, los fabricantes van más allá: para aumentar la demanda y el precio de los microcontroladores con una gran cantidad de patas, cortan artificialmente la funcionalidad de las que tienen menos: deshabilitan algunas funciones, limitan la cantidad de memoria disponible, etc.

Entonces, sobre la base de un chip, forman una serie de microcontroladores que difieren significativamente en el tamaño de la memoria y un conjunto de módulos periféricos, a veces a veces en precio. Al mismo tiempo, los chips instalados en ellos se pueden cortar de las mismas placas. Dado que el área en la que se encuentra un chip es pequeña, su contribución al costo del producto final también es pequeña y puede sacrificarse. Se vuelve beneficioso deshabilitar memoria adicional y otras funciones, por ejemplo, en la etapa de prueba, ya sea con la ayuda de bits de configuración programables, o quemando los puentes con un láser. Solo para la mayoría de los productos en masa tiene sentido crear una plantilla fotográfica ligeramente modificada para esto. Además, no es necesario que haya memoria físicamente ausente sin usar, de nuevo, simplemente se puede apagar quitando los puentes en la plantilla.


Entonces, a partir de un diseño de chip estándar, se forma una serie completa de microcircuitos.

La periferia del microcontrolador ARM más simple por medio dólar


El núcleo del procesador es el cerebro, pero para que no sea como un "caballo esférico en el vacío", se requieren análogos de los sentidos y las extremidades.

En el microcontrolador, su papel lo juegan las conclusiones sobre el caso, a las cuales los puertos (pads) del chip se pueden conectar dentro del caso. A su vez, a través de conmutadores internos, se pueden conectar varios módulos periféricos al mismo puerto.
Para comenzar, considere la periferia de una de las series más simples de ST basadas en el núcleo Cortex-M0: stm32F03.



Para esta serie, tenemos el siguiente conjunto de funciones básicas:
Reloj en tiempo real (Reloj en tiempo real o RTC) , que puede ser alimentado por una salida separada y operar desde un resonador de baja frecuencia separado. Este módulo consume muy poca energía, en el caso de una falla de energía, puede funcionar durante horas en un condensador cargado o durante años en una pequeña batería integrada en el dispositivo. Además, puede servir como un reloj de alarma, eliminando el microcontrolador del estado incluso del sueño más profundo en un momento predeterminado.

WatchDog es un perro guardián que evita que el microcontrolador se duerma para siempre, por ejemplo, caer en un ciclo interminable o ir a una dirección inexistente. Su principio de funcionamiento es simple.El programador configura el temporizador de protección anticongelante durante un cierto período de tiempo, digamos por un segundo, y lo inicia. Luego organiza, en los lugares del programa elegido por él, secciones cortas de código que reinician el temporizador desde cero. Si no hay restablecimiento del temporizador en un segundo, WatchDog considera que algo está mal con el programa y se adapta al microcontrolador para reiniciar. El programa comienza a funcionar desde el principio, y es posible determinar si el iniciador del reinicio de WatchDog fue y tener en cuenta este hecho al inicio.

El GPIO de entrada-salida de propósito general es la característica más común que admite la mayoría de los pines del microcontrolador. Se pueden configurar como entradas o como salidas.

Considere trabajar como entrada. Si el voltaje en la entrada del microcontrolador es inferior a un cierto umbral (generalmente cerca de la mitad de la fuente de alimentación), entonces se percibe como un cero lógico, de lo contrario como 1. Las entradas digitales generalmente tienen una impedancia de entrada muy alta, por lo tanto, si se dejan desconectadas, su estado puede saltar de cero a uno y viceversa, bajo la influencia de campos electromagnéticos. Para evitar que esto suceda, hay modos especiales cuando la entrada dentro del chip está conectada a través de una resistencia de 20-50 KOhm con la potencia más del microcontrolador (pull-up) o menos (pull-down).

Si las salidas están configuradas con salidas digitales, entonces se pueden convertir mediante programación a un nivel alto igual al voltaje de la fuente de alimentación del microcontroladoro bajo Hay modos más complicados, pero no entraremos en detalles excesivos.

Consejos para desarrolladores novatos
— , , . , , , , . , , — , , , .



, ( ), . X4 — . 5-7, . , , , , R24-R26, 1 . VD4-VD6 5 , , , 3,3 , 5 . R29-R31 100 .
. , . STM32Fxx 5 , , , .

, . , , , — (- ). , . .

. . «» , .

, . , — . , , .
, , ARM , 8- . , , . , , , .

Sensor de temperatura El microcontrolador tiene su propio sensor de temperatura, aunque no es muy preciso, sin embargo, puede, con ciertos supuestos, usarse para medir la temperatura dentro del dispositivo.

Número de serie único Cada microcontrolador tiene su propio número de serie único asignado en fábrica. Una característica muy conveniente que puede usarse para organizar la producción en masa de sus productos.

Interfaces para el intercambio de datos Varios microcontroladores de esta serie pueden tener varias de las interfaces más comunes, lo que facilita enormemente la comunicación con otros chips y el mundo exterior:

  • USART — , COM RS232 ,
  • SPI — , ,
  • I2C — , . ,

Todas estas interfaces son fáciles de implementar mediante programación utilizando GPIO regulares, pero funcionarán mucho más lentamente y consumirán muchos recursos básicos de computación.

Un convertidor analógico a digital ADC o ADC en el que tendrá que detenerse con más detalle.

Un módulo extremadamente útil que puede medir el voltaje de las señales analógicas. Los estima en fracciones del valor de la fuente de señal de referencia, en nuestro caso es la tensión de alimentación del módulo analógico del microcontrolador, que puede ser igual o ligeramente inferior a la tensión de alimentación principal del chip. La precisión teórica del ADC depende de su capacidad. En los microcontroladores modernos, el ADC de 12 bits de aproximación sucesiva se usa con mayor frecuencia, con menos frecuencia 10 y cuán exótico es 16.



Cuando funciona con 3 voltios, el ADC de 12 bits del microcontrolador tendrá una resolución de 3/4096 = 0.00073 voltios, mejor que un milivoltio.

Pero en la práctica, lograr este ideal no es fácil.

Detalles para principiantes
. , ,


  • MCU
  • MCU



  • — MCU XR7 100 , , — .



  • , . NP0 , ,
  • , , , ,
  • “”, —

, , , , , .

  • , , ,
  • ( ), . , , , . ,



. MEMS , . , , .

VBUT . : R5-10 , 10 0.1 , L1 L2 BLM18PG471SN1D .



. , ASIC, . — . , , . « ».

, . , , , , . 1, 16. ? , . 10 , — 10 . , . , , 1 . , 10 10 !

Un sistema de acceso directo a la memoria DAP o DMA es otra cosa importante. Este módulo le permite enviar datos desde la periferia a la memoria o viceversa.

Por ejemplo, con su ayuda, puede asignar un trozo de memoria para almacenar datos provenientes del ADC y crear un búfer circular a partir de él. Luego, el ADC comienza en el modo de lectura de datos a intervalos regulares. Usando mecanismos DMA, los datos leídos, sin la participación del núcleo, independientemente, byte a byte, se colocarán en un búfer dedicado. Cuando el búfer está completamente lleno, el núcleo recibirá una señal y comenzará a procesarlos mediante programación, y el sistema DMA comenzará el proceso de arranque desde el principio. Dado que DMA tiene varios canales, nadie se molesta en implementar para nuestro caso la salida automática a USART de datos desde el búfer. Como resultado, obtenemos el proceso de transferir la lectura del ADC a USART que funciona sin usar el kernel, y no el simple trabajo del programador en la configuración de DMA dará buenos resultados.

Módulo de modulación de ancho de pulso PWM o PWM , debido a las limitaciones del artículo, no nos detendremos en detalle, solo noto que esta es una función extremadamente útil y ampliamente utilizada con la que es posible controlar el brillo de los LED, la velocidad del motor, las máquinas de dirección, el diseño inteligente de CC -Conversores DC e incluso sintetizar sonido.

¿Qué puedo obtener agregando 30 centavos?

Cambiando a Cortex-M0 +. La forma más económica de obtener funciones adicionales


¿Y qué bollos adicionales ofrece el microcontrolador de la última serie con el núcleo un poco más moderno que el Cortex-M0 +, a un costo de 20-50 centavos más caro que los análogos de la serie anterior en términos de cuerpo y número de salidas?

Tabla de diferencias entre series



  • frecuencia máxima de reloj duplicada
  • de 2 a 1.7 voltios la tensión de alimentación mínima cae
  • ADC puede trabajar dos veces y media más rápido
  • aparecieron dos canales de un convertidor digital a analógico de 12 bits. Esta es una función extremadamente útil, con la ayuda de la cual es posible formar una señal de un voltaje dado en los terminales con una precisión mejor que 1 mV, por ejemplo, formas de onda arbitrarias en el rango de frecuencia de audio
  • aparecieron comparadores: dispositivos para comparar los valores de dos señales analógicas, puede ser útil decir al determinar el momento de sobrecorriente
  • Interfaz USB agregada a través de la cual puede conectar dispositivos a una computadora. De particular interés es la disponibilidad de opciones de administración de energía para implementar una interfaz compatible con USB tipo 3-C. Hablé de él en uno de mis artículos sobre Habré.
  • Apareció el acelerador AES para los procedimientos de cifrado / descifrado de 256 bits
  • UART tuvo la oportunidad de trabajar en modos de suspensión y soporte de hardware para protocolos LIN (una red simple, ampliamente utilizada en la industria automotriz), IRDA (protocolo de transferencia de datos a través de LED infrarrojos, recuerde controles remotos de TV), tarjeta SIM ...
  • Temporizadores extendidos y módulo PWM
  • el límite superior del rango de temperatura de operación aumentó a 125 grados
  • Mayor fiabilidad debido a la expansión de los modos de reinicio en caso de problemas de alimentación.
  • Se agregó un generador de valor aleatorio de hardware "honesto", una característica útil en criptografía

Bueno, para muchas aplicaciones, una adición insignificante en el precio se amortiza por completo, ya que puede negarse a cambiar a microcontroladores más caros de series de modelos superiores.

¿Y qué agregará la transición al Cortex-M4, además del aumento del precio un par de veces?




  • La frecuencia máxima del reloj se eleva a 80 MHz.
  • Un bloque pareció acelerar los cálculos de coma flotante
  • Por supuesto, la memoria interna máxima ha aumentado
  • Los modelos con 100 patas o más admiten trabajar con memoria estática externa.
  • USB aprendido a trabajar en modo HOST
  • El controlador de interfaz CAN apareció. Esta es una interfaz muy prometedora diseñada para aplicaciones altamente confiables. Comenzó su marcha victoriosa con la industria automotriz y ha estado librando una guerra prolongada con el RS-485 obsoleto en la industria de la automatización industrial extremadamente conservadora durante casi 20 años.
  • Ha aparecido una interfaz para conectar la tarjeta SD. Una característica muy útil: ¡agregue un soporte para 50 centavos a su dispositivo y obtenga un medio de almacenamiento extraíble de decenas de gigabytes de tamaño! La mayoría de las tarjetas logran funcionar con el SPI habitual, pero mucho más lento
  • Agregaron un amplificador operacional incorporado con una amplia variedad de modos de operación. Gracias a esta y a las funciones anteriores, para mi último proyecto de un estetoscopio inalámbrico, tuve que detener la elección en M4 en lugar de M0 +. Como resultado, se hizo posible controlar la amplificación de la señal desde el micrófono MEMS y ahorrar decenas de horas de grabaciones de audio del trabajo del corazón en la tarjeta SD
  • El módulo criptográfico aprendió a leer las funciones HASH en el hardware.
  • El controlador de aplicaciones táctiles se ha mejorado y ahora admite no solo botones, sino también elementos de desplazamiento

Cortex-M7: cuando quieres más ...




En la gran cantidad de proyectos, las capacidades proporcionadas por los núcleos anteriores son suficientes, pero también ocurren excepciones. Personalmente, esto me sucedió solo un par de veces, y solo una vez por una muy buena razón: requería un alto rendimiento para preparar datos para ASIC, un controlador Ethernet y un bus CAN-FD con una tasa de cambio aumentada.

Si en el nivel de microcontroladores universales con núcleos Cortex 4 y menores, en mi opinión subjetiva, ST es ahora el líder en términos de precio / funcionalidad, entonces, en el área de chips de mayor rendimiento, es inferior al liderazgo de ATMEL, o más bien, MICROCHIP que recientemente lo ha absorbido. Por lo tanto, opté por la serie ATSAMV71, a partir de $ 6.

Además de lo anterior (controlador Ethernet y bus CAN-FD), en general, obtenemos un núcleo con un acelerador de operaciones que aumenta significativamente la productividad, operando a una frecuencia de reloj de hasta 300 MHz, interfaces para conectar una matriz de video y soporte para memoria dinámica.

En conclusión, le preguntaré a aquellos que tienen experiencia en la comunicación con microcontroladores, le pediré que elija la respuesta adecuada a la pregunta.

Source: https://habr.com/ru/post/445936/


All Articles