Impresionante incrustado
Una lista curada de un increíble recurso integrado.
Tabla de contenido
- Impresionante incrustado
- Entrevista
- Habilidad de software integrado
- Común
- Programación de MCU
- Programación desnuda (no necesito MCU)
- MSP430
- TM4C123
- MSP432
- STM32
- STM32F7
- Stm8
- ESP8266
- Frambuesa
- Beaglebone
- Desarrollo del controlador de núcleo de Linux y del dispositivo
- Asamblea
- RTOS
- Automotor
- Sistema operativo
- Ventana
- Compilador
- Cargador de arranque
- Makfile
- Periférico
- Unidad de protección de memoria
- USB
- Otros
- Desarrollo de GUI integrado
- Aprendizaje automático y AI en MCU
- Utilidades
- Consejos y trucos
- Blogs tecnológicos
- Pespbedded
- ¿Buscas más listas como esta?
- Libros
Entrevista
- Preguntas de entrevista integradas
- Archivo de preguntas de la entrevista por empresa
- Codificación de la Universidad de la entrevista: un plan de estudio completo de informática para convertirse en ingeniero de software.
Habilidad de software integrado
- 16 Habilidades esenciales para ingeniero integrado
- Cómo ser programador de bajo nivel
- Matriz de competencia del programador
Común
- Tamaño entero en C en un sistema de 32 bits y 64 bits
- Teraterm - Referencia de comandos TTL
- Scripts de Teraterm
- Primer de archivo de comando enlazador
- El proceso de construcción de C
- Construyendo sistemas de brazo de metal desnudo con GNU
- Elfo: formato ejecutable y vinculable
- Cadenas de herramientas
- ¿Qué es una interfaz binaria de aplicación (ABI)?
- Arm Cortex M4 Blink Ejemplo (script de enlazador)
- Un script de enlazador de muestra
- Vinculación y carga
- Software integrado _ Comenzando
- Cómo convertir de un archivo de dispersión Armlink a un script de enlazador GNU LD
- Usando el enlazador GNU
- Curso de programación de sistemas integrados modernos: aprenda de los conceptos básicos a la práctica de programación integrada moderna.
Programación de MCU
Programación desnuda (no necesito MCU)
- Programa de metal desnudo más simple para el brazo (tabla de contenido)
- Guía de programación de metal desnudo: una guía detallada para principiantes
- C ++ en tiempo real-Código de metal desnudo complementario al libro C ++ en tiempo real.
MSP430
- MSP430-GCC
- CS4101: Introducción a los sistemas integrados: el curso está diseñado en torno a los laboratorios, utilizando TI MSP430 LaunchPad y Arduino Uno para discutir conceptos como E/S básica, sincronización y marcos, manejo interactual, comunicación en serie, sistemas operativos integrados, sincronización, etc.
- MSP430 -Template: una plantilla para el firmware MSP430.
- Referencia de MSP430
TM4C123
- Sistemas incrustados.
- Macros en Tivaware
- Conversión analógica a digital, adquisición de datos y control
- Sistemas integrados: forma el mundo
- Cómo: desarrollar en el TI TIVA LaunchPad usando Linux
- Sistema de construcción de línea de comandos de Linux para generar binarios para TM4C123 (ARM Cortex M4)
- El tutorial completo para Stellaris Launchpad Development con GNU/Linux (I)
- Comenzando con el Ti Stellaris LaunchPad en Linux
- Sistemas integrados con tm4c123 @valvano
- Crear proyecto de demostración de Freertos utilizando el compilador GCC
- Gestor de arranque en serie en el microcontrolador TM4C12X
- Gestor de arranque tivaware
- Diagnóstico de problemas de desarrollo comunes y consejos e información para dispositivos TM4C
- Freertos-GCC-TM4C123GLX-Un puerto de Freertos a los Instrumentos de Texas Tiva TM4C123GLX LaunchPad.
- Stellaris_tm4c123g_gcc_template - Proyecto de plantilla de instrumentos de Texas para la serie TM4C123 utilizando GNU Toolchain.
- TM4C -GCC - TM4C123 Plantilla de proyecto GCC.
- TivaApps-Ejemplo de aplicaciones Hello-World para Texas Instruments Ti-RTos para Tiva C usando un host Linux
- Conductores y ejemplos: controladores para periféricos internos y módulos externos para Tiva C, ejemplos de características de Freertos en desarrollo/freertos
MSP432
- Redes Bluetooth en tiempo real-UTAUSTINX-Aprenda los fundamentos de diseño de un sistema operativo (RTOS) en tiempo real y cómo construir una red Bluetooth en este curso práctico basado en proyectos.
STM32
- Gestor de arranque STM32
- Pruebas para programar STM32 Nucleo en C con GCC Arm Toolphein y Libopencm3
- Un proyecto de demostración de Freertos que se ejecuta en un tablero de descubrimiento STM32F4.
- Gestor de arranque DFU para chips STM32
- Mejorador personalizable para microcontroladores STM32.
- Pila de dispositivos USB livianos para microcontroladores STM32
- Programación STM32 con compilador de GNU integrado
- Una pequeña LIB de gráficos 3D portátiles para micro controladores (pantalla OLED)
- Comenzando con el tablero de descubrimiento STM32F4 utilizando el IDE EMBITZ
- Proyectos Libopencm3 y Freertos utilizando el STM32F103C8T6 MCU
- Una plantilla para BUILTING STM23F0 Proyectos con GCC
- Programa de Flash de código abierto para STM32 usando el ST Serial Boot Loader
- STM32-HID-BOOTLOGADER-HERRADER USB HID sin controlador y herramienta de flashing para dispositivos STM32F10X
- STM32L1XX -Template: una plantilla para construir firmware para el STM32L1XX.
- STM32F103C8 Ejemplos
- STM32F103 - Programación de metales desnudos en una placa genérica STM32F103C8
- stm32_samples
- Código de ejemplo STM32F4DE
- STM32F4XX con óxido en el HAL: una serie de tutoriales para construir aplicaciones STM32F4XX con óxido.
- STM32-RF-SCANNER-STM32 y NRF24L01+ Basado en el escáner RF de 2.4GHz
- convertidor DC-DC basado en STM32-DC-DC-STM32
- Rustlink - Pequeño conjunto de herramientas de óxido para programar dispositivos STM32
STM32F7
- Serie STM32F7
- STM32 Elinux
- Stm32f7 os.mbed
Stm8
- STM8-Bare-Min-Pequeña biblioteca periférica para STM8S
- STM8 -Bootloader - Loader de arranque en serie para microcontroladores STM8S
- STM8-MULTI-TASKER-STM8-MULTI-TASKER-PROFECTURADOR DE RODOS PREENTIVO/COOPERATIVO PARA STM8
- Cosas de Wolk STM8
- STM8S001J3_Tiny_Board - Una pequeña placa de desarrollo para MCU STM8S001J3 diseñado en KiCad.
ESP8266
- Un gestor de arranque de código abierto para el ESP8266
- Una herramienta de creación ROM ESP8266
- Wi-Fi ESP8266 Viaje de aprendizaje
- Wi-Fi ESP32 Viaje de aprendizaje
- Sming - marco ESP8266/ESP32 IoT
Frambuesa
- Raspberry pi desnudo de metal y enlace relacionado
- Chibios/RT en Raspberry Pi
- Ejemplos de metal desnudo a base de brazo de frambuesa pi
- Tutoriales de Raspberry Pi 3 de Metal Bare
- Proyectos abiertos: Raspberry, Beaglebone BSP
- Un sistema operativo en tiempo real en Raspberry Pi
- Un puerto de fretos a la frambuesa pi
- Fretos por visión con éxito
- Explorando el ensamblador Aarch64 - Raspberry
- Un gestor de arranque para la Raspberry Pi usando el dispositivo Ethernet
- Frambuesa de metal desnudo Pi
- Programación de metales desnudos en C
- Horneado PI - Desarrollo de sistemas operativos
- Busque el tema 'Raspberry' en GitHub
- Elinux: Raspberry Pi Programming o Elinux: RPI Hub
- Stanford CS104E - Un curso experimental sobre sistemas operativos
- Sistemas informáticos
- Construya un sistema ARM64 con sede en Debian para Raspberry Pi 3
- Desarrollo del sistema operativo de aprendizaje utilizando el núcleo Linux y Raspberry Pi
- Un puerto de freertos a la Raspberry Pi 2B. Con USB+Ethernet+TCP/IP.
- Tiano Core UEFI de 64 bits para la Raspberry Pi 3
- Cxcore-raspberrypi3-ubuntu-18.04-aarch64
- Fuente de muestra: Código fuente de Baremetal para Raspberry
- Fuente de muestra: Narcos: un núcleo ultraligero de metal desnudo para Raspberry Pi 3
- Fuente de muestra: puerto Freertos v9.0.0 para Raspberry Pi 1
- Fuente de muestra: un experimento de metal desnudo con el RaspberryPi
- 「Baremetal で遊ぶ Raspberry Pi 」のプログラムです。
- UEFI para RaspberryPi2 y RaspberryPi3 basado en Linaro EDK2
- Episodes de brazo y explotación del brazo para IoT
- Desarrollo del código de shell y exploit de brazo - Bsidesmunich 2018
- Programación de metal desnudo de 64 bits en RPI-3
- Raspberry Pi 3 Bare Metal
- Código de ensamblaje para Raspberry Pi
- Un código público de frambuesa Baremetal Pi
- Raspberry-pi tutorial de metal desnudo
- UCOS-II en Raspberry Pi
- Porting Ucosii a la Raspberry Pi A+/B+/2B
- Ejemplos de metal desnudo
- Laboratorio de metal
- Explorando Raspberry Pi: interfaz para el mundo real con Linux incrustado {Libro}
- Explorando Raspberry Pi: interfaz para el mundo real con Linux incrustado {Sitio web}
Beaglebone
- Referencias de Beaglebone Black I2C
- Aprendizaje de la programación de Beaglebone Python
- Implementación simple de un sistema operativo para el Beagleboard C4 con el procesador ARMV7 A8.
- Varios proyectos que utilizan instrucciones de hardware de bajo nivel para interactuar con LED, salida de altavoces e entrada de joystick.
- BSP compacto de Windows para BeagleBone de TI
- BBB-Baremetal- trabaja en el negro Beaglebone (metal desnudo)
- Ejecutando un Baremetal Beaglebone Black & Parte 2
- Metal desnudo en el Beaglebone (negro y verde) y Link1 + Link2
- Un tutorial sobre el desarrollo de Be-Metal [OS] en Texas Instruments Beagleboard.
- Proyecto de Metal B Bare para Beaglebone, Ti Sitara AM335X
- Aplicaciones de metal desnudo en OSD335X usando U-Boot
- BBB-Aasm-Demo-Aplicación de Baremetal extremadamente pequeña para BeagleBone Black
- Beaglebone - Comenzando con JTAG y CCS
- Beagleboardjtag
- beaglebone_samples
- Fretos para Beaglebone Black
Desarrollo del controlador de núcleo de Linux y del dispositivo
- Linux adentro: un poco sobre un núcleo de Linux
- Escritura de controladores de dispositivos en Linux
- Tutoriales yolinux
- Programación de controladores de Linux
- Materiales de capacitación gratuitos y presentaciones de conferencias
- Ebook: controladores o diapositivas de Linux: controladores de Linux
- C -Periphery - Biblioteca de CA para E/S periférica (GPIO, SPI, I2C, MMIO, Serial) en Linux.
- Openembedded,
- Prácticas de controlador de Linux
- Explotación del kernel de Linux: un montón de enlaces relacionados con la explotación del núcleo de Linux
- Truco del módulo de kernel de Linux
- ¡Inicie el desarrollo del módulo del núcleo Linux!
- Minimal Linux Live - una pequeña distribución educativa de Linux
- Universidad de programación de bajo nivel #Linux-kernel-and-dispositivo-conductor
- Proyecto Yocto: cree sistemas personalizados basados en Linux independientemente de la arquitectura de hardware.
- BuildRoot: una herramienta simple, eficiente y fácil de usar para generar sistemas Linux integrados a través de la compilación cruzada.
Asamblea
- GCC-Enline-Ensembly-Howto
- Programación de ensamblaje
RTOS
- Lista de sistemas operativos en tiempo real de código abierto
- Rosa
- Freertos
- Freertos - Explicación
- Documentación de referencia de la API de Fretos
- Cómo escribir un pequeño RTOS
- RTO de SCRACH
- Mini-brazo-OS y QEMU con un STM32 o aquí: construya un núcleo de sistema operativo multitarea mínimo para la serie Cortex-M de brazo desde cero
- Escribir un sistema operativo simple desde cero
- Sistema operativo gratuito en tiempo real (RTO) diseñado para aplicaciones profundamente integradas
- Desarrollo MPSOC Freertos
- AtomThreads: RTOS de código abierto
- Control de motor de alto rendimiento
- Minix3: RTOS de código abierto
- 30 días hacen el sistema operativo -> yos @yannik
- Comunidad: Osdev.org, Reddit/Osdev
- Grupo de sistemas en tiempo real
- RTO C ++ orientado a objetos para microcontroladores
- RT-Thread es un sistema operativo IoT de código abierto de China.
- Cómo crear un sistema operativo desde cero
- Fuente de muestra: Tetros es una pequeña característica rica en clon de tetris que está escrito en el ensamblaje.
- Fuente de muestra: RTOS para microcontroladores
- Fuente de muestra: un poderoso RTOS integrado para los microcontroladores de la corteza del brazo
- Fuente de muestra: un sistema operativo integrado para microcontroladores basados en Cortex-M ARM
- Fuente de muestra: RNK es un RTOS dirigido a la arquitectura ARM.
- Fuente de muestra: RTOS-FROMARS
- Fuente de muestra: sistema operativo incrustado para PIC32MX270F256B
- Cómo terminé escribiendo un nuevo núcleo en tiempo real
- Fuente de la muestra: TNEO: un núcleo preventivo en tiempo real preventivo bien formado y cuidadosamente probado para MCU de 16 y 32 bits
- Yaos es un sistema operativo integrado para dispositivos de Internet de las cosas (IoT), específicamente para un procesador de un solo núcleo sin virtualización de MMU.
- RT-Presión para Raspberry Pi 2B
- TOCK: un sistema operativo integrado seguro para microcontroladores basados en Cortex -M.
- Alios-Things-Alios Las cosas publicadas por Alibaba es una implementación de código abierto del sistema operativo (OS) para Internet de las cosas (IoT).
- Cortos & Cortos RTO cooperativos simples: un RTOS minimalista de código abierto.
- µoS ++ Referencia
- TNKERNEL: un núcleo compacto y muy rápido en tiempo real para los microprocesadores integrados 32/16/8 bits.
- OS FEMTO - Un sistema operativo preentivo (RTOS) muy conciso en tiempo real (RTO) para microcontroladores incrustados con RAM y flash mínimos, digamos 2kb .. 16kb flash y 128 .. 1024 bytes Ram.
Automotor
- Fuente de muestra: el trampolín es un RTOS estático para pequeños sistemas integrados. y laboratorios
- Fuente de la muestra: una integración Un proyecto AutoSAR de ejemplo que cada parte de AutoSar (OS, RTE, BSW, MCAL) se recolectan de diferentes código abierto.
- Software automotriz (OSEK y AutoSAR): porque no soy poderoso, así que decidí desarrollar una parte pequeña pero inteligente del software automotriz basado en el código abierto, y crear un entorno general de estudio de software AutoSar y automotriz.
Sistema operativo
- Uclinux: el proyecto Linux/microcontrolador integrado es un puerto de Linux a sistemas sin una unidad de gestión de memoria (MMU).
- Tizen
- Bootstrap usted mismo para escribir un sistema operativo desde cero. Un libro para auto-desagüe.
- Kernel 101 - Escribamos un núcleo
- El pequeño libro sobre el desarrollo del sistema operativo
- Tetros - Tetris que se ajusta al sector de la arranque.
- Escribir un sistema operativo simple desde cero
- Tutoriales de desarrollo del núcleo de Jamesm
- Bones Bones: un kernel simple para X86 de 32 bits y arrancárselo.
- Serie de desarrollo del sistema operativo
- 7 pasos para escribir un planificador cooperativo simple
- Un simple núcleo del sistema operativo para la investigación, la enseñanza y la diversión
- Sistemas operativos C Término 2018
Ventana
- Blog de Guruce
- Blog del equipo base de Windows CE
- Blog de Devwince
- BSP compacto incrustado de Windows para Raspberry Pi
- Paquete de soporte de tablero integrado de Windows para BeagleBone
Compilador
- Compilador de brazo - Guía del usuario de Armasm
Cargador de arranque
- Escribir un cargador de arranque en ensamblaje y c
- Escribir un gestor de arranque parte 3
- Un gestor de arranque para microcontroladores basados en ARM Cortex-M
- OpenBlt: un código de arranque de código abierto y portátil para microcontroladores.
- Cargador de elfos ARMV7M
- Escribir un gestor de arranque parte 1
- Can-Bootloader: el gestor de arranque utilizado para flashear nuestras tablas conectadas
- Cargadores de arranque 101
- Comprender el proceso de arranque: Link1, Link2, Link3
- Palabras clave: Hello World Bootloader , escribir un gestor de arranque desde cero , cómo escribir un gestor de arranque en el ensamblaje , ...
Makfile
- Gestión de proyectos con GNU Make
- GCC y hacer
Periférico
Unidad de protección de memoria
- Construyendo componentes de hardware para la protección de la memoria de las aplicaciones en un pequeño procesador
- Keystone Architecture: Unidad de protección de memoria (MPU)
USB
- TinyusB: una pila USB de código abierto para una variedad de sistemas integrados.
Otros
- Un enfoque práctico para el filtro de Kalman y cómo implementarlo
- Programación del sistema integrado: sumergirse en el programa de estudios para la investigación.
- Presentaciones de ELC 2018
- Arm Edition: Sparky Arm Edition es una versión chispeante creada para una sola placa mini computadora Raspberrypi.
- El simulador GEM5 es un bien conocido simulador sofisticado utilizado para la investigación del sistema informático tanto a nivel de arquitectura como de microarquitectura. La página principal está aquí.
- Distribución de Android de Lineageos
- La plataforma nocan
- OS en tiempo real en sistemas integrados
- Estos proyectos se produjeron en las cinco semanas de ECE 4760 cada año.
- Biblioteca avanzada de fallas para fallas para la serie ARM Cortex-M MCU
- MCU-Starter-Projects: proyectos de inicio simples para el desarrollo de MCU de metal desnudo.
- DirtyJTag - Firmware de adaptador JTAG para STM32F1
- Genic_mcu_software_infrastructure: proporcione infraestructura de software necesaria, servicio, macros para admitir un concepto o paradigma de abstructo de alto nivel, como OOPC, FSM, delegado (basado en eventos) y etc.
- Apolo: una plataforma de conducción autónoma abierta.
- Un entorno de desarrollo para Arm Trustzone con GlobalPlatform Support
- Una biblioteca de plantilla C ++ para aplicaciones integradas
- Reelaboración incrustada de C ++ STL -
basic_string , basic_ostream ETC. ALEGADO DESED. Plataforma cruzada (incluida AVR).
Desarrollo de GUI integrado
- Asistente integrado: GUI sofisticada para su plataforma integrada
- LVGL-Biblioteca de gráficos para crear una GUI integrada con elementos gráficos fáciles de usar, hermosos efectos visuales y huella de baja memoria. Ofrece anti-aliasing, opacidad y animaciones utilizando solo un búfer de cuadro.
Aprendizaje automático y AI en MCU
- NNOM: una biblioteca de red neuronal de nivel superior para microcontroladores.
- NN4MP
- Biblioteca de aprendizaje integrado (ELL): la biblioteca de Microsoft para implementar modelos inteligentes aprendidos en máquina en plataformas restringidas de recursos y pequeñas computadoras de una sola placa.
- SDK de procesamiento neural de Qualcomm para AI: las bibliotecas para los desarrolladores ejecutan modelos NN en plataformas móviles Snapdragon que aprovechan la CPU, GPU y/o DSP.
- CMSIS NN: una colección de núcleos de redes neuronales eficientes desarrolladas para maximizar el rendimiento y minimizar la huella de memoria de las redes neuronales en los núcleos del procesador Cortex -M.
- Biblioteca de cómputo de brazo: conjunto de funciones optimizadas para el procesamiento de imágenes, la visión por computadora y el aprendizaje automático.
- UTENSOR - Biblioteca de inferencia AI basada en MBED (un RTOS para conjuntos de chips de brazo) y TensorFlow.
- Incredai: una biblioteca que proporciona elementos de aplicaciones AI a C ++.
- Kann: una biblioteca C ligera para redes neuronales artificiales.
- M2CGEN: una herramienta CLI que permite transmisión de modelos ML clásicos capacitados en un código nativo de varios lenguajes de programación con cero dependencias, incluidas C.
Utilidades
- lm4tools
- MSPDEBUG - Herramienta de depuración para MSP430 MCU
- PYCS - Herramientas de rastreo y depuración de rastreo de Vython Bass Bassight
- NaiveSystems Analyze - Herramienta de análisis estático para la seguridad y cumplimiento del código
- Serial Studio: visualice, analice y transmita los datos de Internet generados por su proyecto MCU
Consejos y trucos
- Hojas de trucos impresionantes
Impresionantes hojas de trucos para la utilidad del desarrollador, como Git, Vim, Tmux, Sublimetext, Markdown, Shell.
- Config VIM para leer el código fuente del núcleo de Linux
- Hoja de trucos de comando de depuración GNU GDB
Blogs tecnológicos
- Lo que un programador C debe saber sobre la memoria
- Lo que todo programador debe saber sobre la memoria
- Lo que todo programador C debe saber sobre el comportamiento indefinido Parte 2 Parte 3
- Una guía para el comportamiento indefinido en C y C ++
- Control de ingeniería de software
- Boletín semanal de Inbredsys
Pespbedded
- Se elimina la sección de arranque (GCC, LD, AR, AS)
- ¿Qué son los archivos .axf?
¿Buscas más listas como esta?
- Awesome -C: una lista curada de impresionantes marcos, bibliotecas y software de C.
- Una lista curada de tutoriales basados en proyectos en C
- Lista curada de tutoriales basados en proyectos
- Lista curada de listas impresionantes
- Una lista curada de impresionantes herramientas, proyectos, imágenes y recursos de Raspberry PI
- Lista curada de autos autónomos y recursos de vehículos autónomos
- Sistemas de incrustación impresionante
- Hojas de trampas impresionantes: hojas de trucos increíbles para la utilidad de desarrollador, como Git, Vim, Tmux, Text Sublime, Markdown, Shell.
- Awesome-Embedded-Rust-Lista curada de recursos para el desarrollo integrado y de bajo nivel en el Languague de programación de óxido.
- TheEmbedDedNewTestament.github.io
Libros
- Dominar la Raspberry Pi
- C Modern C