diff --git a/README.md b/README.md index c726537..6884786 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # Awesome-Embedded + A curated list of awesome embedded resource. Table of content @@ -7,11 +8,11 @@ Table of content * [Embedded Software Skill](#embedded-software-skill) * [Common](#common) * [Microcontroller](#mcu-programming) - * [TM4C123](#tm4c123) - * [STM32](#stm32) - * [MSP430](#msp430) - * [MSP432](#msp432) - * [STM8](#stm8) + * [TM4C123](#tm4c123) + * [STM32](#stm32) + * [MSP430](#msp430) + * [MSP432](#msp432) + * [STM8](#stm8) * [Raspberry](#raspberry) * [Bealgebone](#beaglebone) * [Assembly](#assembly) @@ -48,7 +49,7 @@ Table of content * [ELF – Executable and Linkable Format](https://2wisebit.wordpress.com/2018/06/08/elf-executable-and-linkable-format/) * [Toolchains](https://web.eecs.umich.edu/~prabal/teaching/resources/eecs373/toolchain-notes.pdf) * [What is an application binary interface (ABI)?](https://stackoverflow.com/questions/2171177/what-is-an-application-binary-interface-abi) -* [ ARM Cortex M4 Blink Example (Linker Script)](http://robotics.mcmanis.com/src/arm-blink/linker-script.html) +* [ARM Cortex M4 Blink Example (Linker Script)](http://robotics.mcmanis.com/src/arm-blink/linker-script.html) * [A Sample Linker Script](http://hertaville.com/a-sample-linker-script.html) * [Linking and Loading](http://www.iecc.com/linker/linker01.html) * [Embedded Software _ Getting started](http://www2.thu.edu.tw/~emtools/DOE_project/NCCU/embedded%20system/ESD_06_GettingStarted.pdf) @@ -62,33 +63,35 @@ Table of content * [Simplest bare metal program for ARM](https://balau82.wordpress.com/2010/02/14/simplest-bare-metal-program-for-arm/) ([table of content](https://balau82.wordpress.com/arm-emulation/)) ### MSP430 + * [MSP430-GCC](http://www.simplyembedded.org/tutorials/setting-up-a-virtual-machine/) ### TM4C123 + * [Analog to Digital Conversion, Data Acquisition and Control](http://users.ece.utexas.edu/~valvano/Volume1/E-Book/C14_ADCdataAcquisition.htm) * [Embedded Systems - Shape The World](http://users.ece.utexas.edu/~valvano/Volume1/E-Book/) * [HowTo: Develop on the TI Tiva LaunchPad using Linux](http://chrisrm.com/howto-develop-on-the-ti-tiva-launchpad-using-linux/) -* [Linux command line build system to generate binaries for TM4C123 (ARM Cortex M4) ](https://github.com/pitankar/TM4C) -* [The complete tutorial for Stellaris LaunchPad development with GNU/Linux (I) ](http://kernelhacks.blogspot.com/2012/11/the-complete-tutorial-for-stellaris.html) +* [Linux command line build system to generate binaries for TM4C123 (ARM Cortex M4)](https://github.com/pitankar/TM4C) +* [The complete tutorial for Stellaris LaunchPad development with GNU/Linux (I)](http://kernelhacks.blogspot.com/2012/11/the-complete-tutorial-for-stellaris.html) * [Getting Started with the TI Stellaris LaunchPad on Linux](https://www.jann.cc/2012/12/11/getting_started_with_the_ti_stellaris_launchpad_on_linux.html) * [Embedded Systems with TM4C123 @Valvano](http://users.ece.utexas.edu/~valvano/arm/) ### MSP432 ### STM32 + * [STM32 bootloader](http://ciesie.com/ks_stm32_bootloader.html) * [Tests to program STM32 Nucleo in C with GCC ARM embedded toolchain and libopencm3](https://github.com/balau/nucleo_tests) -* [A demo project of FreeRTOS running on a STM32F4 Discovery board. ](https://github.com/wangyeee/STM32F4-FreeRTOS) +* [A demo project of FreeRTOS running on a STM32F4 Discovery board.](https://github.com/wangyeee/STM32F4-FreeRTOS) * [DFU Bootloader for STM32 chips](https://github.com/devanlai/dapboot) ### STM8 - ## Raspberry * [ChibiOS/RT on the Raspberry Pi](https://www.stevebate.net/chibios-rpi/GettingStarted.html) -* [Raspberry Pi ARM based bare metal examples ](https://github.com/dwelch67/raspberrypi) -* [Bare metal Raspberry Pi 3 tutorials ](https://github.com/bztsrc/raspi3-tutorial) +* [Raspberry Pi ARM based bare metal examples](https://github.com/dwelch67/raspberrypi) +* [Bare metal Raspberry Pi 3 tutorials](https://github.com/bztsrc/raspi3-tutorial) * [Open Projects: Raspberry, Beaglebone BSP](https://devel.rtems.org/wiki/Developer/OpenProjects) * [A Real-Time Operating System on the Raspberry Pi](http://www.pebblebay.com/raspberry-pi-embedded/) * [A port of FreeRTOS to the raspberry pi](https://github.com/jameswalmsley/RaspberryPi-FreeRTOS) @@ -102,17 +105,18 @@ Table of content * [Stanford CS104e - An Experimental Course on Operating Systems](https://web.stanford.edu/class/cs140e/) * [Computer Systems](http://cs107e.github.io/) * [Build a Debian-based ARM64 system for Raspberry Pi 3](https://github.com/UMRnInside/RPi-arm64) -* [Learning operating system development using Linux kernel and Raspberry Pi ](https://github.com/s-matyukevich/raspberry-pi-os) -* [A port of FreeRTOS to the raspberry pi 2B. With USB+Ethernet+TCP/IP. ](https://github.com/Forty-Tw0/RaspberryPi-FreeRTOS) +* [Learning operating system development using Linux kernel and Raspberry Pi](https://github.com/s-matyukevich/raspberry-pi-os) +* [A port of FreeRTOS to the raspberry pi 2B. With USB+Ethernet+TCP/IP.](https://github.com/Forty-Tw0/RaspberryPi-FreeRTOS) * [64-bit Tiano Core UEFI for the Raspberry Pi 3](https://github.com/andreiw/RaspberryPiPkg) * [CXCORE-RaspberryPi3-ubuntu-18.04-aarch64](https://github.com/chainsx/ubuntu64-rpi#cxcore-raspberrypi3-ubuntu-1804-aarch64--) +* [Sample source: Baremetal source code for Raspberry](https://github.com/LdB-ECM/Raspberry-Pi) ## Beaglebone * [BeagleBone Black I2C References](https://datko.net/2013/11/03/bbb_i2c/) * [Learning BeagleBone Python Programming](https://hub.packtpub.com/learning-beaglebone-python-programming/) -* [Simple implementation of an OS for the BeagleBoard C4 with ARMv7 A8 processor. ](https://github.com/Oxydation/MinionOS) -* [Various projects that utilize low level hardware instructions to interface with leds, speaker output and joystick input. ](https://github.com/travelln/beaglebone-projects) +* [Simple implementation of an OS for the BeagleBoard C4 with ARMv7 A8 processor.](https://github.com/Oxydation/MinionOS) +* [Various projects that utilize low level hardware instructions to interface with leds, speaker output and joystick input.](https://github.com/travelln/beaglebone-projects) ## Linux Programming @@ -121,7 +125,7 @@ Table of content * [Linux driver programming](https://sites.google.com/site/embedded247/ddcourse) * [Free training materials and conference presentations](https://bootlin.com/docs/) * [eBook: Linux Drivers](https://sysplay.github.io/books/LinuxDrivers/book/index.html) or [Slides: Linux Drivers](https://sysplay.in/index.php?pagefile=linux_drivers) -* Communication: [OpenEmbedded](http://www.openembedded.org/wiki/Main_Page), +* Communication: [OpenEmbedded](http://www.openembedded.org/wiki/Main_Page), ## Assembly @@ -147,15 +151,13 @@ Table of content * [Real-time System Group](https://www.cs.york.ac.uk/rts/) * [object-oriented C++ RTOS for microcontrollers](https://github.com/DISTORTEC/distortos) * [RT-Thread is an open source IoT operating system from China.](https://github.com/RT-Thread/rt-thread) -* [How to create an OS from scratch ](https://github.com/cfenollosa/os-tutorial) +* [How to create an OS from scratch](https://github.com/cfenollosa/os-tutorial) * [Sample Source: TetrOS is a small feature rich Tetris clone which is written in Assembly.](https://github.com/daniel-e/tetros) * [Sample Source: RTOS for microcontrollers](https://github.com/jimtremblay/nOS) * [Sample Source: A Powerful embedded RTOS for ARM Cortex M microcontrollers](https://github.com/StratifyLabs/StratifyOS) * [Sample Source: An embedded operating system for ARM Cortex-M based microcontrollers](https://github.com/onkwon/yaos) * [Sample Source: rnk is a RTOS targeting ARM architecture.](https://github.com/raphui/rnk) * [Sample Source: RTOS-From-Scratch](https://github.com/RTOS-From-Scratch/RTOS-From-Scratch) -* [Sample Source: ]() -* [Sample Source: ]() ## AUTOSAR @@ -185,12 +187,12 @@ Table of content * [A practical approach to Kalman filter and how to implement it](http://blog.tkjelectronics.dk/2012/09/a-practical-approach-to-kalman-filter-and-how-to-implement-it/) * [Embedded System programming](http://www.5square.in/): Diving into Syllabus for investigation. * [ELC 2018 Presentations](https://elinux.org/ELC_2018_Presentations) -* [ARM Edition](https://sparkylinux.org/wiki/doku.php/sparky_arm): Sparky ARM Edition is a Sparky version created for a single board mini computer RaspberryPi. +* [ARM Edition](https://sparkylinux.org/wiki/doku.php/sparky_arm): Sparky ARM Edition is a Sparky version created for a single board mini computer RaspberryPi. * [The gem5 Simulator](https://developer.arm.com/research/research-enablement/system-modeling) is a well-known sophisticated simulator used for computer system research at both architecture and micro-architecture levels. Main page is [here](http://gem5.org/Main_Page). * [LineageOS Android Distribution](https://github.com/LineageOS) * [The NoCAN platform](http://omzlo.com/articles/the-nocan-platform) * [Realtime OS on Embedded Systems](http://socialledge.com/sjsu/index.php/Realtime_OS_on_Embedded_Systems) -* [These projects were produced in the five weeks of ECE 4760 each year. ](https://people.ece.cornell.edu/land/courses/ece4760/FinalProjects/) +* [These projects were produced in the five weeks of ECE 4760 each year.](https://people.ece.cornell.edu/land/courses/ece4760/FinalProjects/) * [Advanced fault backtrace library for ARM Cortex-M series MCU](https://github.com/armink/CmBacktrace) ## Tips & tricks @@ -204,4 +206,6 @@ Table of content * [Boot section is removed (gcc, ld, ar, as)](https://www.embeddedrelated.com/showthread/lpc2000/47841-1.php) -## [Books for embedded system developers](http://www.ganssle.com/bkreviews.htm) +## eBook + +## [Books for embedded system developers](http://www.ganssle.com/bkreviews.htm) \ No newline at end of file