Book description
ARM-based Microcontroller Projects Using mbed gives readers a good understanding of the basic architecture and programming of ARM-based microcontrollers using ARM’s mbed software. The book presents the technology through a project-based approach with clearly structured sections that enable readers to use or modify them for their application. Sections include: Project title, Description of the project, Aim of the project, Block diagram of the project, Circuit diagram of the project, Construction of the project, Program listing, and a Suggestions for expansion. This book will be a valuable resource for professional engineers, students and researchers in computer engineering, computer science, automatic control engineering and mechatronics.
- Includes a wide variety of projects, such as digital/analog inputs and outputs (GPIO, ADC, DAC), serial communications (UART, 12C, SPI), WIFI, Bluetooth, DC and servo motors
- Based on the popular Nucleo-L476RG development board, but can be easily modified to any ARM compatible processor
- Shows how to develop robotic applications for a mobile robot
- Contains complete mbed program listings for all the projects in the book
Table of contents
- Cover image
- Title page
- Table of Contents
- Copyright
- About the Author
- Preface
- Acknowledgments
- Chapter 1: Introduction
- Chapter 2: Microcontroller-Based Project Development Cycle
- Chapter 3: The ARM Microcontrollers
- Chapter 4: STM32 Nucleo Development Boards
- Chapter 5: The Nucleo-F411RE Development Board
- Chapter 6: Architecture of the STM32F411RET6 Microcontroller
-
Chapter 7: Using the Mbed With Simple Projects
- Abstract
- 7.1 Overview
- 7.2 Registering to Use Mbed
- 7.3 Nucleo-F411RE Development Board Pin Names
- 7.4 Project 1—Flashing LED
- 7.5 Project 2—LED Flashing as Morse Code SOS
- 7.6 Project 3—Flashing an External LED
- 7.7 Project 4—Rotating LEDs
- 7.8 Project 5—Binary Counting LEDs
- 7.9 Project 6—Random Flashing LEDs
- 7.10 Project 7—LED Control With Push-button
- 7.11 Project 8—Changing LED Flashing Rate
- 7.12 Project 9—Binary Event Counting With LEDs
- 7.13 Project 10—Using an External Button
- 7.14 Project 11—RGB LED Control
- 7.15 Project 12—Random Colored LED Display
- 7.16 Project 13—7-Segment LED Display
- 7.17 Project 14—Powering Large Loads—DC Motor Control
- 7.18 Summary
- 7.19 Exercises
-
Chapter 8: Intermediate Level Projects
- Abstract
- 8.1 Overview
- 8.2 Project 1—Two-Digit Multiplexed 7-Segment LED
- 8.3 Project 2—Four-Digit Multiplexed 7-Segment LED
- 8.4 Polling and Interrupts
- 8.5 Project 3—Four-Digit 7-Segment LED Counter
- 8.6 Project 4—Four-Digit 7-Segment LED Event Counter
- 8.7 Project 5—7-Segment LED Dice
- 8.8 PC Serial Interface
- 8.9 Project 6—Volume of a Cylinder
- 8.10 Project 7—Calculator
- 8.11 Project 8—Learn Your Times Tables
- 8.12 Project 9—Improving Your Multiplication Skills
- 8.13 Project 10—Loop Execution Times
- 8.14 Project 11—Reaction Timer
- 8.15 Project 12—Event Counter
- 8.16 Project 13—Hi-Lo Game
- 8.17 Project 14—Serial Interrupt
- 8.18 Project 15—Euro Millionaire Lottery Numbers
- 8.19 Using the Analog-to-Digital Converter
- 8.20 Project 16—Digital Voltmeter
- 8.21 Project 17—Analog Temperature Sensor (Digital Thermometer)
- 8.22 Project 18—Digital Thermostat
- 8.23 Project 19—ON/OFF Temperature Controller
- 8.24 Project 20—Light Level Meter
- 8.25 Project 21—Changing LED Flashing Rate With a Potentiometer
- 8.26 Project 22—Sound Level Meter
- 8.27 Using the Digital-to-Analog Converter
- 8.28 Project 23—Generating Fixed Voltage
- 8.29 Project 24—Sawtooth Waveform
- 8.30 Project 25—Triangular Waveform
- 8.31 Project 26—Sine Waveform
- 8.32 Project 27—Arbitrary Periodic Waveform
- 8.33 Project 28—Waveform Generator
- 8.34 Using the PWM
- 8.35 Project 29—Melody Maker
- 8.36 Project 30—Electronic Organ
- 8.37 Project 31—Varying the LED Brightness
- 8.38 Summary
- 8.39 Exercises
- Chapter 9: Motor Control Projects
- Chapter 10: Using Liquid Crystal Displays (LCDs)
- Chapter 11: I2C Bus Projects
- Chapter 12: SPI Bus Projects
- Chapter 13: UART Projects
- Chapter 14: Advanced Projects
-
Chapter 15: Mbed RTOS Projects
- Abstract
- 15.1 Overview
- 15.2 Task Scheduling
- 15.3 Mbed RTOS Implementation
- 15.4 Project 1—Different Flashing a Pair of LEDs—Using Mbed Thread
- 15.5 Project 2—Refreshing a 7-Segment Display
- 15.6 Mbed Task Synchronization—Mutex, Semaphore, and Signals
- 15.7 Project 3—Car Park Controller—Using Signals
- 15.8 Mbed Queue and MemoryPool
- 15.9 Mbed Mail
- 15.10 Mbed RTOS Timer
- 15.11 Summary
- 15.12 Exercises
- Chapter 16: Internet of Things (IoT)
-
Chapter 17: STM32 Nucleo Expansion Boards
- Abstract
- 17.1 Overview
- 17.2 High-Power Stepper Motor Board (X-NUCLEO-IHM03A1)
- 17.3 Two-Axis Stepper Motor Board (X-NUCLEO-IHM02A1)
- 17.4 Low-Voltage Three-Phase Brushless DC Motor Board (X-NUCLEO-IHM11M1)
- 17.5 Motion MEMS and Environmental Sensor Expansion Board (X-NUCLEO-IKS01A2)
- 17.6 Project 1—Measuring and Displaying the Humidity, Temperature, Atmospheric Pressure, and Dew Point Using the X-NUCLEO-IKS01A2 Expansion Board
- 17.7 Multifunctional Expansion Board (X-NUCLEO-IKA01A1)
- 17.8 Bluetooth Low-Energy Expansion Board (X-NUCLEO-IDB04A1)
- 17.9 Three-Phase Brushless DC Motor Board (X-NUCLEO-IHM07M1)
- 17.10 Bipolar Stepper Motor Driver Board (X-NUCLEO-IHM05A1)
- 17.11 Low-Voltage Stepper Motor Driver Expansion Board (X-NUCLEO-IHM06A1)
- 17.12 Brushed DC Motor Driver Expansion Board (X-NUCLEO-IHM13A1)
- 17.13 Project 2—Brushed DC Motor Speed Control Using the X-NUCLEO-IHM13A1 Expansion Board
- 17.14 Project 3—Brushed DC Motor Speed Control Using a Potentiometer With the X-NUCLEO-IHM13A1 Expansion Board
- 17.15 Industrial Digital Output Expansion Board (X-NUCLEO-OUT01A1)
- 17.16 Project 4—Controlling LEDs With the X-NUCLEO-OUT01A1 Expansion Board
- 17.17 CR95HF NFC Card Reader Expansion Board (X-NUCLEO-NFC03A1)
- 17.18 M24LR Dynamic Tag Expansion Board (X-NUCLEO-NFC02A1)
- 17.19 Ranging and Gesture Detection Sensor Expansion Board (X-NUCLEO-53L0A1)
- 17.20 Project 5—Measuring Distance to an Object Using the X-NUCLEO-53L0A1 Expansion Board
- 17.21 Summary
- 17.22 Exercises
- Appendix: STM32 Nucleo-F411RE Pin Layout
- Bibliography
- Index
Product information
- Title: ARM-based Microcontroller Projects Using mbed
- Author(s):
- Release date: April 2019
- Publisher(s): Newnes
- ISBN: 9780081029701
You might also like
book
ARM-Based Microcontroller Multitasking Projects
Most microcontroller-based applications nowadays are large, complex, and may require several tasks to share the MCU …
book
The Internet of Things: Do-It-Yourself at Home Projects for Arduino, Raspberry Pi and BeagleBone Black
Build and program projects that tap into the Internet of Things (IoT) using Arduino, Raspberry Pi, …
book
PIC Microcontroller Projects in C, 2nd Edition
Extensively revised and updated to encompass the latest developments in the PIC 18FXXX series, this book …
book
Learn Electronics with Raspberry Pi: Physical Computing with Circuits, Sensors, Outputs, and Projects
Updated for the recent Raspberry Pi boards, including the Raspberry Pi 4, this new edition offers …