0%

Book Description

Design and build custom hardware interfaces for the Raspberry Pi and discover low cost display and sensor options for embedded system projects. 

With this book you'll master 12C communications using Raspbian Linux in C++ and perform ADC and DAC experiments. You'll experiment with debounce buttons and switches using hardware and software solutions. Develop flywheel rotary encoder effects for ease of tuning and construct a hardware interface to the Music Playing Daemon (MPD) with developed software. Discover how to add your own hardware keypad for remote combination lock applications. 

Custom Raspberry Pi Interfaces offers a thorough chapter on interfacing 5-volt systems to 3.3-volt Raspberry Pis designed to expand your choice of peripheral options. Ready to go C++ programs involving GPIO and I2C peripherals are provided. This book also explores ADC, DAC, rotary encoders, CMOS shift registers. I2C I/O extenders.


What you'll learn:
  • Build simple, low cost input/output interfaces including rotary encoders 
  • Interface with 5-volt devices from a 3-volt Raspberry Pi system 
  • Apply analog to digital and digital to analog conversions on the Pi 
  • Read potentiometers (volume control) from the Pi 
  • Determine step, directions, and velocity of a rotary encoder 
  • Perform remote interfacing using the I2 PCF8574 chip
  • Work with external CMOS devices like the 74HC595 (in C++)

Who this book is for:
    Students and hobbyists interested in building custom interfaces for their Raspberry Pis.

    Table of Contents

    1. Cover
    2. Frontmatter
    3. 1. Introduction
    4. 2. 3V/5V Signal Interfacing
    5. 3. VGA LCD Monitors
    6. 4. I2C LCD Displays
    7. 5. MC14490 and Software Debouncing
    8. 6. PCF8591 ADC
    9. 7. Potentiometer Input Controls
    10. 8. Rotary Encoders
    11. 9. More Pi Inputs with 74HC165
    12. 10. More Pi Outputs with 74HC595
    13. 11. MCP23017 I/O Port Extender
    14. 12. MPD/MPC Hardware Controls
    15. 13. Custom Keypads
    16. Backmatter
    18.221.129.19