Linux auf dem Desktop – das ist heute leicht und einfach möglich. Embedded Linux ebenso, auch wenn es kompliziert erscheint. Das vorliegende Buch gibt allen Interessierten Hilfestellung, die Linux auf einer Embedded-Plattform installieren und nutzen möchten. Das im Buch vorgestellte System arbeitet mit der Toshiba-ARM9-Familie.
Grundlegende Linux-Kenntnisse auf dem PC werden Schritt für Schritt in Richtung Embedded Linux erweitert. Das Buch beantwortet die Fragen, welche Komponenten hierzu erforderlich sind und wie sich diese erstellen lassen. Nach der Vorstellung der verwendeten Hardware beginnt dies bei der Toolchain und setzt sich über JTAG-Debugger, Bootloader und Kernel bis zur Applikation fort.
Rezension: c't 25/2010"... Ein Buch aus der Praxis für die Praxis – besser geht es kaum."
This book is all about building your own DIY home control system. It presents two innovative ways to assemble such a system: By recycling old PC hardware – possibly extending the life of an old PC, or by using Raspberry Pi. In both cases, the main system outlined in this book will consist of a computer platform, a wireless mains outlet, a controller and a USB webcam – All linked together by Linux.
By using the Raspberry Pi in conjunction with Arduino (used as an advanced I/O system board), it is possible to construct a small, compact, embedded control system offering enhanced capacity for USB integration, webcams, thermal monitoring and communication with the outside world.
The experience required to undertake the projects within this book are minimal exposure to PC hardware and software, the ability to surf the internet, burn a CD-ROM and assemble a small PCB.
ARM Cortex-M Embedded Design from 0 to 1
Hobbyists can mash together amazing functional systems using platforms like Arduino or Raspberry Pi, but it is imperative that engineers and product designers understand the foundational knowledge of embedded design. There are very few resources available that describe the thinking, strategies, and processes to take an idea through hardware design and low-level driver development, and successfully build a complete embedded system. Many engineers end up learning the hard way, or never really learn at all.
ARM processors are essentially ubiquitous in embedded systems. Design engineers building novel devices must understand the fundamentals of these systems and be able to break down large, complicated ideas into manageable pieces. Successful product development means traversing a huge amount of documentation to understand how to accomplish what you need, then put everything together to create a robust system that will reliably operate and be maintainable for years to come.
This book is a case study in embedded design including discussion of the hardware, processor initialization, low‑level driver development, and application interface design for a product. Though we describe this through a specific application of a Cortex-M3 development board, our mission is to help the reader build foundational skills critical to being an excellent product developer. The completed development board is available to maximize the impact of this book, and the working platform that you create can then be used as a base for further development and learning.
The Embedded in Embedded program is about teaching fundamental skill sets to help engineers build a solid foundation of knowledge that can be applied in any design environment. With nearly 20 years of experience in the industry, the author communicates the critical skill development that is demanded by companies and essential to successful design. This book is as much about building a great design process, critical thinking, and even social considerations important to developers as it is about technical hardware and firmware design.
Downloads
EiE Software Archive (200 MB)
IAR ARM 8.10.1 (Recommended IDE version to use) (1.2 GB)
IAR ARM 7.20.1 (Optional IDE version to use) (600 MB)
This collection features the best of Elektor Magazine's articles on embedded systems and artificial intelligence. From hands-on programming guides to innovative AI experiments, these pieces offer valuable insights and practical knowledge for engineers, developers, and enthusiasts exploring the evolving intersection of hardware design, software innovation, and intelligent technology.
Contents
Programming PICs from the Ground UpAssembler routine to output a sine wave
Object-Oriented ProgrammingA Short Primer Using C++
Programming an FPGA
Tracking Down Microcontroller Buffer Overflows with 0xDEADBEEF
Too Quick to Code and Too Slow to Test?
Understanding the Neurons in Neural NetworksEmbedded Neurons
MAUI Programming for PC, Tablet, and SmartphoneThe New Framework in Theory and Practice
USB Killer DetectorBetter Safe Than Sorry
Understanding the Neurons in Neural NetworksArtificial Neurons
A Bare-Metal Programming Guide
Part 1: For STM32 and Other Controllers
Part 2: Accurate Timing, the UART, and Debugging
Part 3: CMSIS Headers, Automatic Testing, and a Web Server
Introduction to TinyMLBig Is Not Always Better
Microprocessors for Embedded SystemsPeculiar Parts, the Series
FPGAs for BeginnersThe Path From MCU to FPGA Programming
AI in Electronics DevelopmentAn Update After Only One Year
AI in the Electronics LabGoogle Bard and Flux Copilot Put to the Test
ESP32 and ChatGPTOn the Way to a Self-Programming System…
Audio DSP FX Processor Board
Part 1: Features and Design
Part 2: Creating Applications
Rust + EmbeddedA Development Power Duo
A Smart Object CounterImage Recognition Made Easy with Edge Impulse
Universal Garden LoggerA Step Towards AI Gardening
A VHDL ClockMade with ChatGPT
TensorFlow Lite on Small MicrocontrollersA (Very) Beginner’s Point of View
Mosquito DetectionUsing Open Datasets and Arduino Nicla Vision
Artificial Intelligence Timeline
Intro to AI AlgorithmsPrompt: Which Algorithms Implement Each AI Tool?
Bringing AI to the Edgewith ESP32-P4
The Growing Role of Edge AIA Trend Shaping the Future
History and Future in the Internet of Things
This book thoroughly reviews the history of the development of embedded Operating Systems, covers the technical characteristics, historic facts, as well as background business stories of mainstream embedded Operating Systems, and analyzes the technical evolution, market development, and new opportunities of embedded Operating Systems in the age of the Internet of Things.
From the perspective of time, the book examines the evolution of critical technical aspects, including real-time and Power Management of embedded Operating Systems and Linux, Internet of Things security, communication, and cloud computing.
The book looks into applications of embedded Operating Systems with important markets of mobile phones, communication equipment, automobile, and wearable devices, and also discusses business model and the issue of intellectual property of embedded Operating Systems.
In addition, the book walks through the status quo, technical features, product evaluation and background of the Internet of Things Operating Systems in the second half of the book.
Technology is constantly changing. New microcontrollers become available every year and old ones become redundant. The one thing that has stayed the same is the C programming language used to program these microcontrollers. If you would like to learn this standard language to program microcontrollers, then this book is for you!
ARM microcontrollers are available from a large number of manufacturers. They are 32-bit microcontrollers and usually contain a decent amount of memory and a large number of on-chip peripherals. Although this book concentrates on ARM microcontrollers from Atmel, the C programming language applies equally to other manufacturer’s ARMs as well as other microcontrollers.
Features of this book
Use only free or open source software.
Learn how to download, set up and use free C programming tools.
Start learning the C language to write simple PC programs before tackling embedded programming - no need to buy an embedded system right away!
Start learning to program from the very first chapter with simple programs and slowly build from there.
No programming experience is necessary!
Learn by doing - type and run the example programs and exercises.
Sample programs and exercises can be downloaded from the Internet.
A fun way to learn the C programming language.
Ideal for electronic hobbyists, students and engineers wanting to learn the C programming language in an embedded environment on ARM microcontrollers.
This book is intended as a highly-practical guide for Hobbyists, Engineers and Scientists wishing to build measurement and control systems to be controlled by a local or remote Personal Computer running the Linux operating system. Both hardware and software aspects of designing typical embedded systems are covered in detail with schematics, code listings and full descriptions. Numerous examples have been designed to show clearly how straightforward it can be to create the interfaces between digital and analog electronics, with programming techniques for creating control software for both local and remote systems. Hardware developers will appreciate the variety of circuits, including a novel, low cost modulated wireless link and will discover how using Matlab® overcomes the need for specialist programming skills.
Software developers will appreciate how a better understanding of circuits plus the freedom offered by Linux to directly control at the register level enables them to optimize related programs. There is no need to buy special equipment or expensive software tools in order to create embedded projects covered in this book. You can build such quality systems quickly using popular low-cost electronic components and free distributed or low-cost software tools. Some knowledge of basic electronics plus the very basics of C programming only is required.
Many projects in this book are developed using Matlab® being a very popular worldwide computational tool for research in engineering and science. The book provides a detailed description of how to combine the power of Matlab® with practical electronics.
With an emphasis on learning by doing, readers are encouraged by examples to program with ease; the book provides clear guidelines as to the appropriate programming techniques “on the fly”. Complete and well-documented source code is provided for all projects.
If you want to learn how to quickly build Linux-based applications able to collect, process and display data on a PC from various analog and digital sensors, how to control circuitry attached to a computer, then even how to pass data via a network or control your embedded system wirelessly and more – then this is the book for you!
Features of this Book
Use the power, flexibility and control offered only by a Linux operating system on a PC.
Use a free, distributed downloadable GNU C compiler Use (optional) a low-cost Student Version of Matlab®.
Use low-cost electronic sub-assemblies for projects.
Improve your skills in electronics, programming, networking and wireless design.
A full chapter is dedicated to controlling your sound card for audio input and output purposes.
Program sound using OSS and ALSA.
Learn how to combine electronic circuits, software, networks and wireless technologies in the complete embedded system.
Der LuckFox Pico Ultra ist ein kompakter Single-Board-Computer (SBC) mit dem Rockchip RV1106G3-Chipsatz, der für KI-Verarbeitung, Multimedia und stromsparende Embedded-Anwendungen entwickelt wurde.
Er ist mit einer integrierten 1-TOPS-NPU ausgestattet und eignet sich daher ideal für Edge-KI-Workloads. Mit 256 MB RAM, 8 GB Onboard-eMMC-Speicher, integriertem WLAN und Unterstützung für das LuckFox PoE-Modul bietet das Board Leistung und Vielseitigkeit für eine Vielzahl von Anwendungsfällen.
Der LuckFox Pico Ultra läuft unter Linux und unterstützt eine Vielzahl von Schnittstellen – darunter MIPI CSI, RGB-LCD, GPIO, UART, SPI, I²C und USB – und bietet so eine einfache und effiziente Entwicklungsplattform für Anwendungen in den Bereichen Smart Home, Industriesteuerung und IoT.
Technische Daten
Chip
Rockchip RV1106G3
Prozessor
Cortex-A7 1,2 GHz
Neuronaler Netzwerkprozessor (NPU)
1 TOPS, unterstützt int4, int8, int16
Bildprozessor (ISP)
Max. Eingangsgeschwindigkeit 5 M @30fps
Speicher
256 MB DDR3L
WLAN + Bluetooth
2,4 GHz WiFi-6 Bluetooth 5.2/BLE
Kameraschnittstelle
MIPI CSI 2-Lane
DPI-Schnittstelle
RGB666
PoE-Schnittstelle
IEEE 802.3af PoE
Lautsprecherschnittstelle
MX1,25 mm
USB
USB 2.0 Host/Gerät
GPIO
30 GPIO Pins
Ethernet
10/100M Ethernet-Controller und eingebetteter PHY
Standardspeichermedium
eMMC (8 GB)
Lieferumfang
1x LuckFox Pico Ultra W
1x LuckFox PoE Modul
1x IPX 2,4G 2 dB Antenne
1x USB-A auf USB-C Kabel
1x Schraubensatz
Downloads
Wiki
LuckFox Pico Mini ist ein kompaktes Linux-Mikro-Entwicklungsboard, das auf dem Rockchip RV1103-Chip basiert und eine einfache und effiziente Entwicklungsplattform für Entwickler bietet. Es unterstützt eine Vielzahl von Schnittstellen, einschließlich MIPI CSI, GPIO, UART, SPI, I²C, USB usw., was für eine schnelle Entwicklung und Fehlerbehebung praktisch ist.
Features
Single-Core ARM Cortex-A7 32-Bit-Kern mit integriertem NEON und FPU
Eingebaute, von Rockchip selbst entwickelte NPU der 4. Generation, zeichnet sich durch hohe Rechenpräzision aus und unterstützt die Hybridquantisierung int, int8 und int16. Die Rechenleistung von int8 beträgt 0,5 TOPS und bis zu 1,0 TOPS mit int4
Integrierter, selbst entwickelter ISP3.2 der dritten Generation, unterstützt 4 Megapixel, mit mehreren Bildverbesserungs- und Korrekturalgorithmen wie HDR, WDR, mehrstufiger Rauschunterdrückung usw.
Verfügt über eine leistungsstarke Kodierungsleistung, unterstützt den intelligenten Kodierungsmodus und das adaptive Stream-Speichern je nach Szene, spart mehr als 50% Bitrate im Vergleich zum herkömmlichen CBR-Modus, sodass die Bilder von der Kamera hochauflösende Bilder mit geringerer Größe und doppelt so viel Speicherplatz bieten Leerzeichen
Die integrierte RISC-V-MCU unterstützt einen geringen Stromverbrauch und einen schnellen Start, unterstützt eine schnelle Bildaufnahme von 250 ms und lädt gleichzeitig die Al-Modellbibliothek, um die Gesichtserkennung "in einer Sekunde" zu realisieren.
Eingebauter 16-Bit-DRAM DDR2, der anspruchsvolle Speicherbandbreiten bewältigen kann
Integriert mit integriertem POR, Audio-Codec und MAC PHY
Technische Daten
Prozessor
ARM Cortex-A7, Single-Core-32-Bit-CPU, 1,2 GHz, mit NEON und FPU
NPU
Rockchip NPU der 4. Generation, unterstützt int4, int8, int16; bis zu 1,0 TOPS (int4)
ISP
ISP3.2 der dritten Generation, bis zu 4 MP-Eingang bei 30fps, HDR, WDR, Rauschunterdrückung
RAM
64 MB DDR2
Speicher
128 MB SPI NAND Flash
USB
USB 2.0-Host/Gerät über Typ-C
Kameraschnittstelle
MIPI CSI 2-spurig
GPIO-Pins
17 GPIO-Pins
Stromverbrauch
RISC-V-MCU mit geringem Stromverbrauch für schnellen Start
Abmessungen
28 x 21 mm
Downloads
Wiki
Die ZD-915 ist eine digitale Entlötstation mit ESD-Schutz und LCD-Bildschirm, der sowohl den Ist- als auch des Sollwert anzeigt. Diese Entlötstation hat eine hohe Leistung in einem kompakten und robusten Gehäuse und macht das Entlöten einfach, da sie mit einer Hand bedient werden kann.
Der ZD-915 verfügt über eine Lötpistole, in der sich ein Filter befindet, der angesaugtes Material auffängt, sodass Sie nur die Filter austauschen müssen, um fortzufahren. Außerdem befindet sich in der Spitze ein Temperatursensor, damit Temperaturschwankungen schnell aufgefangen werden können.
Features
Die Temperatur lässt sich einfach durch einfache Auf-/Ab-Tasten einstellen.
140 W temperaturgeregelte Lötstation mit einstellbarem Bereich von 160°C bis 480°C.
Die Entlötstation ist speziell für das bleifreie Entlöten ausgelegt.
An der Seite der Station befindet sich eine typische Halterung mit Schwamm.
Ein beleuchteter Ein-/Ausschalter befindet sich ebenfalls auf der Vorderseite.
Technische Daten
Station
Spannungsversorgung
220-240 V
Leistungsaufnahme
140 W
Vakuumdruck
600 mm HG
Entlötpistole
Leistungsaufnahme
24 V AC 80 WAufheizleistung 130 W
Temperatur
160-480 °C
Heizelement
Keramikheizung
Lieferumfang
1x ZD-915 Entlötstation
2x Ersatzlötspitze
3x Reinigungsnadel für Entlötspitzen
1x Ersatzfilter für Entlötpistole
1x Handbuch
Diese 900-MHz-Funkversion kann entweder für 868 MHz oder 915 MHz Senden/Empfangen verwendet werden - die genaue Funkfrequenz wird beim Laden der Software festgelegt, da sie dynamisch umgestimmt werden kann.
Das Herzstück des Feather 32u4 ist ein ATmega32u4, der mit 8 MHz getaktet ist und mit 3,3 V Logik arbeitet. Dieser Chip hat 32 K Flash und 2 K RAM, mit eingebautem USB, so dass er nicht nur eine USB-zu-Seriell-Programm- und Debug-Fähigkeit besitzt, ohne dass ein FTDI-ähnlicher Chip erforderlich ist, sondern auch als Maus, Tastatur, USB-MIDI-Gerät usw. fungieren kann.
Um die Verwendung für tragbare Projekte zu erleichtern, haben wir einen Anschluss für 3,7-V-Lithium-Polymer-Batterien und eine integrierte Ladefunktion eingebaut. Sie brauchen keine Batterie, das Gerät läuft problemlos direkt über den Micro-USB-Anschluss. Wenn du aber einen Akku hast, kannst du ihn mitnehmen und dann zum Aufladen an den USB-Anschluss anschließen. Der Feather schaltet automatisch auf USB-Strom um, wenn dieser verfügbar ist. Außerdem haben wir die Batterie über einen Teiler mit einem analogen Pin verbunden, so dass Sie die Batteriespannung messen und überwachen können, um zu erkennen, wann Sie eine Aufladung benötigen.
Merkmale
Dimensionen 2,0" x 0,9" x 0,28" (51 x 23 x 8 mm) ohne eingelötete Header
Leicht wie eine (große?) Feder - 5,5 Gramm
ATmega32u4 @ 8 MHz mit 3,3 V Logik/Stromversorgung
3,3-V-Regler mit 500-mA-Spitzenstromausgang
Native USB-Unterstützung, mit USB-Bootloader und Debugging über die serielle Schnittstelle
Sie erhalten außerdem eine Vielzahl von Pins - 20 GPIO-Pins
Hardware Seriell, Hardware I²C, Hardware SPI Unterstützung
7x PWM-Anschlüsse
10x analoge Eingänge
Eingebautes 100 mA Lipoly-Ladegerät mit Ladestatusanzeige-LED
Pin #13 rote LED für allgemeines Blinken
Power/Enable-Pin
4 Befestigungslöcher
Reset-Taste
Das Feather 32u4 Radio nutzt den zusätzlichen Platz, der übrig bleibt, um ein RFM69HCW 868/915 MHz Funkmodul hinzuzufügen. Diese Funkmodule eignen sich nicht für die Übertragung von Audio- oder Videodaten, aber sie eignen sich sehr gut für die Übertragung kleiner Datenpakete, wenn Sie eine größere Reichweite als 2,4 GHz benötigen (BT, BLE, WiFi, ZigBee).
SX1231-basiertes Modul mit SPI-Schnittstelle
Packet Radio mit vorgefertigten Arduino-Bibliotheken
Verwendet das lizenzfreie ISM-Band ("European ISM" @ 868 MHz oder "American ISM" @ 915 MHz)
+13 bis +20 dBm bis zu 100 mW Ausgangsleistung (Ausgangsleistung in Software wählbar)
50 mA (+13 dBm) bis 150 mA (+20 dBm) Stromaufnahme für Übertragungen
Reichweite von ca. 350 Metern, abhängig von Hindernissen, Frequenz, Antenne und Ausgangsleistung
Aufbau von Mehrpunkt-Netzwerken mit individuellen Knotenadressen
Verschlüsselte Packet Engine mit AES-128
Einfache Drahtantenne oder Spot für uFL-Anschluss
Komplett zusammengebaut und getestet, mit einem USB-Bootloader, mit dem Sie es schnell mit der Arduino IDE verwenden können. Kopfstücke sind auch enthalten, so dass Sie es einlöten und in ein lötfreies Breadboard stecken können. Sie müssen ein kleines Stück Draht abschneiden und anlöten (jeder Volldraht oder Litze ist in Ordnung), um Ihre Antenne zu erstellen.
Lipoly-Batterie und USB-Kabel nicht enthalten.