Un día tuve un profesor universitario a estudiantes de enseñar un truco matemático poderoso en EE101 - malla de análisis de circuito que creo. Antes de que él empezó, dijo, "Hoy en día, mis alumnos, les doy un arma grande." Captó nuestra atención y recuerdo la cita, pero lamentablemente, sería difícil a la malla de análisis hoy en día.
Hoy, mis lectores Instructible, ¡ dar armas grandes!
Para todos los programadores de software embebido de hardcore hot-shot, el tiempo paso hasta el siguiente nivel por aprender a usar un embebido en tiempo real OS en su próximo proyecto. No sólo tienes un derecho preferente en tiempo real OS basado en prioridades, usted también consigue todas las golosinas que van junto con una en tiempo real encajado sistema operativo como: tareas, colas, semáforos binarios, contar semáforos, semáforos recursiva y exclusiones mutuas para la comunicación y sincronización entre tareas o entre tareas y las interrupciones. Me da piel de gallina solo pensar en ello! Todo el poder de este software viene a través de FreeRTOS que ha sido por mucho tiempo.
Oh, y el hardware que vamos a ejecutar esta en hace mi cabeza girar. No estamos hablando de poco un micro Pic o Atmel. No, no, vamos a ejecutar este sistema operativo en un nuevo 24MHz 32 Bit ARM® Cortex™-M3 de ST Micro. La gente de ST Micro ha hecho una tabla de desarrollo, llamada el STM32 VL descubrimiento (VL es valor corto para línea), disponible para $12 dolares! Probablemente están vendiendo la Junta en una pérdida. Para la comparación, esta tabla es aproximadamente 1/3 el costo de un tablero estándar de Arduino.
El micro de STM32F100RBT6B de 24MHz que se utiliza en el tablero de descubrimiento es probablemente la más lenta que venden. La mayoría de estos chips ejecuta mucho más rápido! Sin embargo, la viruta sí mismo no es excesivamente cara - portadores de Digi-Key el chip de $3,50 en órdenes de más de 100 piezas. Para $3,50 obtienes 128 k flash y 8 k de RAM - no EEPROM necesitan desde el micro puede escribir a su propio flash.
A continuación se muestran las especificaciones frente web page de Mouser para el chip de STM32F100RBT6B:
- Base: ARM Cortex M3
- Ancho de Bus de datos: 32 bits
- Programa tipo de memoria: Flash
- Tamaño de la memoria de programa: 128 KB
- Tamaño de la RAM de datos: 8 KB
- Tipo de interfaz: I2C, SPI, USART
- Frecuencia de reloj máxima: 24 MHz
- Número de E/s programables: 51
- Número de temporizadores: 6
- Tensión de alimentación: 2 V a 3,6 V
- Temperatura máxima de funcionamiento: + 85 ° C
- Paquete / caso: LQFP-64
- 3 herramientas de desarrollo partido: EWARM, EWARM-BL, MDK-brazo, RL, ULINK2
- Herramientas de desarrollo de proveedor: STM32100B-EVAL
- Mínima temperatura de funcionamiento:-40 ° C
- De la en-viruta ADC: 12 bits, 16 canales
- On-Chip DAC: 12 bits, 2 canales
Acaso crees que el brazo no es bueno para pequeños proyectos, hice otra búsqueda en Digi-Key y dio vuelta encima de un chip de brazo incluso menos costoso de NXP. El micro NXP (Digi-Key parte número 568-5142-ND) es otro chip ARM Cortex-M0. Sin embargo, los funcionamientos de chip NXP a 50MHz (me estoy poniendo más gallina otra vez), tiene 8k de flash / 2k de RAM, IO 28 de 32 pines, I²C, SPI, USART para (tambor roll por favor) $1,46 @ 100pcs. Me encanta la ley de Moore en acción.
Aprendizaje de esta materia tiene aplicación real en el mercado de trabajo. Farfullar en sobre su última Arduino proyecto no va a conseguir mucha atención en una entrevista con un empleador. Sin embargo, explicar cómo usted resolver un problema de inversión de prioridad en una incrustado en tiempo real que os va! Confía en mí, me he entrevistado / contrató a un montón de programadores incrustados en los años como un ex empleado de Motorola.
Aquí hay un enlace para comprar el STM32 Discovery para $12 dólares de Mouser. Comprar dos por si acaso - el coste de envío es una loco por lo que también podría llegar a dos. Oh, y la pantalla LCD en el cuadro también viene de Mouser ($12,50 cada uno).
http://www.Mouser.com/stm32discovery/
El sistema operativo que vamos a utilizar se llama FreeRTOS y su dirección web se muestra a continuación.
http://www.FreeRTOS.org/
No se preocupe, usted puede utilizar este sistema operativo en su producto comercial sin exponer el código fuente. El sistema operativo utiliza una licencia GPL modificada y también es libre de regalías. Para un desglose completo de los términos de licencia aquí hay otro link:
http://www.FreeRTOS.org/index.html?http :// www.freertos.org/a00114.html
FreeRTOS en tiempo real OS ha sido de alrededor durante mucho tiempo y es muy estable. El sistema operativo ha sido portado a diferentes 26 arquitecturas y está muy bien documentado. Primero usé FreeRTOS en un producto de GM. Mi código, juntada con FreeRTOS, es corriendo en decenas de miles de vehículos. En aquellos días, usé FreeRTOS en un chip de Freescale Star12 (menos potente). Creo sinceramente que usando FreeRTOS en ese proyecto guardado mi tocino.
Tener el sistema operativo capaz de funcionar en 26 diferentes arquitecturas, como dije antes, no significa tu atado a una pieza específica de hardware. Me gusta la libertad de elección. Si desea bucear, te sugiero comprar el libro "Usando el FreeRTOS en tiempo Real núcleo – una guía práctica". La versión eBook es solamente $25 dólares - compra el libro ayuda al desarrollo de FreeRTOS demasiado. Usted puede encontrar fácilmente el libro en FreeRTOS.org. Nota, no tengo ningún interés financiero en FreeRTOS o ST - sólo me gusta tanto.
Para mantenerse en futuros desarrollos, que estoy trabajando en usted puede vincular siempre a mi canal RSS de mi sitio web. Intento publicar pasos intermedios antes de reunir suficiente material para un instructible. Mi dirección de sitio web (electrónica de potencia) se enumera a continuación:
Para el feed de RSS, añadir un marcador "en vivo" en:
www.pH-elec.com/RSS.XML