Neues Material zum STM32L476 (ab WS17/18).
Altes Material zum STM32VLDiscovery (CM3) für Vorlesung und Praktikum: stm32f1 (bis WS16/17).
Inhalt
Barr, Massa, Programming Embedded Systems, 2nd Edition, 2006, O'Reilly.
Chapter 1: intro/Barr-Massa-PES2-ch1.pdf (18 pages)
Safari: http://my.safaribooksonline.com/book/programming/0596009836
Bill Gatliff, Embedding with GNU: The GNU compiler and linker, 2000 (4 pages), gnu/EEIOL_2000FEB01_EMS_TA.pdf
Barr, Massa, Programming Embedded Systems, 2nd Edition, 2006, O'Reilly.
Chapter 4: "Compiling, Linking and Locating", gnu/Barr-Massa-PES2-ch4.pdf (20 pages)
Joseph Yiu, Definitive Guide to the Cortex-M3, 2nd edition, 2010. Chapter 19: Starting Cortex-M3 development using the GNU toolchain, gnu/DGCM3-2e-ch19.pdf (15 pages).
Bill Gatliff, Embedding with GNU: GNU Debugger, ESP 1999 (9 pages), gnu/ew_gdb.pdf.
Andy Oram, Mike Loukides, Programming with GNU Software, O'Reilly 1996.
Dominic Rath, H. Högl, Open On-Chip Debugger, Dec 2006, 10 pages openocd/oocd-2006.pdf
Openocd Manual 0.9.0, 164 pages, openocd/openocd.pdf
Brian T. Hogan, Tmux - Productive Mouse-Free Development, Pragmatic Programmers, 2012, tmux/tmux_p3_0.pdf
Alle AVR Bausteine der Firma Atmel sind 8-Bit Controller. Der MSP430 von Texas Instruments ist ein 16-Bit Controller. Alle Controller aus Kategorie 3 sind 32-Bit.
Kategorie 1
Kategorie 2
Kategorie 3
Kategorie 4
LPC3131 ARM926, 180 MHz, wird auf dem Gnublin Board verwendet:
Homepage http://www.gnublin.org
Einführender Artikel aus dem EPJ #12
http://elk.informatik.fh-augsburg.de/pub/Gnublin/epj-12/main.html
Folien Linux Infotag 2012
Schaltplan Gnublin/700641_GNUBLIN_SCHALTPLAN-1.6.pdf
SAM9G45 ARM926, 400 MHz
Speicherübersicht memory/speicheruebersicht.jpg (aus: Elektronik scout 2006. Gerhard Stelzer, Ein Gedächtnis für alle Fälle. Eine aktuelle Bestandsaufnahme bei Speicher-ICs. Das darin enthaltene Bild hat als Quelle angegeben: Joachim Binder, Infineon 2005)
RAM = random access memory. Bezeichnet den Hauptspeicher im Rechner.
Technische Ausführung
DRAM = dynamic RAM
SDRAM = synchronous dynamic RAM
Applikationsschrift von Micron:
Micron Produktseite zu e-MMC
Kingston 8 GByte Embedded MultiMediaCard (eMMC), 34 Seiten, 2011
Micron 8 GByte eMMC MTFC2GMVEA-0M WT (auf Beagle Bone Black)
Siehe auch den Wikipedia Eintrag über die MMC Karte
Spezifikation der MMC Karte
Lee Seshia, Embedded Systems, Chap. 9 (Input/Output0 iface/lee-seshia-chap9.pdf
Siehe auch das LIN Protokoll. Von ST-Micro gibt es eine Applikationsschrift iface/lin/AN1278-LIN.pdf.
Weidmüller RS-485 Primer, 1999, 7 Seiten, iface/rs485/SIP02_991635_RS-485_Primer.pdf
Texas Instruments, 422 and 485 standards overview, 2002, 33 Seiten, iface/rs485/slla070c.pdf
John Goldie, 10 ways of bulletproof RS-485 interfaces, National Semiconductor 1995, 10 Seiten, iface/rs485/AN-1057.pdf
Sipex RS-485 Transceiver Datasheet, 2000, 11 Seiten, iface/rs485/SP481.pdf
Elektorbus, iface/rs485/ElektorBusReference.pdf 2012, siehe auch http://www.elektor.de. Die Ansteuerung des Elektorbus wird mit der Firmware Bibliothek "EFL" gemacht: https://www.elektormagazine.com/labs/embedded-firmware-library-efl, Sourceforge
Link Network Protocol
CAN vs. RS485, Fa. Ixxat, iface/rs485/artikel_20105_can-vs-rs485_e.pdf
Wikipedia
http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus
Atmel Application Note AVR151: Setup and Use of the SPI, iface/spi/doc2585.pdf
MicroWire Serial Interface (National Semiconductor), iface/spi/AN-452.pdf
I2C Specification and User Manual, 2014, iface/i2c/UM10204.pdf (Quelle: http://www.i2c-bus.org/specification)
SMBus (System Management Bus), abgeleitet von I2C, http://en.wikipedia.org/wiki/System_Management_Bus
SMBus Specification, iface/i2c/smbus20.pdf
Philips I2C Manual, 2003, 51 Seiten, iface/i2c/AN10216_1.pdf
iface/i2c/i2c-selection-guide.pdf (16 Seiten)
Philips I2C Handbuch iface/i2c/philips_i2c_handbook.pdf
Jack Ganssle, An Introduction to USB Development (ein schöner Übersichtsartikel, nur die Chips am Ende sind schon ein wenig veraltet).
Craig Peacock, USB in an Nutshell, 30 Seiten, iface/usb/usb-in-a-nutshell.pdf
Jan Axelson, "USB Complete"
USB Mass Storage, Kapitel 1 aus dem Buch zum freien Download (Mass Storage Basics, 24 Seiten)
Diplomarbeit von Benedikt Sauter, USB Stack für eingebettete Systeme, 2007
Diplomarbeit über den USB Bus von Eik Arnold, TU Chemnitz iface/usb/arnold_da.pdf
Bibliotheken
CMSIS Tutorial
Firmware Libs
Entwicklung mit freien Werkzeugen
STM32 Open Source Development (von AliOs)
prog/keytosmart/keytosmart.html
Demoprogramme: prog/keytosmart/demo/
Echtzeit Betriebssysteme
David Kalinsky, Von sequenziell bis preemptiv. Einführung in die Welt der Task-Scheduler, Elektronik 4/2004 (6 Seiten).
Using FreeRTOS in small embedded systems
G. Brown: Discovering the STM32 Microcontroller Buecher/6/gbrown-stm32-book.pdf, Chapter 16: Real-Time Operating Systems (17 pages).
Developing Applications on STM32Cube with FreeRTOS (UM1722) 6/2014 (26 pages)
Richard Barry, Using the FreeRTOS Real-Time Kernel - A Practial Guide, 2009. (Das PDF ist mit folgendem Passwort geschützt: hubert.hoegl@hs-augsburg.de)
The Architecture of Open-Source Applications: FreeRTOS
Barr/Massa, Programming Embedded Systems, Kapitel 10 (Operating Systems) und Kapitel 11 (eCos Examples).
Joseph Yiu, The Definitive Guide to Cortex M3 and Cortex M4 Processors, 3rd edition 2014. Ch. 19, Using Embedded Operating Systems (605-645).
Trevor Martin, The Designer's Guide to the Cortex-M Processor Family, Newnes 2013. Chapter 6: Developing with CMSIS RTOS.
Allg. Buchtipps:
Programmiersprachen
Joseph Yiu, The Many Ways of Programming an ARM Cortex -M Microcontroller, May 2013, Whitepaper, 20 pages.
prog/01_Yiu_the-Many-Ways-of-Programming-a-ARM-Cortex-M-microcontroller.pdf
Zustandsmaschinen
Miro Samek, Quick Introduction to QP State Machine Frameworks, 2011 (Foliensatz mit 21 Seiten).
Low-Power Programmierung
Reinhard Keil, Frank Grobe, Designing Energy-Efficient Systems with Cortex-M Microcontrollers.
John Catsoulis, Designing Embedded Hardware, O'Reilly 2005.
Michael Barr, Anthony Massa, Programming Embedded Systems, 2nd Edition, O'Reilly 2006.
Siehe auch Michael Barr, Programming Embedded Systems in C and C++, O'Reilly, 1999. Das ist eine frühere Auflage.
Norman Matloff and Peter Jay Salzman, The Art of Debugging, No Starch Press, 2008. Das erste Kapitel ist frei zum Download, siehe Buecher/3/.
Elecia White, Making Embedded Systems, O'Reilly, 2011.
E. A. Lee and S. A. Seshia, Introduction to Embedded Systems - A Cyber-Physical Systems Approach, http://LeeSeshia.org, 2017, Buecher/5/ (Struktur).
Geoffrey Brown, Discovering the STM32 Microcontroller, 2015.
Andy Oram, Mike Loukides, Programming with GNU Software, O'Reilly 1996.
Joseph Yiu, The Definitive Guide to the ARM Cortex-M3, 2nd Edition, Newnes 2010.
Safari: http://proquest.tech.safaribooksonline.de/book/hardware/9781856179638
Neue Auflage:
Joseph Yiu, The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors, 3rd Edition, Newnes 2013.
Safari: http://proquest.safaribooksonline.com/book/electrical-engineering/computer-engineering/9780124080829
Helmut Bähring, Anwendungsorientierte Mikroprozessoren. Mikrocontroller und Digitale Signalprozessoren, 4. Auflage 2011, Springer Verlag (eXamen.press). Siehe Spring Link.
Peter Marwedel, Eingebettete Systeme, Springer eXamen.press 2008, nonfree/Buecher/10/
Carmine Noviello, Mastering the STM32, Leanpub 2017, nonfree/Buecher/11/
Trevor Martin, Designers-Guide to the Cortex M3, 1st edition, 2013, nonfree/Buecher/12/
Brian P. Horgan, tmux - Productive Mouse-Free Development, Pragmatic Programmers. https://pragprog.com/book/bhtmux/tmux nonfree/Buecher/13/
Rüdiger R. Asche, Embedded Controller, Springer 2016. nonfree/Buecher/14/
Lacamera, Embedded Systems Architecture, Packt 2018. nonfree/Buecher/15/