TIENE EN SU CESTA DE LA COMPRA
en total 0,00 €
In-depth instruction and practical techniques for building with the BeagleBone embedded Linux platform
Exploring BeagleBone is a hands-on guide to bringing gadgets, gizmos, and robots to life using the popular BeagleBone embedded Linux platform. Comprehensive content and deep detail provide more than just a BeagleBone instruction manual-you'll also learn the underlying engineering techniques that will allow you to create your own projects. The book begins with a foundational primer on essential skills, and then gradually moves into communication, control, and advanced applications using C/C++, allowing you to learn at your own pace. In addition, the book's companion website features instructional videos, source code, discussion forums, and more, to ensure that you have everything you need.
The BeagleBone's small size, high performance, low cost, and extreme adaptability have made it a favorite development platform, and the Linux software base allows for complex yet flexible functionality. The BeagleBone has applications in smart buildings, robot control, environmental sensing, to name a few; and, expansion boards and peripherals dramatically increase the possibilities. Exploring BeagleBone provides a reader-friendly guide to the device, including a crash course in computer engineering. While following step by step, you can:
Get up to speed on embedded Linux, electronics, and programming
Master interfacing electronic circuits, buses and modules, with practical examples
Explore the Internet-connected BeagleBone and the BeagleBone with a display
Apply the BeagleBone to sensing applications, including video and sound
Explore the BeagleBone's Programmable Real-Time Controllers
Hands-on learning helps ensure that your new skills stay with you, allowing you to design with electronics, modules, or peripherals even beyond the BeagleBone. Insightful guidance and online peer support help you transition from beginner to expert as you master the techniques presented in Exploring BeagleBone, the practical handbook for the popular computing platform.
Table of Contents
Introduction xxv
Part I BeagleBone Basics 1
Chapter 1 The BeagleBone Hardware 3
Introduction to the Platform 3
Who Should Use the BeagleBone 5
When to Use the BeagleBone 6
When You Should Not Use the BeagleBone 6
BeagleBone Documentation 7
The BeagleBone Hardware 8
BeagleBone Versions 9
The BeagleBone Black Hardware 11
BeagleBone Accessories 14
Highly Recommended Accessories 14
Micro?]SD Card (for Flashing the BBB) 14
External 5V Power Supply (for Flashing and Peripherals) 15
Ethernet Cable (for Network Connection) 15
HDMI Cable (for Connection to Monitors/Televisions) 15
USB to Serial UART TTL 3.3 V (for Finding Problems) 16
Optional Accessories 17
USB Hub (to Connect Several USB Devices to a USB Host) 17
Micro-HDMI to VGA adapters (for VGA Video and Sound) 17
Wi-Fi Adapters (for Wireless Networking) 18
USB Webcam (for Capturing Images and Streaming Video) 18
USB Keyboard and Mouse (for General-Purpose Computing) 18
Capes 19
How to Destroy Your BeagleBone! 20
Summary 22
Support 22
Chapter 2 The BeagleBone Black Software 23
Linux on the BeagleBone 24
Linux Distributions 24
Communicating with the BBB 25
Installing Drivers 26
Network Connections 26
Internet?]over?]USB 26
Regular Ethernet 29
Ethernet Crossover Cable 30
Communicating with the BBB 31
Serial Connection over USB 31
Serial Connection with the USB?]to?]TTL 3.3 V Cable 33
Connecting through Secure Shell (SSH) 33
Secure Shell Connections using PuTTY 34
Chrome Apps: Secure Shell Client 34
Transferring Files Using PuTTY/psftp over SSH 35
Controlling the BeagleBone 37
Basic Linux Commands 37
First Steps 37
Basic File System Commands 38
Environment Variables 40
Basic File Editing 41
What Time Is It? 42
Package Management 44
Interacting with the BBB On?]board LEDs 45
Shutdown 47
Node.js, Cloud9, and BoneScript 48
Introduction to Node.js 48
Introduction to the Cloud9 IDE 50
Introduction to BoneScript 51
Summary 52
Further Reading 53
Chapter 3 Exploring Embedded Linux Systems 55
Embedded Linux Basics 55
What Embedded Linux Offers 57
Is Linux Open Source and Free? 57
Booting the BeagleBone 58
The BeagleBone Bootloaders 58
Kernel Space and User Space 62
System V init (SysVinit) 63
Managing Linux Systems 67
The Super User 67
System Administration 68
The Linux File System 68
Linking to Files and Directories 69
Users and Groups 71
File System Permissions 74
Exploring the File System 75
Commands for File Systems 75
find and whereis 81
more or less 82
Linux Commands 82
Standard Input and Output Redirection (>, >>, and <) 82
Pipes ( and tee) 83
Filter Commands (from sort to xargs) 84
echo and cat 86
diff 87
tar 88
md5sum 88
Linux Processes 89
Controlling Linux Processes 89
Foreground and Background Processes 90
The BusyBox Multi?]call Binary 92
Other Linux Topics 93
Git 93
Getting Started with Git 94
Cloning a Repository (git clone) 95
Getting the Status (git status) 96
Adding to the Staging Area (git add) 96
Committing to the Local Repository (git commit) 97
Pushing to the Remote Repository (git push) 97
Advanced Git 98
Creating a Branch (git branch) 98
Merging the Branch (git merge) 100
Deleting a Branch (git branch ?]d) 100
Conclusions on Git 101
Desktop Virtualization 102
Code for This Book 103
Summary 104
Further Reading 104
Chapter 4 Interfacing Electronics 105
Recommended Equipment 105
Digital Multimeter 106
Oscilloscopes 106
Basic Circuit Principles 108
Voltage, Current, Resistance, and Ohm's Law 109
Voltage Division 110
Current Division 112
Implementing Circuits on a Breadboard 113
Digital Multimeters (DMMs) and Breadboards 114
Example Circuit: Voltage Regulation 115
Discrete Components 117
Diodes 117
Light?]Emitting Diodes (LEDs) 118
Smoothing and Decoupling Capacitors 121
Transistors 123
Transistors as Switches 124
Field Effect Transistors (FETs) as Switches 127
Optocouplers/Opto?]isolators 128
Switches and Buttons 130
Hysteresis 132
Logic Gates 133
Floating Inputs 137
Pull?]Up and Pull?]Down Resistors 138
Open?]Collector and Open?]Drain Outputs 139
Interconnecting Gates 140
Analog?]to?]Digital Conversion 141
Sampling Rate 142
Quantization 142
Operational Amplifiers 143
Ideal Operational Amplifiers 143
Negative Feedback and Voltage Follower 146
Positive Feedback 146
Concluding Advice 147
Summary 147
Further Reading 148
Chapter 5 Practical BeagleBone Programming 149
Introduction 149
Performance of Different Languages 150
Setting the BBB CPU Frequency 153
Scripting Languages 153
Scripting Language Optio