1.13k likes | 1.4k Views
Diseño de S.E. usando placa Lanín. EmTech S.A. Que es un sistemas embebido ?. Un sistema embebido se puede definir como un sistema electrónico diseñado específicamente para realizar determinadas funciones.
E N D
Diseño de S.E. usando placa Lanín EmTech S.A.
Que es un sistemas embebido? • Un sistema embebido se puede definir como un sistema electrónico diseñado específicamente para realizar determinadas funciones. • El hardware y el software están diseñados y optimizados para resolver un problema en concreto.
Donde encontramos un sistema embebido? Electrodomésticos Juguetes Sector Aeroespacial Aplicaciones Instrumentación Comunicaciones Automatización Vehículos Robótica
¿Cuál es la arquitectura de un sistema embebido? Interfaz con el usuario Alimentación CPU Entrada/Salida Comunicaciones
¿Que es ARM? • ARM es un empresa que se dedica al diseño de cores y algunos otros aditamentos (periféricos, controladores de memoria, etc), pero no a la fabricación de chip.
4 LEDs y 2 Pulsadores Ideales para corroborar el correcto funcionamiento de las diferentes aplicaciones, para ingresar estímulos externos a la aplicación o como interfaz de usuario
Conexión USB host Para conectar diferentes periféricos a la placa, tales como teclado, mouse, pendrive, etc.
Conexión RS 485 Posee dos canales RS485 half-duplex
Zócalo para memoria µSD Alta capacidad de almacenamiento tanto para guardar datos de adquisiciones como para almacenamiento de paginas web, archivos de audio, etc.
Conexión USB device Para conexión de datos y alimentación desde una PC. Adicionalmente permite utilizar el bootloader del microcontrolador.
Ethernet Ethernet 10/100Mbps para implementación de stack TPC/IP
Headers Pines de uso general, compatibles con placas DTR desarrolladas por Emtech S.A. Implementa algunas líneas del periférico FSMC para control de memoria Nand-Flash, Muxed-Nor-Ram o LCD
Alimentación Externa o USB, selección mediante jumper
Serial/USB y JTAG/USB Mediante un chip de FTDI se implementa la conversión de UART1 a USB para uso general y de JTAG a USB para programador/depurador on-board.
JTAG Adicionalmente se dispone del conector para utilizar un programador/depurador externo.
Que es un entorno de desarrollo? • Es aquel que permite integrar distintas herramientas de desarrollo dentro de un solo programa. • Editor, compilador, depurador. • Lanín-CM4 SDK. (Eclipse)
Porque Eclipse? • Código abierto • Interfaz amigable • Existen diferentes plugins que incrementan sus capacidades
Configuración de Eclipse Toolchain Código fuente Plataforma • CodeSourcery GNU • YAGARTO GNU ARM
Configuración de Eclipse • CodeSourcery GNU toolchain para ARM: Permite construir aplicaciones ARM embebidas. • YAGARTO GNU ARM toolchain: Es una EABI (embedded-application binary interface). Esto especifica las convenciones estándares para formatos de archivos, tipos de datos, uso de registros, etc.
Recordando… Electrodomésticos Juguetes Sector Aeroespacial Aplicaciones Instrumentación Comunicaciones Automatización Vehículos Robótica
Aplicaciones • Cualquier sistema puede clasificarse en : • Sistema sin requerimientos de respuestas en tiempo real. • Sistemas con requerimientos flexibles de respuesta en tiempo real. • Sistemas con requerimientos estrictos de respuesta en tiempo real.
Dos paradigmas de programación El software tiene acceso directo sobre los recursos del hardware. Para llevar a cabo este método en la placa Lanín, se utiliza la librería CMSIS. BareMetal El software utiliza un sistema operativo RTOS. En nuestro ejemplo práctico en la placa Lanín utilizaremos el ChibiOS. También se pueden correr diferentes sistema operativos, por ejemplo: Nuttx, FreeRTOS. etc. RTOS
¿Qué nos ofrece el fabricante para interactuar con el uC? La CMSIS es una librería común a todos los fabricantes de procesadores ARM Cortex-M y pretende establecer la abstracción del hardware. CorePeripheral Access Layer DevicePeripheral Access Layer Access Functions for Peripherals (optional)
CMSIS Estas librerías deben agregarse al proyecto creado en Eclipse, las cuales se encuentran comprimidas en un único archivo titulado “STM32F4 DSP and standard peripherals library”. Link de descarga: http://www.st.com/stonline/stappl/resourceSelector/app?page=resourceSelector&doctype=FIRMWARE&SubClassID=1521
system_stm32f4xx.c/.h Lugar donde se encuentra la configuración del reloj para los dispositivos STM32F4xx. Exporta la función SystemInit() que configura el reloj, los factores multiplicadores y divisores del PLL, AHB / APBx prescalers y Flash. Esta función es invocada en la inicialización justo después del reset y antes de comenzar el programa principal. La llamada se realiza dentro del archivo startup_stm32f4xx.s.