Raspberry Pi Computer Architecture Essentials

Explore Raspberry Pi's architecture through innovative and fun projects

Raspberry Pi Computer Architecture Essentials

This ebook is included in a Mapt subscription
Andrew K. Dennis

2 customer reviews
Explore Raspberry Pi's architecture through innovative and fun projects
$31.99
$39.99
RRP $31.99
RRP $39.99
eBook
Print + eBook
Subscribe and access every Packt eBook & Video.
 
  • 4,000+ eBooks & Videos
  • 40+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Preview in Mapt

Book Details

ISBN 139781784397975
Paperback232 pages

Book Description

With the release of the Raspberry Pi 2, a new series of the popular compact computer is available for you to build cheap, exciting projects and learn about programming.

In this book, we explore Raspberry Pi 2’s hardware through a number of projects in a variety of programming languages. We will start by exploring the various hardware components in detail, which will provide a base for the programming projects and guide you through setting up the tools for Assembler, C/C++, and Python. We will then learn how to write multi-threaded applications and Raspberry Pi 2’s multi-core processor. Moving on, you’ll get hands on by expanding the storage options of the Raspberry Pi beyond the SD card and interacting with the graphics hardware. Furthermore, you will be introduced to the basics of sound programming while expanding upon your knowledge of Python to build a web server. Finally, you will learn to interact with the third-party microcontrollers.

From writing your first Assembly Language application to programming graphics, this title guides you through the essentials.

Table of Contents

Chapter 1: Introduction to the Raspberry Pi's Architecture and Setup
History and background of the Raspberry Pi
Basic hardware needed
The microSD card – the main storage and boot device of the Raspberry Pi 2
Installing Screen and Vim
Running tests on the OS and configuration changes
Some handy Linux commands
Troubleshooting
Summary
Chapter 2: Programming on Raspbian
Which programming languages?
Assembly language
The C and C++ languages
The Python language
Summary
Chapter 3: Low-Level Development with Assembly Language
Back to basics
Memory and addresses
Adding power to our program – control structures
Summary
Chapter 4: Multithreaded Applications with C/C++
What are threads?
A C++ equivalent
Going further – mutexes and joins
Summary
Chapter 5: Expanding on Storage Options
Booting up
Setting up the external HDD
Network-attached storage (NAS)
Summary
Chapter 6: Low-Level Graphics Programming
VideoCore IV GPU
Accessing the frame buffer
Filling the screen with a color
Drawing a line
Summary
Chapter 7: Exploring the Raspberry Pi's GPIO Pins
Introduction to GPIO pins
Hardware choices
Switching an LED on and off
Summary
Chapter 8: Exploring Sound with the Raspberry Pi 2
Introduction to the Raspberry Pi's sound
Interacting with audio through GPIO
C and ALSA
Introducing Sonic Pi
Summary
Chapter 9: Building a Web Server
Introduction to web servers
Popular web servers available on the Raspberry Pi
Building a Python web server
Adding database support
Summary
Chapter 10: Integrating with Third-Party Microcontrollers
Genuino/Arduino microcontroller
Setting up the Arduino software
Integration with Arduino
Summary
Chapter 11: Final Project
Choose your storage mechanism
Building a Flask-based website
Adding in an LED
Extending the project further
Summary

What You Will Learn

  • Set up your Raspberry Pi 2 and learn about its hardware
  • Write basic programs in Assembly Language to learn about the ARM architecture
  • Use C and C++ to interact with electronic components
  • Find out about the Python language and how to use it to build web applications
  • Interact with third-party microcontrollers
  • Experiment with graphics and audio programming
  • Expand Raspberry Pi 2’s storage mechanism by using external devices
  • Discover Raspberry Pi 2’s GPIO pins and how to interact with them

Authors

Table of Contents

Chapter 1: Introduction to the Raspberry Pi's Architecture and Setup
History and background of the Raspberry Pi
Basic hardware needed
The microSD card – the main storage and boot device of the Raspberry Pi 2
Installing Screen and Vim
Running tests on the OS and configuration changes
Some handy Linux commands
Troubleshooting
Summary
Chapter 2: Programming on Raspbian
Which programming languages?
Assembly language
The C and C++ languages
The Python language
Summary
Chapter 3: Low-Level Development with Assembly Language
Back to basics
Memory and addresses
Adding power to our program – control structures
Summary
Chapter 4: Multithreaded Applications with C/C++
What are threads?
A C++ equivalent
Going further – mutexes and joins
Summary
Chapter 5: Expanding on Storage Options
Booting up
Setting up the external HDD
Network-attached storage (NAS)
Summary
Chapter 6: Low-Level Graphics Programming
VideoCore IV GPU
Accessing the frame buffer
Filling the screen with a color
Drawing a line
Summary
Chapter 7: Exploring the Raspberry Pi's GPIO Pins
Introduction to GPIO pins
Hardware choices
Switching an LED on and off
Summary
Chapter 8: Exploring Sound with the Raspberry Pi 2
Introduction to the Raspberry Pi's sound
Interacting with audio through GPIO
C and ALSA
Introducing Sonic Pi
Summary
Chapter 9: Building a Web Server
Introduction to web servers
Popular web servers available on the Raspberry Pi
Building a Python web server
Adding database support
Summary
Chapter 10: Integrating with Third-Party Microcontrollers
Genuino/Arduino microcontroller
Setting up the Arduino software
Integration with Arduino
Summary
Chapter 11: Final Project
Choose your storage mechanism
Building a Flask-based website
Adding in an LED
Extending the project further
Summary

Book Details

ISBN 139781784397975
Paperback232 pages
Read More
From 2 reviews

Read More Reviews