In this chapter, we learned some theory about PWM. We saw that PWM is a way of creating analog values on digital pins. It can be used to drive analog output devices like motors, LEDs, speakers, and so on. We studied PWM waves and how a duty cycle can be used to control analog devices. BeagleBone has a special subsystem dedicated to generating PWM that work on subset of GPIO pins. Then we wrote a program to control the brightness of an LED via PWM. We also wrote a program to control the servo motor angle. Until now, we have done many physical computing exercises. Let's connect our BeagleBone to the Internet and control these physical components from the Internet. We will do this in next chapter. That will be our first step toward the Internet of Things (IoT).
Programming the BeagleBone
By :
Programming the BeagleBone
By:
Overview of this book
The whole world is moving from desktop computers to smartphones and embedded systems. We are moving towards utilizing Internet of Things (IoT). An exponential rise in the demand for embedded systems and programming in the last few years is driving programmers to use embedded development boards such as Beaglebone.
BeagleBone is an ultra-small, cost-effective computer that comes with a powerful hardware. It runs a full-fledged Debian Linux OS and provides numerous electronics solutions. BeagleBone is open source and comes with an Ethernet port, which allows you to deploy IoT projects without any additions to the board. It provides plenty of GPIO, Anlaog pins, and UART, I2C, SPI pins which makes it the right choice to perform electronics projects. This gives you all the benefits of Linux kernel such as multitasking, multiusers, and extensive device driver support. This allows you to do programming in many languages including high-level languages such as JavaScript and Python.
This book aims to exploit the hardware and software capabilities of BeagleBone to create real-life electronics and IoT applications quickly. It is divided into two parts. The first part covers JavaScript programs. The second part provides electronics projects and IoT applications in Python.
First, you will learn to use BeagleBone as tool to write useful applications on embedded systems. Starting with the basics needed to set up BeagleBone and the Cloud9 IDE, this book covers interfacing with various electronics components via simple programs. The electronics theory related to these components is then explained in depth before you use them in a program. Finally, the book helps you create some real-life IoT applications.
Table of Contents (21 chapters)
Programming the BeagleBone
Credits
About the Author
Acknowledgment
About the Reviewers
www.PacktPub.com
Preface
Free Chapter
Cloud9 IDE
Blinking Onboard LEDs
Blinking External LEDs
Controlling LED Using a Push Button
Reading from Analog Sensors
PWM – Writing Analog Information
Internet of Things with BeagleBone
Physical Computing in Python
UART, I2C, and SPI Programming
Internet of Things using Python
GPIO Control in Bash
BeagleBone Capes
Pinmux and the Device Tree
Index
Customer Reviews