Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
Meetup 18.1Crea tus prototipos
electrónicos con ARM Mbed
FLISOL Bogotá
Leandro Perez Guatibonza28 de Abril de 2018
Leandro Perez Guatibonza
● Colombiano● Ingeniero Electrónico● Más de 12 años de experiencia en Desarrollo Software → Java, COBOL, Android y
Sistemas Embebidos (C, Arduino y Assembler → Microcontroladores y Raspberry Pi)● Apasionado por el Internet de las Cosas (IoT) → Me gusta crear y programar las
cosas● En 2016, cree el IoT Colombia Meetup como punto de encuentro de las tecnologías
IoT en Colombia● A cargo de Mbed Colombia Meetup → Microcontroladores ARM y el sistema
operativo Mbed OS → Crear cosas IoT usando Mbed OS
Agenda
● Arquitectura ARM● Mbed OS● Mbed Colombia
Arquitectura ARM
● ARM es una arquitectura RISC (Reduced Instruction Set Computer) de 32 y 64 bits → ARM Holdings
● RISC → Requieren menos transistores que los procesadores x86 CISC → Reducción de costes, calor y energía → Ideales para aplicaciones de baja potencia
● La arquitectura ARM es licenciable → ARM Holdings vende núcleos como IP (Intellectual Property) → Crear microcontroladores y CPUs basados en este núcleo
● Empresas Licencias ARM → Atmel, Freescale, LG, Microsoft, NEC, Nintendo, Nokia, Nvidia, Sony, MediaTek, NXP, Qualcomm, Samsung, STMicroelectronics, Texas Instruments, Yamaha, etc
https://es.wikipedia.org/wiki/Arquitectura_ARM
ARM Cortex-M
● Procesadores más pequeños y de más baja potencia
● Optimizados para procesamiento en tiempos real y aplicaciones de microcontroladores
● Cortex-M0, Cortex-M0+ y Cortex-M23 → Mínimo costo, área y potencia
● Cortex-M3, Cortex-M4, Cortex-M33 --> Balance entre aplicaciones de 32-bit y eficiencia energía
● Cortex-M7 → Aplicaciones embebidas de alto desempeño
ARM Cortex-M / STMicroelectronics
Ofrece diferentes tipos de implementaciones para ARM Cortex-M agrupadas en las STM32 Nucleo Board:
● Nucleo-32● Nucleo-64● Nucleo-144
http://www.st.com/en/evaluation-tools/stm32-mcu-nucleo.html?querycriteria=productId=LN1847
ARM Cortex-M / NXP (Freescale)
Ofrece diferentes tipos de implementaciones para ARM Cortex-M agrupadas en las Freedom Boards:
● E● L → KL25● K● V● W
https://www.nxp.com/support/developer-resources/hardware-development-tools/freedom-development-boards/mcu-boards:MCU-BOARDS-FREEDOM-DEVELOPMENT-BOARDS
Mbed OS
Mbed OS - Características
● Dispositivos○ Soporte amplio rango de dispositivos ARM Cortex-M (M0+, M3, M4)○ Herramientas de desarrollo bajo costo○ Programación USB Drag and Drop
● Ejecución Tiempo Real○ Nucleo RTOS basado en sistema operativo open source CMSIS-RTOS RTX○ Ejecución multihilo en tiempo real
Mbed OS - Características
● Open Source○ Apache 2.0 → Comercial y Personal
● Facil de Usar○ Estructura Modular Librerías → Automáticamente incluidas en el dispositivo○ Mbed OS API → Código limpio, portable y simple○ Proporciona gran número de ejemplos que pueden ser importados para probar
● Comunidad○ Contribución y colaboración → 60 Socios ARM, +100.000 desarrolladores○ Muchos componentes lo ha contribuido la comunidad → Foros, GitHub
Mbed OS - Características
● Seguridad Punto a Punto
○ Hardware → Supervisor Kernel (uVisor) → Dominios seguridad aislados → Restringe acceso a memoria y periféricos
○ Software → SSL y TLS incluidos Mbed OS API
● Drivers y Soporte Librerías○ Soporta un amplio rango de periféricos → Entradas y Salidas Análogas y
Digitales, Interrupciones, I/O Port, PWM, I2C, SPI, etc.
Mbed OS - Herramientas
● IDE Online → No requiere configuración y es la ruta más rápida para iniciar
● Herramientas → Usando los compiladores ARM 5, IAR y GCC, se puede usar Mbed
● Compatibilidad → Mbed OS 2.0 → Mbed OS 5.0. Puede exportar los proyectos a otros IDE’s tales como Keil MDK
Mbed OS - Conectividad
Amplio rango opciones de conectividad soportado con librerías, hardware, tutoriales y ejemplos
Mbed OS - Boards Mbed
Existen más de 100 boards disponibles: https://os.mbed.com/platforms/
● NUCLEO-F446RE → STMicroelectronics
● FDRM-KL25Z → Freescale
● EFM32 Zero Gecko → Silicon Labs
● MultiTech mDot → MultiTech
Mbed OS - Ecosistema
Mbed Colombia
Mbed Colombia - Vision
● Documentar mi proceso de aprendizaje → Facilitarle a otros el aprendizaje de todo el ecosistema ARM Mbed
● Aprender a conectar estos dispositivos a cualquier plataforma IoT
● Proporcionar información de calidad sobre Mbed OS en español
● Aprovechar todos los recursos disponibles para desarrollar de forma ágil y práctica proyectos IoT
Mbed Colombia - Meetuphttps://www.meetup.com/mbedcolombia
Mbed Colombia - Bloghttps://mbedcolombia.wordpress.com
Mbed Colombia - Apuntes
https://mbedcolombia.wordpress.com/apuntes/
● Introducción (27/02/2018)● Plataforma mbed IoT (28/02/2018)● Eligiendo tu mbed Board (01/03/2018)● El porqué elegí mbed (05/03/2018)● Board mbed NUCLEO-F446RE (06/03/2018)● Pines I/O Board mbed Nucleo-F446RE (07/03/2018)● Creación Cuenta mbed (12/03/2018)● Hola Mundo mbed (27/03/2018)
● Tutoriales Paso a Paso → Roadmap similar CTK4TIM → Digital I/O, Analog I/O, LCD, SPI, I2C, USB, Timers, etc
○ Código → Github ó Mbed○ Montaje Protoboard y Plano → Fritzing
● Meetup Online → Streaming Youtube / Preguntas por Twitter
● Boards Mbed Low Cost → STM32F103C8T6 → Gabriel Garciahttps://os.mbed.com/users/hudakz/code/STM32F103C8T6_Hello /
Mbed Colombia - Pasos a Seguir
Mbed Colombia - Canales de Contacto
● Blog → https://mbedcolombia.wordpress.com
● Meetup → https://www.meetup.com/mbedcolombia
● Facebook → Mbed Colombia
● Twitter → @leandropg
Preguntas / Sugerencias
Meetup 18.1Crea tus prototipos
electrónicos con ARM Mbed
FLISOL Bogotá
MUCHAS GRACIAS